COMPTOIR
  
register

Implémentation matérielle ou logicielle, quels impacts sur les puces ?

Nous continuons aujourd'hui notre voyage au cœur de la fiabilité de nos chères puces au silicium et du hardware, après avoir expliqué les évolutions en cours dans l'industrie des PCB et l'importance croissante de la conception analogique. Toutefois, aujourd'hui nous nous pencherons sur des pistes plus larges, car la conception des puces n'est pas que matérielle, mais aussi logicielle, avec l'utilisation des drivers, BIOS et autres implantations codées versus les circuits dédiés à des calculs précis. 

 

Pour comprendre le débat, il faut se pencher sur l'évolution des demandes au niveau des unités de calcul, qui doivent prendre en compte de plus en plus d'algorithmes complexes, que ce soit pour le domaine professionnel avec les IA, le machine learning ou le Big Data. Cependant, le domaine consumer commence à être touché, avec l'apparition des traitements lourds comme le raytracing et le supersampling par machine learning, qui deviennent un des nouveaux nerfs de guerre dans la bataille des GPU. Par conséquent, il est légitime de se poser une question simple et pleine de sens : quels sont les impacts du développement de ces solutions autant sur le plan logiciel que matériel, outre que les performances ?

 

bathtub curve fiability

Courbe simplifiée de lien entre le temps et la fiabilité.

 
L'approche par le hardware 

L'implémentation matérielle est souvent la solution mise en avant lorsque nous recherchons la qualité, l'efficacité et les meilleures performances. Elle peut être aussi gage d'une fiabilité exemplaire, à condition que celle-ci soit bien conçue, ce qui en est le gros souci : une fois une architecture matérielle définie, il devient difficile de la modifier, il faut donc s'assurer en amont qu'elle soit impeccable, ce qui demande du temps, de l'argent et des moyens humains en conséquence. Parfois, cette approche demande donc plusieurs générations, à l'instar des puces Ryzen, qui arrivées à la 3ème itération - si nous comptons Zen+ comme une étape transitoire - deviennent très performantes et matures. Cela se vérifie aussi sur les GPU RTX ou RDNA, qui commencent à faire leurs preuves et à pouvoir gérer des éléments jusque là impossibles en temps réel, grâce à la création de nouvelles unités dédiées.

 

Malheureusement, cette approche dispose aussi d'un désavantage conséquent : plus l'architecture se complexifie, plus il de vient difficile, long et couteux de la produire. Nous entendons au loin certains qui diraient "oui mais voilà, l'économie d'échelle...", un argument de moins en moins vrai, avec des productions en flux tendus qui ne semblent plus justifiés, un manque de stocks en conséquence et des services marketing qui semblent loin d'être au courant de la production réelle. Alors oui, l'évolution matérielle est intéressante et nécessaire, toutefois nous devons apprendre à devenir patients - actuellement les stocks des cartes Ampere et RDNA2 sont quasi inexistants - si elle est trop mise en avant, et le coût de R&D en conséquence peut se montrer faramineux, voire prendre trop de temps, à l'instar des puces en 10 nm de chez Intel.

 

evolution puces itrs

L'évolution des puces ne passe pas uniquement par la gravure, mais aussi par l'intégration de nouvelles fonctionnalités. (source : ITRS)

 

Vous avez dit lignes de code, non ?

À côté nous avons aussi l'implémentation logicielle, qui se base sur des unités plus génériques, certes moins puissantes, mais qui peut fournir des améliorations intéressantes, tester de nouveaux algorithmes et vérifier la compatibilité entre les appareils avant de recourir à des optimisations matérielles. Elles ont souvent été discréditées par le passé en étant qualifiées de peu fiables ou de boguées, car le souci du détail sur les lignes de code est parfois jugé moins important que le routage d'un circuit électronique.

 

Pourtant, cette approche devient de plus en plus intéressante et fiable, notamment grâce à des méthodes d'amélioration continue - non, nous ne parlons pas de méthodes agiles, mais bien de procédures intégrant toute une équipe - et en exploitant de mieux en mieux les optimisations des unités de calcul ou en créant des interfaces de plus bas niveau, comme DX12 pour les GPU. Or il ne faut pas oublier que cela ne remplacera pas indéfiniment les évolutions architecturales, l'exemple de Skylake chez les bleus montre qu'il faut faire évoluer le matériel de temps en temps tout de même, sans quoi un fabricant peut vite devenir obsolète.

 

Les cocktails, le meilleur choix

Alors dans tout ça, comment obtenir les meilleures générations de puces, que ce soit pour le particulier qui aime jouer ou les gros datacenters ? Dans les deux cas, le souci reste le même : l'évolution du hardware doit provenir non pas forcément de telle ou telle méthode, mais du sérieux porté à sa fabrication. De bons drivers, de bons BIOS ou de bonnes évolutions du microcode seront tout aussi bien, voire meilleurs, que de simplement mettre à jour la conception des puces en dur, sans s'assurer derrière de la fiabilité des galettes de silicium, des capacités de production ou de la survie sur le long terme.

 

hw sw chip design itrs

L'évolution sur les deux plans des puces semble être la plus performante, mais renforce le fossé entre les capacités des puces et la productivité des usines...

 

C'est donc une réflexion sur ces deux éléments qui est à prioriser, notamment au niveau de la R&D, qui doit être conjointe afin d'éviter d'éventuels soucis lors des évolutions, comme les soucis sur les puces mémoires des premières cartes Turing ou les écrans noirs sur les premières cartes RDNA. Des évolutions qui doivent donc non pas seulement être meilleures sur les performances, mais aussi accessibles, réfléchies et prévues pour le long terme, si nous voulons être utopiques. (source : Semiengineering)

 

 

Un poil avant ?

RX 6800 Series, ce ne serait pas encore pour tout de suite

Un peu plus tard ...

Bon plan • 32 Go de Vengeance LPX 3200 MHz C16 à 109,99 € !

Les 9 ragots
Les ragots sont actuellement
ouverts à tous, c'est open bar !
par fofo, le Jeudi 03 Décembre 2020 à 08h17  
par Un ragoteur sans nom embusqué, le Mardi 01 Décembre 2020 à 20h33
Aujourd'hui, lire une simple vidéo quand c'est décodé en matériel fait beaucoup consommer avec la sollicitation du gpu ou igpu et soc alors que je trouve que cela devrait être moins le cas.Je trouve qu'on doit mieux choisir les priorités entre l'apport logiciel et matériel et surtout entre cpu et gpu.
Pour avoir investi dans un écran 4k HDR je peux t'assurer que ces flux de vidéos ne sont pas une mince affaire : Mon core i5-8365U lit sans pb les vidéos h264 à 60Hz. (à environ 60mb/s) pour le h265 ça saccade et j'ai souvent de gros artefacts voir des freezes.
Dans les deux cas mon portable chauffe et ventile beaucoup. Pour le h264 la partie GPU du core i5 se charge du décodage, et c'est fluide tout en ayant du CPU disponible "au cas où". Le core i5 ne gère pas HEVC (H265) en hardware: le GPU se tourne les pouces mais les 4 cores CPU à 100% ne suffisent pas !

Bref le pb n'est pas sur l'implémentation hardware, mais simplement la charge globale de calcul qui est assez énorme pour décoder un flux UHD - HDR - 60Hz grosso-modo : 3840px * 2160px * 4octets/px (en HDR) * 60 Hz : ~1,85Go/s pour le flux décompressé (soit un taux de compression de 1/253 )
par Un ragoteur sans nom embusqué, le Mardi 01 Décembre 2020 à 20h33  
Aujourd'hui, lire une simple vidéo quand c'est décodé en matériel fait beaucoup consommer avec la sollicitation du gpu ou igpu et soc alors que je trouve que cela devrait être moins le cas.Je trouve qu'on doit mieux choisir les priorités entre l'apport logiciel et matériel et surtout entre cpu et gpu.
par Nicolas D., le Mardi 01 Décembre 2020 à 16h31  
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 16h03
Il ne me semble pas que le traitement de Intel et des autres entreprises soit le même dans cet article. Ici quand il parle de Skylake c'est pour critiquer Intel. De plus de manière assez discutable. Il y a eu des évolutions architecturales et microarchitecturales chez Intel depuis Skylake.
Il y en a, qui sont freinées au niveau de la disponibilité grand publique (ou pas encore sorties). Et, quitte à prendre un exemple frappant, le Ray Tracing reste tout de même bien plus adapté .
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 16h03
Il y a un bottleneck pour la fabrication chez Intel oui, mais cela s'explique pas avec des raisons architecturales. Il s'explique avec des difficultés de gravure chez Intel et par une demande très forte.
[...]
Plus un système est complexe, plus le nombre d'état à tester explose. Ce qui rend les tests bien plus complexe à conduire. Et il me semble que c'est cela qui explique la perte de fiabilité dont on parle ici
La complexité des tests explose avec le nombre d'états, mais la surface de la puce devient également plus grande, et donc aussi plus coûteuse à produire, non ? D'autant plus que le Ray Tracing/Tensor Cores chez NVIDIA notamment a nécessité un système d'alimentation dédié, qu'on ne voyait pas sur la génération antérieure, et donc autant de défauts potentiels. Effectivement, la complexité architecturale s'accompagne de tests plus profonds et plus longs, ce que nous n'avons pas abordé ici ; mais elle s'accompagne aussi d'impératifs sur les coûts de productions et les disponibilités
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 16h03  
par Nicolas D., le Mardi 01 Décembre 2020 à 15h37
Il est mentionné Skylake et le 10 nm, je ne comprends pas où tu vois ce manque ?
Il ne me semble pas que le traitement de Intel et des autres entreprises soit le même dans cet article. Ici quand il parle de Skylake c'est pour critiquer Intel. De plus de manière assez discutable. Il y a eu des évolutions architecturales et microarchitecturales chez Intel depuis Skylake.
 
Et, justement, quand je visitais la fab à l'IDC, ça faisait déjà des stock d'Ice Lake avant même sa dispo officielle pour laptop. Avant, oui, la conception était de loin la plus longue et la plus fastidieuse, mais les techno de gravure sont devenues de plus en plus complexes, et, avec les pénuries actuelles, nous constatons de facto qu'un bottleneck peut aussi se situer sur la production en tant que telle (mais cela n'exclut pas autre chose !)
Il y a un bottleneck pour la fabrication chez Intel oui, mais cela s'explique pas avec des raisons architecturales. Il s'explique avec des difficultés de gravure chez Intel et par une demande très forte.
Mais je me suis peut-être mal expliqué, je ne voulais pas dire que la production coûte rien et ne comporte pas de difficulté.

Je redonne la citation:
 
