IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Nvidia s'appuie sur l'IA en interne pour améliorer la conception de puces. ChipNeMo est un modèle de langage de grande taille
Développé pour aider ses ingénieurs

Le , par Stéphane le calme

0PARTAGES

4  0 
Nvidia, le constructeur mondial des processeurs graphiques, a développé un modèle de langage innovant pour aider ses ingénieurs à concevoir des puces plus rapidement et plus efficacement. Le modèle, nommé ChipNeMo, a été présenté par le scientifique en chef de Nvidia, Bill Dally, lors de la conférence internationale sur la conception assistée par ordinateur. ChipNeMo est un modèle de langage de grande taille, avec 43 milliards de paramètres, qui a été entraîné sur les données internes de Nvidia, comprenant des documents d’architecture, de conception et du code source. Le modèle a ainsi acquis une connaissance approfondie du domaine de la conception de puces et des architectures spécifiques de Nvidia.

Nvidia a formé son modèle de langage étendu (LLM) NeMo sur des données internes pour aider les concepteurs de puces dans les tâches liées à la conception des puces, notamment en répondant à des questions générales sur la conception des puces, en résumant la documentation des bogues et en écrivant des scripts pour les outils EDA. Le scientifique en chef de Nvidia, Bill Dally, a présenté le LLM, baptisé ChipNeMo, lors de son discours d'ouverture à la International Conference on Computer-Aided Design.

« L'objectif ici est de rendre nos designers plus productifs », a déclaré Dally lors d'une interview avant l'événement. « Si nous obtenions ne serait-ce que quelques pour cent d’amélioration de la productivité, cela en vaudrait la peine. Et nos objectifs sont en fait de faire bien mieux que cela ».

Les modèles de base comme NeMo sont généralement formés sur plusieurs milliards de mots extraits d'Internet pour leur permettre d'acquérir une bonne compréhension générale du langage. Les LLM peuvent ensuite être pré-entraînés sur des données spécifiques à un domaine pour obtenir un contexte supplémentaire dans un domaine particulier, et ils peuvent être affinés avec des exemples de paires question-réponse.

Nvidia a pré-entraîné ChipNeMo à l'aide d'un ensemble de données unique extrait des référentiels internes de code et de texte, y compris des documents d'architecture, des documents de conception et la base de code de Nvidia, a déclaré Dally, et la société a ensuite affiné un sous-ensemble de ces données.

« La pré-formation sur nos données de conception permet à un modèle plus petit de fonctionner comme un modèle plus grand », a-t-il déclaré. « À terme, nous souhaitons exécuter cela sur de très grands modèles. Pour le cas expérimental, nous essayons d’apprendre beaucoup de choses très rapidement. Nous utilisons les petits modèles parce que nous pouvons les former plus rapidement, mais à terme, nous voulons les exécuter sur certains de nos plus gros modèles. Nous pensons ensuite que cela deviendra encore plus utile car les résultats s'amélioreront.

ChipNeMo peut réaliser trois types de tâches liées à la conception de puces, en utilisant le langage naturel comme interface. Il peut répondre aux questions générales des concepteurs, notamment des débutants, qui ont besoin de clarifier certains aspects du processus ou du fonctionnement des composants. Il peut également résumer les rapports de bugs en quelques phrases, pour faciliter la compréhension et la résolution des problèmes. Enfin, il peut écrire des scripts courts pour interagir avec les outils d’automatisation de la conception électronique (EDA), comme les simulateurs logiques ou les tests de performance.


Améliorer la productivité

Le ChipNeMo, doté de 43 milliards de paramètres, fonctionne sur un seul GPU Nvidia A100 en « quelques secondes », a déclaré Dally.

ChipNeMo peut répondre aux questions sur la conception de puces, en particulier celles des jeunes designers.

« Il s'avère que nos designers seniors passent beaucoup de temps à répondre aux questions des designers juniors », a déclaré Dally. « Si la première chose que le concepteur junior peut faire est d'aller sur ChipNeMo et de dire : "Que fait ce signal sortant de l'unité de mémoire ?" et s'il obtient une réponse possible qui fait gagner du temps au concepteur senior, l'outil est ça vaut vraiment le coup ».

L’objectif de ChipNeMo est d’améliorer la productivité des concepteurs, en leur faisant gagner du temps et en leur évitant des erreurs coûteuses. Pour cela, le modèle utilise une technique appelée génération augmentée par récupération (RAG), qui consiste à se référer à une base de données de documents sources pour vérifier la validité des réponses générées. Cette technique permet de réduire le risque que le modèle produise des réponses inexactes ou inventées.

