Les derniers contenus liés au tag Imagination Technologies

Afficher sous forme de : Titre | Flux Filtrer avec un second tag : AMD; ARM; GDC; HSA; Intel; Nvidia; PowerVR; PowerVR Series 6; Qualcomm; Samsung;

L'architecture PowerVR a 25 ans

Publié le 25/08/2017 à 10:39 par Marc Prieur

Cet été Imagination Technologies, connue initialement sous le nom de VideoLogic, fête les 25 ans de son architecture PowerVR et de son Tile Rendering. L'occasion pour la société de publier une série de billet sur son blog sur son historique en 3D.

Le premier de ces billets  fait état des débuts en 1997, avec la première carte mise au point qui était à base de FPGA Altera, une société rachetée par Intel en 2015, et Xilinx. Du fait du manque de puissance cette carte n'était pas à même d'appliquer des textures, ce qui sera le cas de la Midas 1 qui faisait cette-fois appel à des ASICs dédiées, l'un dédié aux textures. Comme les premières Voodoo de 3dfx cette carte utilisait un VGA pass trough, on connectait ainsi la carte 2D à la carte 3D en VGA, et la carte 3D à l'écran. Avec la Midas 3, cette solution fut abandonnée au profit d'un envoi des données à la carte 2D par le bus PCI.

Associé à NEC, c'est avec les PCX1 (1996) et PCX2 (1997) que VideoLogic commença à utiliser le nom PowerVR pour ses puces et commencé à se faire connaître du grand public. Ces puces accélératrices 3D gravées en 500 ou et 350nm, fonctionnait à 60-66 MHz et disposaient d'un fillrate de 60-66 Mpixels pour une bande passante de 0.48 à 0.528 Go/s (!!!!), l'avantage du PCX2 étant surtout le support du filtrage de texture bilinéaire qui faisait grandement défaut au PCX1 face au Voodoo Graphics. On trouvait ses puces sur des cartes accélératrices 3D (Matrox M3D, VideoLogic Apocalypse 3D) mais aussi sur l'Apocalypse 5D qui intégrait en plus une puce 2D Tseng Labs ET6100.

A cette époque l'utilisation d'API standardisées (OpenGL, Direct3D) dans le domaine ludique en était encore à ses balbutiements et il fallait donc une version spécifique utilisant l'API propriétaire SGL, mais les portages étaient moins nombreux que ceux en version utilisant l'API Glide de 3dfx ce qui contribua à la domination de ce dernier.

La génération suivante fut utilisée en 1998 par Sega au sein de la Dreamcast, un contrat juteux qui n'aida pas la sortie de la version PC (la Neon 250, en 1999) qui ne faisait alors pas le poids face à la Riva TNT2 de Nvidia.

Associé non plus à NEC mais STMicroelectronics, la société s'attacha ensuite à travailler sur sa troisième génération de PowerVR, les STG4000 (2000) et STG4500 (2001), plus connus sous les noms de Kyro et Kyro II. C'est en 2001, notamment avec l'Hercules 3D Prophet 4500 que nous avions testé, que les premières cartes furent annoncées. En l'absence de moteur géométrique (T&L) contrairement aux Nvidia GeForce 256 (1999) et ATI Radeon (2000), elles visaient (avec succès) un rapport performance/prix supérieur.

Mais alors que ATI et Nvidia enchaînaient les GPU, STMicroelectronics décidait de quitter le marché du GPU PC en 2002 (qui représentait... 0,2% de ses revenus), ce qui sonnait le glas de la 4è génération de PowerVR, mais aussi celui de PowerVR sur PC.

A partir de là Imagination Technologies s'est en effet concentré avec réussite sur le marché mobile avec des architectures vendues sous licence pour intégration au sein de SoC, notamment Apple à partir de 1998. Mais ce partenariat fructueux, représentant jusqu'à 50% des revenus de la société, va prendre fin puisque Apple a annoncé en avril dernier qu'il arrêterait d'utiliser les architectures Imagination au profit des siennes d'ici à 2 ans. Une annonce qui avait entraîné une chute du cours de bourse d'Imagination de 70% et probablement lié à la mise en vente officielle de la société en juin.

