MbM2004 | MARWEN
Premium
Naughty Dog explique CPU, mémoire de PS4 et plus en détail et comment ils peuvent le faire “Run Really Fast”
Au cours de la queue de une présentation extrêmement intéressante à au Semana Informática à Lisbonne Naughty Dog Lead Programmeur Jason Gregory décrit le processeur de la PS4, sa mémoire, c'est GPU, son architecture de cache et plus en détail, en expliquant comment le studio optimise les ressources pour atteindre des résultats supérieurs grâce à la connaissance des forces et des faiblesses du matériel, en tirant pleinement parti de celui-ci et de rendre le code "courir très vite."
Au cours de la queue de une présentation extrêmement intéressante à au Semana Informática à Lisbonne Naughty Dog Lead Programmeur Jason Gregory décrit le processeur de la PS4, sa mémoire, c'est GPU, son architecture de cache et plus en détail, en expliquant comment le studio optimise les ressources pour atteindre des résultats supérieurs grâce à la connaissance des forces et des faiblesses du matériel, en tirant pleinement parti de celui-ci et de rendre le code "courir très vite."
Tout d'abord, Gregory a expliqué que les 8 Go de RAM semblent comme beaucoup, seulement cinq sont affectés à des jeux, et ils peuvent être remplis assez facilement:
Même dans la PlayStation 4 vous avez 5 giga, ce qui semble beaucoup, mais vous serez surpris par la rapidité avec laquelle il se remplit.
En raison de ce que Naughty Dog est très prudent sur la façon dont la mémoire est allouée au budget et pour l'utiliser efficacement.
la fragmentation de la mémoire est l'un des pires ennemis, car il provoque un jeu à court de mémoire beaucoup plus vite que normalement. Naughty Dog résout que par des répartiteurs de mémoire adaptation sur mesure pour correspondre à des modèles d'allocation du logiciel.
Le studio utilise également des cartes de mémoire explicites dans leur moteur, qui raconte à un moment donné où la mémoire est utilisé et quel type de mémoire il est.
C'est très important parce que beaucoup de kits de développement, en particulier ceux de PS3, ont deux fois plus de mémoire, utilisé à des fins de débogage. Cela signifie que les caractéristiques de jeu ne doivent pas utiliser cette mémoire.
Passant à la gestion multi-processeur, Gregory a expliqué comment la PS4, qu'il définit comme une "highly paralel machine," fonctionne.
Il ya 8 cœurs de processeurs, qui sont "de qualité supérieure des processeurs plus puissants que ce que vous avez sur le processeur principal de la PS3," et ils sont organisés en deux groupes.
Grégoire explique aussi que le GPU est «plus puissant que ce qu'il est nécessaire de rendre graphiques à 1080p à 60 Hz" et que l'idée des concepteurs de la PS4 était de donner la console ressources GPU supplémentaires parce que c'est "incroyablement bon à faire des quantités massives de traitement parallèle "et ils envisageaient que les concepteurs de jeux vont prendre l'avance de ce traitement à faire de la physique, simulation de tissu, des fluides et plus sur le GPU.
Avec l'Naughty Dog PS3 développé en collaboration avec ICE l'équipe de Sony un «système d'emploi» pour faire un usage efficace de la CPU multi-core, et un autre semblable a été créé pour la PS4.
Seuls six noyaux sont disponibles pour les jeux, en tant que deux sont utilisés par le système d'exploitation. Le système d'emploi utilise aussi le GPU au-dessus de ces six cœurs, comme il est permis d'exécuter du code. Chaque noyau CPU exécute un thread de travail, et tandis que le premier se charge de la boucle principale du jeu, d'autres emplois sont répartis entre les cinq noyaux restants.
D'autre part, le GPU prend en charge le rendu et le GPGPU (de programmation GPU but GENRAL) réentrée, essentiellement la physique, chiffon et de l'informatique similaire mentionné ci-dessus.
Un autre concept très important est l'optimisation, et un élément essentiel de celui-ci est la "règle 80/20," ce qui signifie que votre programme consacre 80% de son temps de fonctionnement de 20% de votre code. Le reste de ce code est exécuté très rarement.
Ainsi, lorsque vous optimisez votre code, vous ne voulez pas optimiser que 80%, parce que vous auriez perdu votre temps. D'autre part Naughty Dog se concentre sur ce que 20% qui importe vraiment, et qui leur permet d'obtenir le plus pour leur argent.
Connaître le matériel est aussi très important, car il ya des optimisations qui peuvent être adaptées à une seule pièce de matériel spécifique, étant donné une connaissance approfondie de son fonctionnement interne.
Mémoire cache est une partie très pertinente de l'optimisation, car les processeurs modernes ont un nombre assez élevé de cycles d'accéder aux données de la RAM principale, qui est grand. Ensuite, il ya une mémoire cache L2 plus petit nommé, qui est aussi beaucoup plus rapide à être consultée, le cache L1 qui est encore plus rapide, et puis il ya règl sur la puce elle-même qui sont super petit, mais essentiellement instantanée.
La conservation des données haute performance petite aide grâce à cela, car il peut tenir dans le cache, qui peut être consulté très rapidement. Avoir les petites et contigus dans la mémoire est encore plus bénéfique.
La PS4, en particulier, dispose de huit noyaux disposés en deux groupes. Le cache L2 est en fait divisé en deux, une pour chaque groupe, et la communication à partir de chaque groupe à sa propre mémoire cache L2 prend 26 cycles. La communication entre un pôle et le cache L2 fixée à l'autre pôle est beaucoup plus lente, en prenant 190 cycles.
En plus de cela, lorsque vous lisez un seul octet dans la RAM principale, il embarque également un ensemble de 64 octets de mémoire dans le cache.
La connaissance de ces bizarreries spécifique PS4 permet le studio d'optimiser le code afin qu'il évite d'avoir des groupes qui communiquent avec le cache L2 "mauvais" et met les données sur les lignes de cache séparés, en supprimant la possibilité des conflits et des ralentissements.
Un dernier détail très intéressant, c'est que la PS3 avait vraiment terrible matériel de prédiction de branchement dans la CPU, ce qui signifie que "Si" branches dans le code souvent causés mauvaise performance si elles n'ont pas reçu «toutes sortes de trucs" tout simplement parce que le CPU n'est pas bonne pour prédire ce que le code ferait.
D'autre part, la PS4 a "vraiment bien" hardware de prédiction de branchement, qui «deviner» ce que le code va faire, en supprimant la nécessité pour tout le travail supplémentaire était nécessaire sur la PS3.
Une chose est sûre: l'audition de cette conversation, il est difficile de ne pas se sentir encore plus heureux de voir le premier titre Naughty Dog PS4. Nous devrons attendre et voir si le technomancie du studio va vraiment faire chanter la plate-forme , mais mon argent est sur "oui".
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Dernière édition: