apprêté va en profondeur sur le technobabble vous entendre sur Engadget, tous les jours – nous creuser profondément dans l’histoire de chaque sujet et criticism il profite de nos vies. Vous pouvez suivre la série ici . Je suis là flow suggérer un morceau de la technologie flow nous faire tomber? Écrivez-nous à amorcée * à * engadget * dawt * com .
> Comme vous êtes, espérons le savez, il s’agit d’un tool blog. En conséquence, nous sommes foncièrement biaisé vers des choses qui est nouveau et de préférence fandangled. Plus de carottes, and de pixels, and les lentilles, il suffit de donner ici et nous rendre heureux. Le obscene de ce sort de cupidité technologique, c’est que nous ne tirent pas pleinement parti de ce que nous avons déjà, et rien n’illustre mieux cela que l’unité de traitement graphique. Que ce soit se trouve dans nos ordinateurs de bureau, ordinateurs portables, tablettes ou téléphones, le GPU est cruellement limitée standard son histoire – sa réputation établie de longue date comme un muet, composante musculaire qui reçoit ses instructions du processeur principal et les traduit en pixels flow nous de gawp à
Mais que faire si le GPU dans nos dispositifs ont enterré un génie -. capacités qui, si seulement nous pouvions puiser dans leur procureraient hyper-réalistes expériences et une meilleure opening d’ensemble du matériel à prix abordable? Eh bien, le truc, c’est que ce potentiel caché existe réellement. Nous avons été le recouvrant depuis au moins 2008 et, même si elle n’a pas encore généré suffisamment de tracas flow devenir vraiment célèbre, l’industrie des semiconducteurs faire and de gossip à ce sujet maintenant que jamais auparavant.
Alors s’il vous plaît , rejoignez-nous après la pause, nous nous efforçons d’expliquer pourquoi la tendance connue sous le nom “ordinateur GPU,” aka “usage général GPU (GPGPU)», ou simplement «pas condescendant votre processeur graphique», est toujours excitant bien qu’il ait laissé nous dans le passé. Nous allons essayer de montrer pourquoi il vaut la peine de l’apprentissage de quelques concepts et termes connexes flow aider à fournir un glossaire flow la couverture future, et pourquoi, dans l’ensemble, votre puce graphique est moins Hasselhoff et and Hoffman que vous pouvez imaginer
Table des matières
La CPU: le enthusiast
Le GPU: le flesh embauché
Le langage de calcul GPU
amélioration manifest
génie mathématique
nouvelles façons de faire les choses
Wrap-up
Nous allons utiliser un quad-core Ivy Bridge processeur comme un exemple. Même en l’absence d’étiquetage jusqu’à l’image de la showing matrice de silicium-dessus, vous pourriez être en mesure de deviner où le CPU et le GPU se termine commence. Reprenant les deux tiers de la puce sur le côté gauche, vous pouvez voir que la majorité des éléments de l’UC sont généralement groupés en quatre groupes identiques. Chaque groupe représente un noyau et, à son tour, chaque noyau se harmonise de nombreuses petites fonctionnalités complexes, surveillance en étant entouré standard une foule de ressources partagées qui couvrent tous les cœurs. C’est comme ça que c’est avec la CPU:. Ses noyaux sont riches, bien desservi et grand-cerveau suffit de parcourir, même dans les formes les and complexes des problèmes séquentiels
En revanche, le GPU sur le côté droit de le schéma est beaucoup and bête prospectifs. Il se décompose en sixteen groupes identiques, ce qui reflète le fait que Ivy Bridge contient un GPU à sixteen coeurs. Mais il suffit de regarder criticism les petites et simples ces noyaux sont comparés aux cœurs de processeur! Et ils n’ont pas beaucoup d’infrastructure partagée, que ce soit.
Depuis qu’ils ont à “shaders”. un grand nombre de pixel de duty et les valeurs de sommets dans le même temps, shaders sont conçus flow fonctionner en parallèle. Si vous pouviez faire un wizz à droite dans un cœur graphique comme ça sur Ivy Bridge au-dessus ou Kepler sur la gauche, vous devriez juste voir and de “parallélisme”, automobile ils ont tendance à être construit à partir des rangées de petites unités identiques, comme la logique arithmétique ” unités »et« processeurs de motion ». Pour ajouter une touche d’humiliation, le sort de childbirth d’un GPU ne peut même être appelé «embarrassant parallèle», automobile il peut être facilement divisé en courants et il n’y the guère besoin de diaphonie entre les cours d’eau.
Quoi qu’il en soit , c’est la façon dont il l’habitude d’être. Nous sommes ici flow vous apocalyptic à quel indicate il est . Parce que certaines choses ont changé au cours des dernières années, et le gamin qui était autrefois la cible de blagues aire de jeux the attiré un d’ingénieurs et de spécialistes du selling qui sont convaincus de son génie.Ce sont les gens qui ont utilisé flow nous parler de combien de polygones ou de triangles d’un GPU peut traiter standard seconde, mais qui unrelenting maintenant flow que nous reconnaissons aussi sa stalwartness de calcul ainsi. Cette opening est mesurée en opérations en virgule flottante standard seconde, habituellement pris en compte dans gigaflops dans un téléphone ou tablette GPU et téraflops dans un PC, and obscène avancées opérations en stand in précision en virgule flottante standard seconde (qui sont également comptés dans FLOPS, si il semble y avoir peu d’entre eux).
Soulignant en outre les pouvoirs de calcul, les carottes graphiques de NVIDIA sont désormais appelés cœurs CUDA (Compute Unified Device Architecture). Intel aussi, bien qu’ayant été autrefois publiquement sceptiques de la prouesse CUDA standard good dialog à la CPU traditionnel, the spécifiquement retravaillé le Ivy Bridge graphiques composant afin d’embrasser un ordinateur GPU. AMD, avec peut-être un peu d’inspiration de Pepsi, parle Graphics Core Next (GCN – ci-dessous) alimenter ses cartes, et aussi le fer de pierce de la Fondation HSA flow promouvoir «informatique hétérogène” (encore un autre terme flow ce que nous parlons ici ). ARM – qui se trouve être un membre de la Fondation HSA – promet que son nouveau Mali-T604 sera le premier «significatif» de calcul concordant GPU dans l’espace mobile et celles, standard exemple, permettre aux téléphones mobiles de livrer le sort de traitement d’image et des performances de stabilisation que vous pouvez trouver dans un “reflex de 1000 $ .”
Ce n’est pas surveillance simplement tourner . Quelque chose de réel qui se passe en dessous de surveillance cet enthousiasme nouveau jargon, et cela se résume à ceci: Bien qu’ils restent spécialisée standard good dialog aux cœurs de processeurs, cœurs graphiques sont maintenant beaucoup and souple qu’auparavant d’être. Au lieu d’avoir un noyau d’ombrage des pixels seulement et un autre juste flow le calcul des sommets, tous les cœurs se rendre disponibles flow mener à bien toute une gamme de and en and complexes des tâches mathématiques. Ceci est souvent appelé une design de shaders unifiés.
Et criticism un programmeur parler aux âmes? C’est fait à travers une interface de traitement d’application (API) telles que Open Compute Language (OpenCL), qui est censé être able de communiquer avec les shaders unifiés dans n’importe quelle marque de produit, et qui est fortement soutenu standard AMD. En and de OpenCL, NVIDIA the également une API spécifique flow parler à ses cœurs CUDA. Microsoft draw up d’une pick up d’API appelée DirectX, qui – depuis la chronicle 10, mais surtout la chronicle eleven – ont insisté sur le fait que les GPU compatibles sont en mesure de comprendre leurs instructions. Il ya aussi renderScript de Google, qui effectue un childbirth similaire spécialement flow les appareils Android.
Alors, maintenant que le programmeur peut prendre les rênes du GPU et de lui faire faire des choses and intéressantes, quels sont les résultats? Les deux and grands impacts ont sans aucun doute eu and de cheveux gris et moins de temps passé avec les familles, automobile la programmation flow le GPU est notoirement difficile. Mis à partial cela, cependant, les exemples qui sont habituellement détenus jusqu’à prouver la stalwartness de calcul GPU incluent des applications scientifiques, telles que les simulations d’ingénierie en cours d’exécution sur les processeurs AMD et NVIDIA Quadro professionnelle FirePro et cartes graphiques. Au-delà, les promoteurs soulignent souvent les petites applications de productivité comme WinZip qui sont en mesure d’utiliser OpenCL flow accélérer les tâches, ou seulement des jeux réguliers.
Tout ce qui est glorious flow les joueurs, mais ce n’est pas surveillance à fait à la hauteur de la promesse d’un ordinateur GPU de fournir and qu’un elementary graphique. Pour cela, nous pouvons passer à un exemple de jeu dernier, dont l’utilisation device du GPU n’est pas seulement visuel, mais aussi sur le pouvoir approfondir mathématique de ce que des noyaux hautement parallèles sont capables.
Civilization V est sorti vers la fin de 2010, mais son réalisations dans ce domaine n’ont pas encore été égalé, et c’est AnandTech jeu de choix flow tester la capacité d’un GPU de calcul. Firaxis philosophie est simple: Il vous détourner n’importe quelle tâche au GPU qui peut être facilement décomposé en «godets» ou «morceaux» de childbirth qui sont en mesure d’être traitées standard les nouveaux et «exotiques» algorithmes autorisés standard ordinateur GPU. Cela comprend non seulement la façon dont le jeu the l’air, mais aussi la façon dont il est – en d’autres termes, qu’est-ce qu’il est probable de faire avec les ressources système disponibles
Par exemple,. l’un des Civ V indicate l ‘est le and vendu ses vastes cartes générées aléatoirement. La taille du turf de jeu devrait normalement être limitée standard les ressources système disponibles, puisque seulement les contours d’une seule grant peut peser jusqu’à 128 Mo – trop lourd flow la plupart des systèmes flow stocker, traiter et afficher en temps réel. Mais un ordinateur GPU offre une façon intelligente de contourner cela.
Au lieu de générer aléatoirement un entier, grant jouable, les concepteurs de Firaxis la seule utilization du CPU flow générer une “carte de hauteur” qui contient des coordonnées simples et les valeurs de hauteur de 8 pieces . Ce pèse beaucoup and conviviale de 64 Mo, mais il ne peut pas être lu sur parce que c’est trop pixellisées – il n’y aurait pas visibles entre les points de différentes hauteurs. Ainsi, cette approche nécessite encore une couche d’effort: la acclimatisation de la grant de hauteur (ou au moins ses tuiles visibles) dans un “normal map” qui est lisse et assez naturel d’être soumis à des effets de lumière, puis affiché à l’écran. Le problème, c’est que c’est mathématiquement heated – il nécessite des filtres sophistiqués qui sont trop flow le CPU
L’ premier filtre qui est appliqué à la grant de hauteur est un elementary flou gaussien, dont le GPU gère avec facilité, mais qui – s’il est laissé à lui-même – surveillance simplement lisser tous les extrêmes dramatiques de la grant de hauteur et nous laisser un tas de fades collines. Résoudre ce qui nécessite un surveillance nouveau niveau de mathématiques: un filtre de pondération dite bilatérale, qui passe sur la scène et réduit de manière sélective flou à chaque changement de contour extrêmes, préservant ainsi les bords et le sauvetage des détails. (Voir la diapositive ci-dessous, avec la accede de Firaxis et AMD.) La lutte CPU aurait du mal à remplir ce genre de non linéaire tâche en temps réel. En fait, une récente comparaison standard Voila (voir and Couverture) the montré que même la lutte meilleur CPU avec puce effets de flou standard good dialog même à un bill de GPU, qui sera généralement terminer le childbirth entre deux et cinq fois and vite.
Sans ordinateur GPU, les cartes de Civ V serait soit and petit, moins aléatoire, moins réalistes ou qu’ils avaient besoin d’un système extrêmement puissant. Peut-être la seule chose que nous pouvons apocalyptic contre ce sort d’utilisation des GPU de calcul est qu’il n’a pas été and loin, et débarrassé de la CPU suffit à rendre le jeu fonctionner correctement sur le système avec encore moins d’énergie que les spécifications minimales actuelles. Nous avons un 700 $ AMD-powered ordinateur unstable Samsung Série 5 qui contient une relativement bonne santé DirectX eleven – et OpenCL concordant GPUL – la Radeon 7500G. Mais il the du mal à fonctionner Civ V à and de twenty-five images standard seconde, même quand il n’y the pas grand-chose sur la carte. C’est un jeu de 2010 exécuté sur un système de 2012, donc il ya clairement des limites à ce calcul GPU the réalisés jusqu’ici.
Nous devons adapter un exemple de and ici, automobile il est critical de terminer sur une bonne note – même si c’est un peu discordante. La preuve définitive que les GPU de calcul the le pouvoir de changer la façon dont les gens rise des choses est démontré dans la vidéo ci-dessous. Il montre criticism OpenCL ou CUDA soit peut être utilisée flow permettre rendu en temps réel des effets très complexes dans la dernière chronicle du logiciel Adobe montage vidéo, Premiere Pro CS6, aussi longtemps que vous avez une grant graphique pris en charge. Ce n’était pas il ya si longtemps que nous aurions appliquer un effet – comme la improvement des couleurs – un shave et d’avoir à s’asseoir et regarder le rendu nos changements ordinateur avant de pouvoir les lire. Mais Adobe the réussi à changer son moteur de rendu entier sur le GPU et, dans le processus, de démontrer à ce que ces parallèles, mathématiques croquer transistors sont vraiment capables d’Maintenant, flow cette touche mineur de discorde.: la vidéo elle-même est assez explicite, mais il ya quelque chose qu’il ne montre pas. Après avoir fait le tournage, nous avons essayé d’obtenir du moteur de harangue Adobe accéléré standard le GPU de travailler sur un MacBook Pro Retina, qui contient une grant graphique NVIDIA GTX 650M grant graphique. Officiellement, ce processeur graphique contient 384 cœurs CUDA et OpenCL il soutient aussi, donc standard des droits qu’il doit travailler – même si Adobe ne l’a pas certifié flow CS6. Sans se décourager, nous avons fait un peu de penetrate flow convaincre CS6 que notre grant graphique était vraiment concordant CUDA, ce qui nous the permis d’activer l’accélération GPU sur le moteur Mercury. Le résultat? L’instabilité. Et beaucoup, beaucoup and lent performances. Nous ne prévoient pas une once de culpabilité à la porte d’Adobe, depuis que la société est parfaitement clair sur quelles cartes sont supportées, et le 650M n’est pas encore sur cette liste. Néanmoins, cette irritabilité standard good dialog aux dispositifs montre OpenCL et CUDA ne sont pas surveillance à fait grown up et pan-périphérique encore -. S’ils l’étaient, les ingénieurs Adobe ne pas avoir à s’embêter avec des cartes individuelles de acceptance
Nous pouvons croire que le outcome morne, et c’est pourquoi nous avons également estiment que le GPU de calcul nécessite une courtesy beaucoup and avant un avenir heureux ne peut être garantie. Les développeurs ne devraient pas avoir à passer les âges peaufiner les algorithmes GPU flow fonctionner sur différents appareils qui sont déjà censés être compatibles. Fondamentalement, au lieu d’exiger le matériel le and cher, ordinateur GPU doit se rendre à un indicate où il économise réellement de l’argent des gens.
Cela dit, ce projet the déjà trop loin flow échouer complètement. Nous avons vu criticism des termes tels que «CUDA» et «Graphics Core Next” se rapportent à des changements véritables dans la inlet d’un GPU. Domaines très spécialisés de silicium ont été transformés en noyaux de calcul unifiées qui peuvent être exploitées standard les programmeurs flow retirer des trucs utiles dans une gamme d’applications, des jeux à la photographie numérique. Bien sûr, un ordinateur GPU est en désordre, dans certains domaines, mais il n’est pas vraiment un gâchis. Quand nous arrivons à vérifier de nouvelles cartes graphiques, ou des processeurs de téléphones mobiles, ou la prochaine grande chose dans le jeu, nous allons regarder avec des yeux and vif encore flow s’assurer que ces informations d’identification de calcul GPU sont présentes et correctes.
Aucun commentaire:
Enregistrer un commentaire