plus l'architecture se complexifie, plus il de vient difficile, long et couteux de la produire
Ce que j'essaie d'exprimer c'est que l'architecture n'a pas d'impacté sur la difficulté/coût de production. Elle a un impacte sur la difficulté et le coût de conception.
Plus un système est complexe, plus le nombre d'état à tester explose. Ce qui rend les tests bien plus complexe à conduire. Et il me semble que c'est cela qui explique la perte de fiabilité dont on parle ici
par Nicolas D., le Mardi 01 Décembre 2020 à 15h43  
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 10h10
Je pense qu'il faut aussi arrêter de trop lire semiengineering.com pour parler de point technique. Ce site passe son temps à fait des interviews de chef qui sont bien éloigné de la technique depuis longtemps. Cela peut servir à savoir dans quel direction les investissements vont aller, mais pas dans quelle direction la technique va aller. (On peut le voir dans la bio de l'auteur, il n'a jamais fait de technique il fait du marketing).
SemiEngineering c'est aussi l'une des rares sources dans lesquelles, justement, nous disposons d'une marge de manœuvre pour glisser significativement plus de connaissances que ce que propose l'article originel . Comme tu le soulignes, il s'agit souvent d'une vision meta difficilement transposable illustré par quelques firmes pointues, et l'exercice de style consistant à traduire et résumer mène souvent à une bouillie abstraite sans réelle consistance, c'est peut être ce que tu as pu ressentir. Comprend donc que nous ne faisons pas que de l'extrapolation de la news de base, mais choisissons un angle d'attaque souvent différent de celui de l'article originel (qui est cité presque à titre d'illustration de notre brève) pour traiter du même sujet rapporté à un lectorat un peu moins initié ; d'où le décalage qui a l'air de te choquer .
par Nicolas D., le Mardi 01 Décembre 2020 à 15h37  
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 10h10
Déjà, c'est quand même très étrange de centrer votre article sur RDNA2, Zen, Ampere.. c'est une vision très étriqué du monde réel des semi-conducteurs (et l'article d'origine n'en parle pas).
Parce que le comptoir n'est pas un média généraliste sur les semi-conducteurs, mais plus axés sur le matériel grand public avec certaines ouvertures. Dans le cadre de la vulgarisation d'enjeux, mieux vaut se reposer sur les sujet habituels qui parleront au plus grand nombre .
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 10h10
Et pourquoi exclure Intel dans ce cas?
Il est mentionné Skylake et le 10 nm, je ne comprends pas où tu vois ce manque ?
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 10h10
On dirait juste une mauvaise traduction au mieux. Car c'est faux, c'est plus long et coûteux à concevoir, pas à produire. C'est super important de comprendre la différence entre conception et fabrication dans cet industrie.
Et, justement, quand je visitais la fab à l'IDC, ça faisait déjà des stock d'Ice Lake avant même sa dispo officielle pour laptop. Avant, oui, la conception était de loin la plus longue et la plus fastidieuse, mais les techno de gravure sont devenues de plus en plus complexes, et, avec les pénuries actuelles, nous constatons de facto qu'un bottleneck peut aussi se situer sur la production en tant que telle (mais cela n'exclut pas autre chose !)
par Une ragoteuse à forte poitrine de Normandie, le Mardi 01 Décembre 2020 à 15h25  
Il suffit de lire un peu le code source d'un pilote pour se rendre compte à tel point le matériel est bogué. Alors que sur une implantation logicielle, le bogue est résolu après sa découverte, et on n'en parle plus.
par Une ragoteuse à forte poitrine en Auvergne-Rhône-Alpes, le Mardi 01 Décembre 2020 à 10h10  
Je trouve l'article super vague, il survole le sujet sans jamais le toucher. Il passe à coté des vrais problèmes dans cette industrie.

Déjà, c'est quand même très étrange de centrer votre article sur RDNA2, Zen, Ampere.. c'est une vision très étriqué du monde réel des semi-conducteurs (et l'article d'origine n'en parle pas).
Et pourquoi exclure Intel dans ce cas?

Et puis on trouve des phrases comme celle ci par exemple:
 
plus l'architecture se complexifie, plus il de vient difficile, long et coûteux de la produire

On dirait juste une mauvaise traduction au mieux. Car c'est faux, c'est plus long et coûteux à concevoir, pas à produire. C'est super important de comprendre la différence entre conception et fabrication dans cet industrie.
Et justement sans ce détail on passe totalement à coté des vrais sujets: le design et surtout la vérification. Jamais dans l'article vous ne parlez de la vérification, qui est quand même ce dont parle principalement l'article d'origine.

Je pense qu'il faut aussi arrêter de trop lire semiengineering.com pour parler de point technique. Ce site passe son temps à fait des interviews de chef qui sont bien éloigné de la technique depuis longtemps. Cela peut servir à savoir dans quel direction les investissements vont aller, mais pas dans quelle direction la technique va aller. (On peut le voir dans la bio de l'auteur, il n'a jamais fait de technique il fait du marketing).
Si en plus vous retirez les points techniques de son article il ne reste rien.
par Un ragoteur Gaulois en Auvergne-Rhône-Alpes, le Lundi 30 Novembre 2020 à 15h38  
En fait ça peut se résumer en un seul acronyme : PDCA

Plan
Do
Check
Act

Merci Deming.