« Nous utilisons l'invite initiale pour interroger une base de données et extraire un ensemble de documents sources pertinents pour cette requête particulière », a déclaré Dally. « Nous pouvons l'ajouter à l'invite et l'envoyer à ChipNeMo afin de pouvoir ancrer cette réponse sur des documents sources particuliers, ce qui réduit la tendance aux hallucinations et rend les choses plus explicables ».

Résumer des bogues déjà documentés

ChipNeMo peut également résumer les bogues déjà documentés. La documentation typique des bogues doit être exhaustive et peut obliger les concepteurs à lire de longs documents, même pour comprendre les bases de l'action du bogue.

« La synthèse des bogues est probablement la solution la plus simple pour améliorer la productivité », a déclaré Dally. « Lorsqu’un bogue est signalé, les gens balancent toutes sortes de choses dans [notre système de bugs]… l’outil est assez efficace pour résumer un bug dans un paragraphe concis, puis dire : voici qui devrait essayer de le corriger.

Chip NeMo peut également écrire de courts scripts (environ 20 lignes de code sont typiques, a déclaré Dally) en Tcl, le langage de script standard de l'industrie utilisé pour les outils EDA. Les scripts sont un moyen typique d'interagir avec les outils de CAO.

Les fournisseurs d'outils EDA pourraient-ils éventuellement utiliser cette technologie comme un niveau d'abstraction plus élevé pour la conception de puces ? Ils le pourraient s’ils avaient accès aux données de formation, a déclaré Dally.

« Je pourrais imaginer que [les fournisseurs d'outils EDA] seraient très intéressés par le fait que [un LLM] soit une interface humaine plus accessible avec l'outil », a-t-il déclaré. « Écrire des scripts pour beaucoup de ces outils est un art, et s'ils pouvaient au moins obtenir un ensemble de scripts pour un outil particulier et les peaufiner, ils pourraient alors faciliter grandement l'utilisation des outils par les concepteurs, car vous pourriez écrivez en langage humain : "Voici ce que j’aimerais que l’outil fasse", et il générerait ensuite le script qui dirigerait l’outil pour le faire. »

ChipNeMo est destiné à un usage interne de Nvidia uniquement et ne sera pas commercialisé, bien que d'autres fabricants de puces puissent réussir à former des LLM sur leurs propres données internes, a déclaré Dally.

« [ChipNeMo] est assez spécialisé dans la façon dont Nvidia fait les choses », a-t-il déclaré. « Par exemple, nous avons une manière particulière d'écrire des scripts et tous les scripts que nous voyons sont des scripts NVIDIA, mais c'est ce que nous voulons, c'est pour un usage interne ».

Bien qu'il ait probablement appris de nombreux concepts génériques de conception de puces en suivant une formation sur la conception de GPU, cela serait largement applicable à tout type de conception de puces numériques, mais avec le style particulier que Nvidia a développé au fil des ans, a déclaré Dally.

« Nous voulons donner à nos concepteurs des "super pouvoirs" »

Bien que cette technologie soit encore actuellement un projet de recherche, elle est testée au sein de Nvidia pour recueillir les commentaires des membres de l’équipe concevant les futurs produits de Nvidia. ChipNeMo sera probablement appliqué à davantage de cas d'utilisation tout au long du processus de conception de puces à l'avenir, a déclaré Dally.

« Cet outil peut être appliqué à de nombreuses étapes de conception de puces, [peut-être] en écrivant des scripts pour exécuter des simulations logiques ou des bancs de test au début du processus, ou il peut s'agir de scripts pour effectuer le placement de macros plus tard, ou la vérification du timing et la vérification des règles dans le processus. étapes finales », a-t-il déclaré. « Nous aimerions le faire parce que ce qui nous limite dans la conception de puces, ce sont les ressources humaines : nous voulons donner à nos concepteurs des "super pouvoirs" afin que nous puissions concevoir des puces plus nombreuses et de meilleure qualité avec les mêmes concepteurs, et cela doit s'appliquer à toutes les étapes du processus de conception ».

Source : entretien avec Bill Dally

Et vous ?

Quels sont les avantages et les inconvénients de l’utilisation d’un modèle de langage pour la conception de puces ?
Comment évaluer la fiabilité et la qualité des réponses générées par ChipNeMo ?
Quelles sont les limites et les défis de l’approche RAG pour la génération augmentée par récupération ?
Quels sont les impacts éthiques et sociaux de l’automatisation de la conception de puces ?
Quelles sont les perspectives d’avenir pour l’application des modèles de langage à d’autres domaines techniques ou scientifiques ?

Une erreur dans cette actualité ? Signalez-nous-la !