Intel Custom Foundry prend une licence ARM !

Publié le 17/08/2016 à 16:25 par Guillaume Louel

ARM l'a confirmé par un post de blog  : Intel Custom Foundry, l'activité fabrication tiers d'Intel, est désormais détentrice d'une licence ARM Artisan pour le 10nm !

Il faut rappeler qu'Intel est plutôt un cas à part dans le monde des semi-conducteurs, étant l'une des rares sociétés à disposer de ses propres usines, utilisées quasi uniquement pour la production de ses propres puces. La plupart des autres acteurs du marché ont migré vers la séparation de l'activité design d'un côté (on parle de sociétés fabless, c'est le cas dans le monde du GPU avec AMD et Nvidia), et de l'autre la fabrication dans des sociétés tierces spécialisées (on parle de foundry, la plus connue étant TSMC qui fabrique des puces pour de multiples clients).

Avec la difficulté de la mise au point des nouveaux process de fabrication, qui n'a fait qu'empirer ces dernières années, il est de plus en plus complexe pour une société à elle seule de justifier l'investissement nécessaire pour faire évoluer sans cesse ses usines. Qui plus est, la réduction de la taille des transistors fait que la capacité des usines augmente d'année en année, et qu'il faut disposer de très larges volumes de puces à produire, au risque de voir ses usines tourner à vide.

Un casse tête qui aura poussé plusieurs sociétés à se séparer de leurs usines (pour des raisons différentes) d'abord AMD en 2009 (créant GlobalFoundries) et plus récemment IBM (dont l'activité fabrication à été rachetée elle aussi par GlobalFoundries).

Depuis quelques années, en plus de fabriquer ses propres puces dans ses usines, Intel a décidé d'entrer très timidement, en 2010, sur le marché des fondeurs tiers en ouvrant son process à de petites sociétés qui n'étaient pas en concurrence directe avec ses produits (le premier client était Achronix, designer de FPGA en 22nm). D'autres clients ont suivi, principalement sur les FPGA, le client le plus connu d'Intel ayant été Altera... même si au final Intel aura décidé de racheter son client à la mi-2015 !

Pour Intel, la nécessité d'ouvrir ses usines est un casse tête. D'un côté, la société tente d'être présent sur tout les marchés, en déclinant le x86 - technologie "maison" sur laquelle la concurrence est limitée - à toutes les sauces et avec un soupçon de recyclage, que ce soit avec des produits serveurs spécialisés comme les Xeon Phi basés sur des Pentium pour leur première génération, ou les Quark dédiés à l'embarqué et utilisant une architecture de 486 datant d'une bonne vingtaine d'années !

Si l'envie de la société d'être présente sur tous les marchés est là, en pratique les succès ne sont pas systématiquement au rendez vous, Intel ayant par exemple massivement raté le marché des smartphones. Cumulé à la baisse continue des ventes sur le marché historique des PC, l'ouverture des usines à des clients tiers se dessine de plus en plus comme une nécessité pour Intel, même si l'avouer semble impossible à la société, qui continuait donc d'envoyer des signaux mitigés aux possibles futurs clients de son activité fabrication.

Avec l'annonce d'aujourd'hui, les choses sont - peut être - en train de changer puisque la prise de licence ARM par Intel est tout sauf anodine. Ce n'est pas la première fois qu'Intel fabriquera des SoC ARM, on l'avait vu avec Altera qui utilisait un core ARM dans un usage très spécifique.

La licence Artisan Physical IP  inclut en effet toutes les briques nécessaires pour la création de puces ARM de tout types. Il s'agit de tous les blocs de base avec des bibliothèques haute densité et haute performance de transistors logiques,et également tout le nécessaire pour les différents types de mémoire. La licence inclut surtout POP IP, qui est pour rappel l'idée qui fait le succès d'ARM : permettre l'utilisation de blocs interchangeables et compatibles pour créer des puces custom. Ainsi un client peut choisir d'utiliser des coeurs CPU dessinés par ARM (les gammes Cortex) ou créer ses propres coeurs (c'est le cas d'Apple et plus récemment de Nvidia), de choisir un GPU (que ce soit les Mali d'ARM, ou les populaires PowerVR d'Imagination Technologies), et également de choisir son fournisseur pour les interconnexions.

Concrètement, Intel va donc "porter" ces bibliothèques d'ARM aux particularités de son futur process 10 nm, ce qui permettra aux partenaires d'ARM de porter à leur tour - s'ils le souhaitent - leurs blocs POP IP. ARM et Intel travailleront conjointement pour le portage de deux futurs blocs CPU ARM Cortex-A (probablement un autre successeur 10nm de l'A72, voir l'annonce de l'A73 en 10nm lui aussi), la déclinaison que l'on retrouve dans les smartphones et tablettes.

Faut il y voir un virage pour Intel ? Fabriquer des puces ARM pour smartphones, ce qu'ils feront pour LG (nouveau client annoncé dans la foulée) va forcément à l'encontre des ambitions internes d'Intel d'imposer le x86 sur mobile. Car si un peu plus tôt dans l'année Intel avait décidé d'annuler sa nouvelle génération de SoC pour smartphones (Broxton et SoFIA), le constructeur continuait en interne à travailler sur les générations suivantes tout en essayant de développer dans l'intérim son activité modem (Intel aurait possiblement gagné le marché du modem du prochain iPhone). A l'heure où ARM augmente ses ambitions pour aller attaquer le marché juteux des serveurs, on peut se demander jusqu'où ira réellement l'ouverture d'Intel.


Un futur CPU ARMv8 24 coeurs de Qualcomm

En fabriquant des puces concurrentes, Intel s'ouvre à des comparaisons directes qui pourraient être assez défavorables à ses architectures x86, assez peu adaptées à la basse consommation. L'avantage supposé du process d'Intel, s'il existe, ne pourra plus jouer en la faveur de ses propres solutions pour compenser un éventuel déficit architectural. La structure de marges d'Intel, là aussi très différente de celle des fondeurs tiers, posera là aussi rapidement problème.

Qui plus est, en obtenant la licence Artisan d'ARM, Intel va devoir partager tous les détails techniques, y compris les plus secrets, de son process en ce qui concerne les règles et les dimensions exactes des transistors, ce qui va l'exposer là aussi à une comparaison directe avec les autres acteurs installés du milieu (comme TSMC et Samsung). Il faudra un peu de temps pour mesurer les conséquences concrètes de tout cela, car cet accord ne concerne que le 10nm, un process pour rappel en retard et qui n'est prévu chez Intel que pour la fin de l'année 2017 en version mobile. Les dernières nouvelles du 10nm, sur lequel Intel ne communique pas, n'étaient pour rappel pas particulièrement rassurantes avec l'arrivée possible sur sa roadmap de puces 14nm... pour 2018.

Accord de licence Nvidia-Samsung

Publié le 03/05/2016 à 14:22 par Guillaume Louel

NVIDIA Logo 2010 En 2013, Nvidia avait commencé à parler de proposer des licences pour ses technologies. Quelque chose que nous avions interprété, logiquement, en la volonté pour Nvidia de proposer des blocs d'IP pour les autres fabricants de SoC ARM. L'écosystème ARM fonctionne pour rappel sur un modèle ouvert, un designer de SoC comme Mediatek piochant dans le catalogue des différents acteurs, ARM proposant par exemple de nombreux cores CPU - les Cortex - mais aussi des GPU - les Mali - des interconnexions et des contrôleurs mémoires, tandis que d'autres comme Imagination Technologies proposent plus spécifiquement des GPU (les PowerVR). Le designer de SoC assemble ces blocs (payant les licences nécessaires), parfois avec des blocs d'IP propres pour terminer son design de puce, qui sera fabriqué chez un fondeur tiers comme TSMC par exemple.

Nvidia proposait à l'époque ses SoC Tegra en accolant des blocs CPU développés par ARM à ses propres blocs GPU GeForce. Les dernières générations avaient cependant reçu un accueil frileux auprès des constructeurs de smartphones et de tablettes, le marché des SoC étant excessivement compétitif (Depuis, Nvidia s'est recentré en fabricant ses propres produits et en visant le marché automobile ou les contraintes de puissance, souvent pointés comme problématiques, sont moins importantes). Le nom officieux de la licence (« licence kepler ») semblait confirmer la volonté de Nvidia.

En coulisse cependant, Nvidia tentait de négocier un tout autre type d'accord auprès des constructeurs de SoC, souhaitant obtenir des royalties pour des brevets qu'ils jugeaient essentiels à la création de GPU, et qu'ils pensaient enfreints par leurs concurrents. Une stratégie lucrative dans le mobile lorsqu'elle réussit, on sait par exemple que Microsoft obtient de chaque constructeur de smartphone Android des royalties (un montant variable estimé à 3.41 dollars pour Samsung en 2013, et 5 dollars pour HTC ) pour certaines de ses technologies (comme le système de fichiers FAT32, plus de 310 brevets sont concernés d'après une liste ayant fuité en 2014 ).

Dans le cas de Nvidia, les négociations ont été infructueuses (et coûteuses, on notera par exemple qu'à compter de cette période, les GPU Nvidia ont complètement disparus des gammes Apple) qui ont culminé en septembre 2014 par un dépôt de plainte de Nvidia auprès de l'ITC (U.S. International Trade Commission). Cette plainte envers Samsung et Qualcomm demandait le retrait du marché américain de produits qui enfreignaient, selon Nvidia, leurs brevets.


Un des brevets "essentiels" de Nvidia concernait le Transform&Lighting, une technologie ayant disparue des GPU modernes

En octobre 2015, l'ITC avait statué de manière défavorable sur la plainte de Nvidia, un jugement que nous vous avions relaté en détail dans cet article. Le résultat de ce jugement avait été entériné définitivement en décembre : ni Samsung, ni Qualcomm, n'enfreignaient les brevets de Nvidia.

Bien que Samsung et Qualcomm étaient directement visés (parce qu'ils produisent les SoC et que ces derniers étaient visés par l'interdiction d'importation), techniquement ce sont les GPU ARM (Mali), Imagination Technologies (PowerVR) et Adreno (Qualcomm) qui enfreignaient potentiellement les brevets. Ce jugement empêche donc toute procédure du type de la part de Nvidia contre d'autres fabricants de SoC qui utiliseraient ces mêmes coeurs graphiques.

Conséquences coûteuses

En parallèle, Samsung avait bien évidemment contre attaqué Nvidia (et l'un de ses clients, Velocity Micro) auprès de l'ITC (la plainte est ici ). En décembre dernier, nos confrères de Bloomberg  rapportaient que l'ITC avait jugé en première instance que trois brevets de Samsung avaient été enfreints par Nvidia.

Un jugement définitif était attendu hier, pouvant entraîner dans la foulée une interdiction d'importation aux états unis de produits Nvidia. Cependant, comme le relate une fois de plus Bloomberg , quelques heures avant l'annonce définitive de l'ITC, Nvidia et Samsung ont annoncé un accord croisé de licence mettant un terme à leurs différentes procédures. Le communiqué  est particulièrement avare en détails, indiquant simplement qu'il se limite à quelques brevets (il ne s'agit pas d'un accord de licence croisé « large ») et qu'il n'y aurait pas eu de compensation additionnelle (comprendre financière) en contrepartie. Etant donné la position de faiblesse de Nvidia au moment de la négociation, on imagine que d'autres concessions ont été faites, mais ces dernières resteront, d'après le communiqué, secrètes.

Il était bien évidemment dans l'intérêt de Nvidia d'éviter un retrait du marché de ses produits. La plainte originale visait spécifiquement les tablettes Nvidia Shield, même si Samsung avait étendu le cadre de sa plainte à Biostar et ECS (on ne sait pas exactement pour quels produits). Nvidia va également pouvoir tourner la page de cette stratégie de « licence kepler » mal pensée dès l'origine.

Pour Samsung, dont le département légal est rôdé, la normalisation des relations entre les deux sociétés sera une bonne chose, d'autant que Nvidia semble travailler avec Samsung Foundries pour produire certaines de ses puces, quelque chose qui avait été noté dans un document administratif l'année dernière. Bien évidemment, Samsung Foundries a longtemps produit des puces pour Apple tout en entretenant des relations légales hautement conflictuelles, même si là aussi, ces deux dernières années, les deux sociétés ont progressivement  normalisé leurs relations .

GDC: Vulkan trop compliqué ? Imagination a une solution

Publié le 25/03/2016 à 08:59 par Damien Triolet

Maîtriser les API de plus bas niveau telles que Direct3D 12 et Vulkan représente un challenge pour les développeurs, celles-ci ajoutant à leur travail un niveau de complexité supplémentaire. Mais à travers son nouveau framework, Imagination va essayer de leur simplifier la tâche.

A l'occasion de la GDC 2016, Imagination a rendu disponible la version 4.1 de son SDK  et à l'intérieur de celui-ci un nouvel outil a fait son apparition : le PowerVR Framework. Il représente une couche intermédiaire entre un moteur graphique et une API moderne.

Le niveau de complexité des API de plus bas niveau, que ce soit Direct3D 12 ou Vulkan, va amplifier le besoin de middlewares et de moteurs de jeu prêts à l'emploi. Mais il y a malgré tout encore pas mal de développeurs qui préfèrent mettre en place leur propre solution et pourraient profiter d'un accès simplifié aux nouvelles API. C'est en partant de ce constat qu'Imagination a développé le PowerVR Framework.

Le but est simple : aider les développeurs. Pour cela, ce framework est basé sur un ensemble de bibliothèques statiques qui vont permettre de simplifier les tâches courantes telles que la création des objets, les transferts de données, la gestion du multi-threading etc. Il représente une réintroduction d'un certain niveau d'abstraction là où il n'impacte pas la flexibilité et les performances.

A titre d'exemple, Imagination nous explique que sa démonstration Gnome comprenait à l'origine plusieurs milliers de lignes de code qui ont pu être résumées en centaines de lignes en les réécrivant contre ce nouveau framework. De quoi rendre le code plus abordable et plus facile à maintenir, deux arguments qui ne devraient pas laisser les développeurs indifférents.

Ce framework permet également de supporter plus facilement différentes API et différents types de plateformes. Il peut ainsi viser autant OpenGL ES que Vulkan. Par ailleurs, en plus d'un back-end pour les GPU PowerVR, il en propose actuellement deux autres pour les GPU AMD et Nvidia. Suivant les retours des développeurs, Imagination n'est pas contre l'ajout de back-ends supplémentaires pour les GPU Qualcomm et ARM. L'objectif principal étant que les développeurs exploitent cet outil qui permet de tirer plus aisément le meilleur de ses GPU.

Il n'est par contre pas prévu de l'étendre pour supporter Direct3D 12, les GPU PowerVR n'ayant actuellement pas de présence sur la plateforme Windows. Mais compte tenu des difficultés rencontrées par les développeurs, Imagination s'attend à ce que quelqu'un d'autre propose un outil similaire, peut-être directement Microsoft.

Mise à jour de 19h30: Nvidia nous indique avoir sorti discrètement le mois passé un outil qui a des objectifs similaires : l'API open source Vulkan C++ . Il s'agit également d'une couche intermédiaire qui permet de passer l'API Vulkan C classique vers une approche de type C++ plus simple à manipuler.

Vous pourrez retrouver l'intégralité de la présentation d'Imagination ci-dessous :

 
 

GDC: Imagination: encore plus de ray tracing

Publié le 25/03/2016 à 07:29 par Damien Triolet

Comme nous l'expliquions à l'occasion du CES, Imagination mise beaucoup sur sa technologie d'accélération matérielle du ray tracing et a fait fabriquer son propre GPU, le PowerVR GR6500 pour la mettre en avant. A la GDC, de nouvelles démonstrations étaient présentées.

La première démonstration proposée par Imagination met en avant ce que pourrait apporter un tel GPU dans le monde mobile. Rappelons que le PowerVR GR6500, nom de code Wizard, est un petit GPU de catégorie mobile (4 clusters) mais équipé des modules optionnels dédiés au ray tracing capables de lancer jusqu'à 300 millions de rayons par seconde à 600 MHz.

A travers un rendu hybride, basé sur la rastérisation mais avec quelques touches de ray tracing, il est possible d'améliorer la qualité de certains aspects du rendu avec un coût annoncé comme nettement plus faible que via les méthodes traditionnelles qui sont inadaptées pour de petits GPU. C'est le cas des ombres douces et des réflexions spéculaires illustrées dans cette vidéo :

Imagination explique qu'il est relativement aisé d'implémenter de tels effets accélérés par sa technologie de ray tracing via ses extensions OpenGL ES. Pour aller plus loin et montrer tout l'étendue des possibilités, la seconde démonstration est basée intégralement sur un rendu à base de ray tracing :

Pour faire tourner une telle scène en temps réel, qui représente plus de 2 milliards de lancés de rayons par seconde, plus de puissance est bien entendu nécessaire et Imagination exploite plusieurs GR6500 en parallèle. Dans sa vision, ce type de complexité de rendu est ce que pourrait permettre un éventuel GPU PowerVR de classe "desktop", 8 à 16x plus performant qu'un GR6500 (32 clusters et plus haute fréquence).

Avec cette technologie, Imagination est actuellement ouvert à toutes sortes d'options et ne s'en cache pas. Mais si la porte n'est pas fermée à un GPU de type desktop, c'est avant tout une console de premier plan qui est visée. Mais est-ce bien réaliste ?

Nous avons posé la question à l'actuel fournisseur des consoles de Microsoft, Nintendo et Sony. Cette possibilité est rapidement balayée du revers de la main, probablement avec un brin d'arrogance, par AMD qui compte bien conserver ce marché et ne surtout pas laisser penser à ses investisseurs qu'il pourrait en être autrement.

Imagination admet de son côté que ce n'est pas simple de trouver sa place dans une console mais estime avoir de solides arguments. Et surtout être également ouvert à la possibilité de ne pas fournir un GPU complet mais uniquement sa technologie de ray tracing. Celle-ci pourrait alors être greffée à un autre GPU. Une implémentation qui n'est pas triviale et qui demanderait probablement une longue année de collaboration si un fabricant de console imposait ce choix. Mais c'est une option qui semble être envisagée sérieusement.


La carte PCI Express équipée du GR6500.

En attendant, Imagination indique avoir été surpris par la forte demande de la part des développeurs pour son kit de développement et sa carte PCI Express équipée du GR6500. Elle est actuellement en rupture mais une production supplémentaire qui se compterait cette fois en milliers de cartes vient d'être décidée. Gagner le support d'un maximum de développeurs est un premier pas important.

Top articles