j’ai parlé de Jim Keller à plusieurs reprises sur AnandTech. Dans le monde de la conception de semi-conducteurs, son nom attire l’attention, simplement par le nombre de grands projets réussis sur lesquels il a travaillé ou dirigé, qui ont généré des milliards de dollars de revenus pour ces sociétés respectives. Sa carrière s’étend sur DEC, AMD, SiByte, Broadcom, PA Semi, Apple, AMD (encore une fois), Tesla, Intel, et maintenant il est chez Tenstorrent en tant que CTO, développant la prochaine génération de matériel d’IA évolutif. L’éthique de travail de Jim a souvent été décrite comme « apprécier un défi », et au fil des années où je lui ai parlé, il veut toujours s’assurer que ce qu’il fait est à la fois ce défi, mais aussi important pour qui il travaille pour. Plus récemment, cela signifie travailler sur la direction la plus excitante des semi-conducteurs du jour, qu’il s’agisse de calcul haute performance, d’auto-conduite ou d’IA.


Jim Keller

CTO Tensorrent


Ian Cutresse

AnandTech

J’ai récemment interviewé la PDG de Tenstorrent, Ljubisa Bajic, aux côtés de Jim pour discuter de la prochaine génération de semi-conducteurs d’IA. Aujourd’hui, nous publions une transcription d’une conversation récente avec Jim, maintenant cinq mois dans son rôle chez Tenstorrent, mais plus encore pour parler de Jim la personne, plutôt que simplement Jim l’ingénieur.

Jim Keller : Expérience de travail
AnandTech Compagnie Titre Important
Produit
années 1980 1998 DÉC Architecte Alpha
1998 1999 DMLA Architecte principal K7, K8v1
Hypertransport
1999 2000 SiByte Architecte en chef Réseau MIPS
2000 2004 Broadcom Architecte en chef Réseau MIPS
2004 2008 PENNSYLVANIE. Semi Vice-président Ingénierie Mobile à faible consommation
2008 2012 Pomme Vice-président Ingénierie Mobile A4 / A5
8/2012 9/2015 DMLA Vice-président de la société et
Architecte en chef des noyaux
Pont aérien / K12
(+ Zen)
1/2016 4/2018 Tesla Vice-président pilote automatique
Ingénierie matérielle
Entièrement autonome
Puce (FSD)
4/2018 6/2020 Intelligence Vice-président principal
Ingénierie du silicium
?
2021 Tensorrent Président et CTO À déterminer

Sujets couverts

  • AMD, Zen et Project Skybridge
  • Gestion de 10000 personnes chez Intel
  • L’avenir avec Tenstorrent
  • Ingénieurs et compétences humaines
  • Armer contre x86 contre RISC-V
  • Vivre une vie d’abstraction
  • Réflexions sur la loi de Moore
  • Concevoir la bonne équipe
  • Idoles, maturité et expérience humaine
  • Nature vs Nourrir
  • Pousser tout le monde à être le meilleur
  • Sécurité, éthique et croyance de groupe
  • Puces fabriquées par l’IA et au-delà du silicium

AMD, Zen et Project Skybridge

Ian Cutress : La plupart des questions du public sont axées sur votre séjour chez AMD, alors commençons par là. Vous avez travaillé chez AMD sur Zen et sur la plate-forme Skybridge – AMD gagne maintenant des parts de marché avec la gamme de produits Zen, et vous vous lancez dans des choses plus grandes et meilleures. Mais il y a eu beaucoup de confusion quant à votre rôle exact chez AMD au cours de ce projet. Certaines personnes pensent que vous avez fait partie intégrante de la conception de Zen, puis de la microarchitecture de haut niveau Zen 2 et Zen 3. D’autres pensent que vous avez mis les gens en place, que vous avez signé à un niveau élevé, puis que vous vous êtes concentré sur la version Arm de Skybridge, K12. Pouvez-vous nous donner des éclaircissements sur votre rôle là-bas, jusqu’où vous êtes allé avec Zen contre K12, ou votre implication dans des choses comme Infinity Fabric ?

Jim Keller : Ouais, c’était un projet compliqué, non ? Quand je suis arrivé chez AMD, ils avaient Bulldozer et Jaguar, et ils avaient tous les deux des caractéristiques charmantes mais ils n’ont pas réussi sur le marché. Les feuilles de route n’étaient pas agressives, elles prenaient du retard sur Intel, et ce n’est donc pas une bonne chose à faire si vous êtes déjà en retard – vous feriez mieux de rattraper votre retard, de ne pas prendre de retard. J’ai donc pris le rôle, et j’étais président de l’équipe CPU qui, je pense, quand j’ai rejoint, comptait 500 personnes. Puis, au cours des trois années suivantes, l’équipe SoC, l’équipe Fabric et certaines équipes IP ont rejoint mon petit gang. Je pense que quand je suis parti, c’était 2400 personnes qu’on m’a dit. J’étais donc vice-président avec un personnel. J’avais des directeurs principaux qui relevaient de moi, ainsi que les boursiers principaux, et mon personnel comptait 15 personnes. J’écrivais donc à peine RTL !

Cela dit, nous avons fait tout un tas de choses. Je suis architecte informatique, je ne suis pas vraiment manager. Je voulais le rôle de gestion, qui était le plus grand rôle de gestion que j’avais eu à l’époque. Jusque-là, j’avais été vice-président d’une start-up, mais c’était 50 personnes, et nous nous entendions tous – c’était une pièce assez différente pour moi. Je savais que les changements techniques que nous devions apporter impliqueraient que les gens s’y alignent. Je ne voulais pas être l’architecte d’un côté discutant avec le vice-président pour savoir pourquoi quelqu’un pouvait ou ne pouvait pas faire le travail, ou pourquoi c’était la bonne ou la mauvaise décision. J’ai parlé à Mark Papermaster, je lui ai expliqué ma théorie et il m’a dit « d’accord, nous allons essayer », et cela a plutôt bien fonctionné.

Avec cela, j’avais une autorité directe pour ainsi dire – mais les gens ne font pas vraiment ce qu’on leur dit de faire, n’est-ce pas ? Ils font ce pour quoi ils sont inspirés. Vous devez donc établir un plan, et une partie de celui-ci consistait à découvrir qui étaient les bonnes personnes pour faire ces différentes choses, et parfois quelqu’un est vraiment bon, mais les gens s’investissent beaucoup dans ce qu’ils ont fait la dernière fois, ou ils croient des choses ne peut pas être changé, et je dirais que mon point de vue était que les choses allaient si mal que presque tout devait changer. Je suis donc entré avec ça par défaut. Cela a-t-il du sens? Maintenant, ce n’est pas que nous n’avons pas trouvé tout un tas de trucs qui étaient bons à utiliser. Mais vous deviez prouver que l’ancienne chose était bonne, par opposition à prouver que la nouvelle chose était bonne, alors nous avons changé cet état d’esprit.

Sur le plan architectural, j’avais une assez bonne idée de ce que je voulais construire et pourquoi. J’ai trouvé des personnes au sein de l’entreprise, telles que Mike Clark, Leslie Barnes, Jay Fleischman et d’autres. Il y a pas mal de gens vraiment formidables qui, une fois que nous avons décrit ce que nous voulions faire, se sont dit « oui, nous voulons le faire ». Sur le plan architectural, j’ai eu une certaine contribution. Il y avait souvent des décisions et des analyses, et les gens avaient des opinions différentes, donc j’étais assez pratique. Mais je ne faisais pas de diagrammes ou n’écrivais pas de RTL. Nous avions plusieurs projets en cours – il y avait Zen, il y avait le cousin Arm, le suivi et une nouvelle méthodologie SoC. Mais nous avons fait plus que de la conception de CPU – nous avons fait de la conception de méthodologie, du refactoring IP, des changements organisationnels très importants. J’étais impliqué de haut en bas avec tout ça, donc c’est logique.

IC : Certaines personnes vous considèrent comme le « Père du Zen », pensez-vous que vous écririez à cette position ? Ou cela devrait-il aller à quelqu’un d’autre ?

JK : Peut-être l’un des oncles. Il y avait beaucoup de gens vraiment formidables sur Zen. Il y avait une équipe de méthodologie qui était mondiale, l’équipe SoC était en partie à Austin et en partie en Inde, le cache à virgule flottante a été fait au Colorado, le frontal d’exécution de base était à Austin, le frontal Arm était à Sunnyvale, et nous avait de bons leaders techniques. J’ai été en communication quotidienne pendant un certain temps avec Suzanne Plummer et Steve Hale, qui ont en quelque sorte construit le front-end du noyau Zen, et l’équipe du Colorado. C’était vraiment des gens bien. Mike Clark est un grand architecte, nous avons donc eu beaucoup de plaisir et de succès. Le succès a beaucoup d’auteurs – l’échec en a un. Ce fut donc un succès. Ensuite, certaines équipes se sont intensifiées – nous avons transféré Excavator à l’équipe de Boston, où ils ont pris en charge la finition de la conception et des éléments physiques, Harry Fair et ses gars ont fait un excellent travail là-dessus. Il y a donc eu des changements organisationnels assez stressants que nous avons faits, en passant par là. L’équipe s’est réunie, donc je pense qu’il y avait beaucoup de camaraderie. Je ne prétendrai donc pas être le « père » – j’ai été amené, vous savez, en tant qu’instigateur et chef de file, mais en partie architecte et en partie leader transformationnel. C’était amusant.

IC : Est-ce que tout ce sur quoi vous avez travaillé maintenant est disponible chez AMD, ou y a-t-il encore une sorte de feuille de route à sortir, pensez-vous des idées que vous avez aidé à propager ?

JK : Ainsi, lorsque vous construisez un nouvel ordinateur, et que Zen était un nouvel ordinateur, le travail était déjà en cours. Vous construisez essentiellement une feuille de route, alors je pensais à ce que nous allions faire pendant cinq ans, puce après puce. Nous l’avons fait aussi chez Apple lorsque nous avons construit le premier gros noyau chez Apple – nous avons construit de gros os [into the design]. Lorsque vous rendez un ordinateur plus rapide, il y a deux façons de le faire : vous agrandissez la structure fondamentale ou vous modifiez les fonctionnalités, et Zen avait une grande structure. Ensuite, il y avait des choses évidentes à faire pour plusieurs générations à suivre. Ils ont donné suite à cela.

Donc, à un moment donné, ils devront faire une autre grande réécriture et changement. Je ne sais pas s’ils ont déjà commencé. Ce que nous avions prévu pour les améliorations des performances architecturales était assez important, sur quelques années, et ils semblent faire un excellent travail pour y parvenir. Mais je suis sorti de là depuis un moment – quatre ou cinq ans maintenant.

IC : Oui, je pense qu’ils ont dit que Zen 3, le dernier qui vient de sortir était une réécriture. Donc je pense que certaines personnes pensent que c’était encore sous votre direction.

JK : Ouais, c’est difficile à dire. Même lorsque nous avons fait Zen, nous avons fait un design à partir de zéro – un design épuré au sommet. Mais quand ils l’ont construit, il y avait tout un tas de morceaux de RTL qui venaient de Bulldozer et Jaguar, qui étaient parfaitement bons à utiliser. Ils devaient juste être modifiés et intégrés dans la nouvelle structure Zen. Donc, les gars du matériel sont super doués pour utiliser le code quand c’est bon.

Donc, quand ils disent qu’ils ont fait une grande réécriture, ils ont probablement pris quelques morceaux et les ont restructurés en haut, mais quand ils ont construit le code, ça ne me surprendrait pas si quelque part entre 20% et 80% du code était le même truc, ou légèrement modifié, mais c’est assez normal. La clé est d’obtenir la bonne structure, puis de réutiliser le code selon les besoins, au lieu de prendre quelque chose de compliqué et d’essayer de le modifier pour arriver quelque part. Donc, s’ils ont fait une réécriture, ils ont probablement corrigé la structure.

Gestion de 10000 personnes chez Intel

IC : Je sais que c’est encore assez récent, donc je ne sais pas de quel type de NDA vous êtes toujours, mais votre travail chez Intel était-il plutôt une table rase ? Pouvez-vous donner des détails sur ce que vous avez fait là-bas ?

JK : Je ne peux pas trop parler, évidemment. Le rôle que j’avais était celui de vice-président principal de Silicon Engineering Group, et l’équipe comptait 10 000 personnes. Ils font tellement de choses différentes, c’est juste incroyable. C’était quelque chose comme 60 ou 70 SoC en vol à la fois, littéralement de la conception au prototypage, au débogage et à la production. C’était donc un groupe assez diversifié, et mon personnel était composé de vice-présidents et de boursiers seniors, donc c’était un gros problème d’organisation.

J’avais pensé y aller parce qu’il y avait un tas de nouvelles technologies à construire. J’ai passé la plupart de mon temps à travailler avec l’équipe sur la transformation organisationnelle et méthodologique, comme les nouveaux outils de CAO, les nouvelles méthodologies, les nouvelles façons de construire des puces. Quelques années avant mon arrivée, ils ont commencé ce qu’on appelle la vue IP SoC de la construction de puces, par rapport à la vue monolithique historique d’Intel. Pour être honnête, cela ne se passait pas bien, car ils ont pris les puces monolithiques, ils ont pris les excellents composants client et serveur, et les ont simplement brisés en morceaux. Vous ne pouvez pas simplement le casser en morceaux – vous devez réellement reconstruire ces morceaux et une partie de la méthodologie va avec.

Nous avons trouvé un tas de gens [internally] qui étaient vraiment enthousiastes à l’idée de travailler là-dessus, et j’ai également passé beaucoup de temps sur la qualité IP, la densité IP, les bibliothèques, la caractérisation, la technologie des processus. Vous l’appelez, j’étais dessus. Mes journées étaient un peu folles – certains jours, j’avais 14 significations différentes en une seule journée. C’était juste clic, clic, clic, clic, tant de choses se sont passées.

IC : Toutes ces réunions, comment avez-vous fait quelque chose ?

JK : Je ne fais rien techniquement ! On m’a dit que j’étais le vice-président senior – il s’agit d’évaluer, d’établir une direction, de porter un jugement, ou disons essayer un changement organisationnel, ou des changements de personnes. Cela s’additionne au bout d’un moment. Sachez que l’essentiel pour arriver quelque part est de savoir où vous allez, puis de mettre en place une organisation qui sait comment faire cela – cela demande beaucoup de travail. Je n’ai donc pas écrit beaucoup de code, mais j’ai envoyé beaucoup de SMS.

IC : Intel a maintenant un nouveau PDG axé sur l’ingénierie, Pat Gelsinger. Envisageriez-vous de revenir en arrière si la bonne opportunité se présentait ?

JK : Je ne sais pas. J’ai un travail vraiment amusant maintenant, et dans un marché en croissance vraiment explosif. Alors je lui souhaite le meilleur. je pense que c’était un bon choix [for Pat as CEO], et j’espère que c’est un bon choix, mais nous verrons ce qui se passe. Il se soucie vraiment beaucoup d’Intel, et il a eu un réel succès dans le passé. Il va certainement apporter beaucoup plus d’attention technique à l’entreprise. Mais j’ai bien aimé travailler avec Bob Swan, alors nous verrons ce qui se passe.

L’avenir avec Tenstorrent

IC : Vous êtes maintenant plusieurs sociétés d’AMD, dans une société appelée Tenstorrent, avec un vieil ami à Ljubisa Bajic. Vous avez sauté d’une entreprise à l’autre pendant pratiquement toute votre carrière. Vous trouvez toujours un autre projet, une autre opportunité, un autre angle. Pour ne pas être trop direct, mais Tenstorrent sera-t-il une maison pour toujours ?

JK : D’abord, j’ai été chez Digital (DEC) pendant 15 ans, n’est-ce pas ! C’était une carrière différente parce que j’étais dans le groupe de milieu de gamme où nous construisions des ordinateurs à partir d’ECL – c’étaient des boîtes de la taille d’un réfrigérateur. J’étais dans l’équipe DEC Alpha où nous avons construit de petits microprocesseurs, de petites choses minuscules, que nous pensions à l’époque énormes. Il s’agissait de 300 millimètres carrés à 50 watts, ce qui a époustouflé tout le monde.

J’étais donc là-bas pendant un certain temps, et je suis allé chez AMD juste pendant la ruée vers Internet, et nous avons fait tout un tas de choses en quelques années. Nous avons commencé Opteron, HyperTransport, les serveurs 2P – c’était une sorte de tourbillon d’un endroit. Mais j’ai été aspiré ou pris dans l’enthousiasme d’Internet, et je suis allé chez SiByte, qui a été racheté par Broadcom, et j’y suis resté quatre ans au total. Nous avons livré plusieurs générations de produits.

J’étais alors chez P.A Semi, et nous avons livré un excellent produit, mais ils ne voulaient pas vraiment vendre le produit pour une raison quelconque, ou ils pensaient qu’ils allaient le vendre à Apple. En fait, je suis allé chez Apple, puis Apple a acheté P.A Semi, puis j’ai travaillé pour cette équipe, donc vous savez que j’étais entre P.A Semi et Apple. C’était sept ans, donc je n’ai pas vraiment l’impression que ça sautait trop.

Ensuite, je suis passé à AMD, je suppose, et c’était amusant pendant un moment. Ensuite, je suis allé chez Tesla où nous avons livré le matériel 3 (Tesla Autopilot). C’était donc un peu phénoménal. D’un départ arrêté à la conduite d’une voiture en 18 mois – je ne pense pas que cela ait jamais été fait auparavant, et ce produit a été livré avec beaucoup de succès. Ils en ont construit un million l’année dernière. Tesla et Intel étaient un tourbillon différent, donc on peut dire que j’ai sauté dedans et sauté. Je me suis bien amusé.

Alors oui, j’ai été un peu dans le coin. J’aime penser que je fais surtout ce que j’ai décidé d’accomplir. Mon succès là-bas est assez élevé en termes de livraison de produits qui ont une valeur durable. Je ne suis pas du genre à peaufiner les choses en production – c’est soit un morceau de papier propre, soit un désastre complet. Cela semble être les choses que je fais le mieux. C’est bon de se connaître – je ne suis pas un manager opérationnel. Tenstorrent est donc plus le morceau de papier propre. L’espace de l’IA explose. L’entreprise elle-même existe déjà depuis de nombreuses années, mais nous construisons une nouvelle génération de pièces, allons sur le marché et commençons à vendre des choses. Je suis CTO et président, j’ai un gros intérêt dans l’entreprise, à la fois financièrement et aussi un engagement envers mes amis là-bas, donc je prévois d’être ici pendant un certain temps.

IC : Je pense que vous avez déjà dit qu’en allant au-delà du type de matrice, vous vous retrouvez avec des structures de graphes massives, en particulier pour l’IA et le ML, et tout l’intérêt de Tenstorrent, c’est un compilateur de graphes et un moteur de calcul de graphes, pas seulement un simple matrice se multiplier.

JK : De vieilles mathématiques, et je ne suis pas mathématicien, donc les mathématiciens vont grincer des dents un peu, mais il y avait des maths scalaires, comme A = B + C x D. Quand vous aviez un petit nombre de transistors, c’est le calcul que vous pourrait faire. Maintenant que nous avons plus de transistors, vous pourriez dire « Je peux en faire un vecteur », comme une équation correctement dans une étape. Ensuite, nous avons eu plus de transistors, nous pourrions faire une multiplication matricielle. Ensuite, comme nous avions plus de transistors, vous vouliez prendre ces grosses opérations et les décomposer, car si vous rendez votre multiplicateur matriciel trop grand, la puissance de simplement traverser l’unité est un gaspillage d’énergie.

Vous trouvez donc que vous voulez construire ce bloc de taille optimale qui n’est pas trop petit, comme un thread dans un GPU, mais ce n’est pas trop gros, comme couvrir toute la puce avec un multiplicateur matriciel. Ce serait une idée vraiment stupide du point de vue du pouvoir. Ainsi, vous obtenez cette gamme de processeurs de taille moyenne, où le support correspond à quelque chose comme quatre TOP. C’est toujours hilarant pour moi, parce que je me souviens quand c’était un très gros chiffre. Une fois que vous avez divisé cela, vous devez maintenant prendre les grandes opérations et les mapper sur la gamme de processeurs et l’IA ressemble à un graphique de très grandes opérations. C’est toujours un graphique, puis les grandes opérations sont factorisées dans des graphiques plus petits. Maintenant, vous devez l’installer sur une puce avec beaucoup de processeurs et faire circuler les données autour d’elle.

Il s’agit d’un type de calcul très différent de l’exécution d’un programme vectoriel ou matriciel. Nous l’appelons donc parfois une matrice vectorielle scalaire. Raja l’appelait calcul spatial, ce qui serait probablement un meilleur mot.

IC : En plus des cœurs Tensix, Tenstorrent ajoute également des moteurs vectoriels à vos cœurs pour la prochaine génération ? Comment cela s’intègre-t-il?

JK : N’oubliez pas les processeurs à usage général qui ont des moteurs vectoriels sur eux – il s’avère que lorsque vous exécutez des programmes d’IA, il y a du calcul à usage général que vous voulez juste avoir. Il y a aussi des moments dans le graphique où vous voulez exécuter un programme C sur le résultat d’une opération d’IA, et donc avoir ce calcul étroitement couplé est bien. [By keeping] sur la même puce, la latence est super faible et la puissance d’aller-retour est raisonnable. Alors oui, nous travaillons sur une feuille de route intéressante pour cela. C’est un petit domaine de recherche en architecture informatique, comme, quel est le bon mélange avec l’informatique accélérée et l’informatique polyvalente et comment les gens l’utilisent. Alors, comment le construire de manière à ce que les programmeurs puissent l’utiliser ? C’est l’astuce sur laquelle nous travaillons.

Ingénieurs et compétences humaines

IC : Si je parcoure votre carrière, vous êtes passé entre le calcul haute performance et le calcul efficace à faible consommation. Vous êtes maintenant dans le monde de l’accélération de l’IA. Est-ce que c’est déjà devenu ennuyeux ?

JK : Non, et c’est vraiment bizarre ! Eh bien, ça a changé, et ça a tellement changé, mais à un certain niveau, ça ne change pas du tout. Les ordinateurs en bas, ils ajoutent juste des uns et des zéros ensemble. C’est assez facile. 011011100, ce n’est pas si compliqué.

Mais j’ai travaillé sur le VAX 8800 où nous l’avons construit à partir de matrices de portes qui avaient 200 portes OU dans chaque puce. Genre 200, non ? Maintenant, chez Tenstorrent, nos petits ordinateurs, nous les appelons cœurs Tensix, effectuent quatre billions d’opérations par seconde et par cœur, et il y en a 100 dans une puce. Ainsi, le bloc de construction est passé de 200 portes à quatre Tera Ops. C’est une sorte de transformation sauvage.

Ensuite, les outils sont bien meilleurs qu’avant. Ce que vous pouvez faire maintenant – vous ne pouvez pas construire des choses plus compliquées à moins que les niveaux d’abstraction ne changent et que les outils changent. Il y a eu tellement de changements sur ce genre de choses. Quand j’étais enfant, je pensais que je devais tout faire moi-même – et je travaillais comme un maniaque et je codais tout le temps. Maintenant, je sais comment travailler avec les gens et les organisations et écouter. Des trucs comme ça. Compétences sociales. J’aurais probablement un tableau de bord assez inégal sur les compétences interpersonnelles ! J’en ai quelques-uns.

IC : Diriez-vous que les ingénieurs ont besoin de plus de compétences humaines de nos jours ? Parce que tout est complexe, tout a des couches d’abstraction séparées, et si vous voulez travailler entre elles, vous devez maîtriser les bases.

JK : Maintenant, voici la vérité fondamentale, les gens ne deviennent pas plus intelligents. Donc, les gens ne peuvent pas continuer à travailler sur de plus en plus de choses – c’est tout simplement stupide. Mais vous devez créer des outils et des organisations qui soutiennent la capacité des gens à faire des choses compliquées. L’équipe du VAX 8800 était de 150 personnes. Mais l’équipe qui a construit le premier ou le deuxième processeur chez Apple, le premier gros cœur personnalisé, comptait 150 personnes. Maintenant, les outils de CAO sont incroyablement meilleurs, et nous utilisons des milliers d’ordinateurs pour faire des simulations, et nous avons des outils qui pourraient placer et acheminer 2 millions de portes contre 200. Donc quelque chose a radicalement changé, mais le nombre de personnes à qui un ingénieur pourrait parler un jour donné n’a pas du tout changé. Si un ingénieur parle à plus de cinq personnes par jour, il perdra la tête. Donc, certaines choses sont vraiment constantes.

Ensembles d’instructions du processeur : Arm vs x86 vs RISC-V

IC : Vous avez parlé des jeux d’instructions CPU dans le passé, et l’une des plus grandes demandes pour cette interview que j’ai reçue concernait votre opinion sur les jeux d’instructions CPU. Plus précisément, des questions ont été posées sur la manière dont nous devrions gérer leurs limites fondamentales, sur la manière dont nous nous orientons vers de meilleures et quelle est votre peau dans le jeu en termes d’ARM contre x86 contre RISC V. Je pense qu’à un moment donné, vous avez dit que la plupart des calculs se produit sur quelques douzaines d’op-codes. Est-ce que je me souviens bien de ça ?

JK : [Arguing about instruction sets] est une histoire très triste. Ce n’est même pas une douzaine [op-codes] – 80 % de l’exécution de base ne comprend que six instructions – vous savez, chargez, stockez, ajoutez, soustrayez, comparez et branchez. Avec ceux-là, vous l’avez à peu près couvert. Si vous écrivez en Perl ou quelque chose du genre, peut-être que l’appel et le retour sont plus importants que la comparaison et la branche. Mais les jeux d’instructions n’ont que peu d’importance : vous pouvez perdre 10 % ou 20 %, [of performance] parce que vous manquez des instructions.

Pendant un moment, nous avons pensé que les instructions de longueur variable étaient vraiment difficiles à décoder. Mais nous continuons à chercher comment faire cela. En gros, vous prédisez où se trouvent toutes les instructions dans les tableaux, et une fois que vous avez de bons prédicteurs, vous pouvez assez bien prédire ce genre de choses. Ainsi, les instructions de longueur fixe semblent vraiment agréables lorsque vous construisez de petits ordinateurs pour bébé, mais si vous construisez un très gros ordinateur, pour prédire ou déterminer où se trouvent toutes les instructions, cela ne domine pas le dé. Donc ça n’a pas tellement d’importance.

Lorsque RISC est sorti pour la première fois, x86 était à moitié microcode. Donc, si vous regardez le dé, la moitié de la puce est une ROM, ou peut-être un tiers ou quelque chose. Et les gars de RISC pourraient dire qu’il n’y a pas de ROM sur une puce RISC, donc nous obtenons plus de performances. Mais maintenant, la ROM est si petite que vous ne pouvez pas la trouver. En fait, l’additionneur est si petit, vous pouvez à peine le trouver ? Ce qui limite les performances de l’ordinateur aujourd’hui, c’est la prévisibilité, et les deux principaux sont la prévisibilité des instructions/branches et la localité des données.

Maintenant, les nouveaux prédicteurs sont vraiment bons pour ça. Ils sont gros – deux prédicteurs sont bien plus gros que l’additionneur. C’est là que vous entrez dans le débat CPU contre GPU (ou moteur AI). Les gars du GPU diront « regardez, il n’y a pas de prédicteur de branche parce que nous faisons tout en parallèle ». La puce a donc beaucoup plus d’additionneurs et de soustracteurs, et c’est vrai si c’est le problème que vous avez. Mais ils sont nuls à exécuter des programmes C.

Les GPU ont été conçus pour exécuter des programmes de shader sur des pixels, donc si vous disposez de 8 millions de pixels, et que les gros GPU ont maintenant 6000 threads, vous pouvez couvrir tous les pixels avec chacun d’eux exécutant 1000 programmes par image. Mais c’est un peu comme une armée de fourmis transportant des grains de sable, alors que les gros ordinateurs d’IA, ils ont de très gros multiplicateurs matriciels. Ils aiment un nombre beaucoup plus petit de threads qui font beaucoup plus de mathématiques parce que le problème est intrinsèquement important. Alors que le problème du shader était que les problèmes étaient intrinsèquement petits car il y avait tellement de pixels.

Il existe en réalité trois types d’ordinateurs différents : les processeurs, les processeurs graphiques et l’IA. NVIDIA fait en quelque sorte la chose « intermédiaire » où ils utilisent un GPU pour exécuter l’IA, et ils essaient de l’améliorer. Certains de ces éléments fonctionnent manifestement assez bien, et d’autres sont manifestement assez compliqués. Ce qui est intéressant, et cela arrive souvent, c’est que les processeurs à usage général, lorsqu’ils ont vu les performances vectorielles des GPU, ont ajouté des unités vectorielles. Parfois, c’était génial, car vous n’aviez qu’un peu de calcul vectoriel à faire, mais si vous en aviez beaucoup, un GPU pourrait être une meilleure solution.

IC : Pour en revenir à la question de l’ISA – beaucoup de gens demandaient ce que vous pensez d’Arm par rapport au x86 ? Lequel a les jambes, lequel a la performance ? Vous souciez-vous beaucoup, voire pas du tout ?

JK : Je m’en fous un peu. Voici ce qui s’est passé – alors quand x86 est sorti pour la première fois, c’était super simple et propre, n’est-ce pas ? Puis à l’époque, il y avait plusieurs architectures 8 bits : x86, le 6800, le 6502. Je les ai probablement toutes programmées à l’époque. Puis x86, assez curieusement, était la version ouverte. Ils ont concédé cela à sept sociétés différentes. Ensuite, cela a donné l’opportunité aux gens, mais Intel l’a étonnamment autorisé. Ensuite, ils sont passés à 16 bits et 32 ​​bits, puis ils ont ajouté de la mémoire virtuelle, de la virtualisation, de la sécurité, puis du 64 bits et plus de fonctionnalités. Alors, qu’arrive-t-il à une architecture lorsque vous ajoutez des éléments, vous conservez les anciens éléments pour qu’ils soient compatibles.

Ainsi, lorsque Arm est sorti pour la première fois, c’était un ordinateur 32 bits propre. Comparé à x86, il avait l’air bien plus simple et plus facile à construire. Ensuite, ils ont ajouté un mode 16 bits et l’instruction IT (si alors), ce qui est affreux. Puis [they added] une étrange extension vectorielle à virgule flottante avec des superpositions dans un fichier de registre, puis 64 bits, qui l’a en partie nettoyé. Il y avait des trucs spéciaux pour la sécurité et le démarrage, et donc ça n’a fait que se compliquer.

Maintenant RISC-V apparaît et c’est le nouveau cousin brillant, non? Parce qu’il n’y a pas d’héritage. C’est en fait une architecture de jeu d’instructions ouverte, et les gens la construisent dans des universités où ils n’ont pas le temps ou l’intérêt d’ajouter trop de déchets, comme certaines architectures le font. Donc relativement parlant, juste à cause de son pedigree et de son âge, c’est au début du cycle de vie de la complexité. C’est un très bon jeu d’instructions, ils ont fait du bon travail. Donc, si je voulais juste dire si je veux construire un ordinateur très rapidement aujourd’hui, et je veux qu’il aille vite, RISC-V est le plus simple à choisir. C’est le plus simple, il a toutes les bonnes fonctionnalités, il a les huit bonnes instructions pour lesquelles vous devez réellement optimiser, et il n’a pas trop de déchets.

IC : Les jeux d’instructions modernes ont donc trop de ballonnements, en particulier les anciens. Bagages hérités et autres?

JK : Les instructions qui ont été réitérées et ajoutées ont trop de ballonnement. C’est ce qui arrive toujours. Au fur et à mesure que vous ajoutez des choses, les ingénieurs ont du mal. Vous pouvez avoir ce très bon design, il y a 10 fonctionnalités, et donc vous y ajoutez quelques fonctionnalités. Les fonctionnalités le rendent tous meilleur, mais ils le rendent également plus compliqué. Au fur et à mesure que vous avancez, chaque nouvelle fonctionnalité ajoutée devient plus difficile à faire, car l’interaction pour cette fonctionnalité, et tout le reste, devient terrible.

Les gars du marketing et les anciens clients diront « ne supprimez rien », mais en attendant, ils jouent tous avec le nouveau truc frais qui ne fait que 70 % de ce que fait l’ancien, mais il le fait bien mieux car il n’a pas tous ces problèmes. J’ai parlé des courbes de rendement décroissant, et il y a un tas de raisons pour les rendements décroissants, mais l’une d’entre elles est la complexité des interactions des choses. Ils vous ralentissent au point où quelque chose de plus simple qui en fait moins serait en fait plus rapide. Cela s’est produit plusieurs fois, et c’est un résultat de la théorie de la complexité et vous savez, de la méchanceté humaine je pense.

IC : Alors avez-vous déjà vu une situation où x86 tombe en panne et quelque chose est simplement réinventé ? Ou cela restera-t-il simplement un héritage, puis de nouvelles choses apparaîtront comme RISC-V pour combler le vide en cas de besoin?

JK : x86-64 était une ardoise assez propre, mais évidemment il devait transporter tous les vieux bagages pour ceci et cela. Ils ont déprécié une grande partie des anciens modes 16 bits. Il y a tout un tas de crasse qui a disparu, et parfois si vous faites attention, vous pouvez dire « Je dois soutenir cet héritage, mais il n’a pas besoin d’être performant, et je peux l’isoler du reste ». Vous l’imitez ou le soutenez.

Nous avions l’habitude de construire des ordinateurs tels que vous disposiez d’un frontal, d’un fetch, d’un dispatch, d’un execute, d’un load store, d’un cache L2. Si vous regardiez les limites entre eux, vous verriez 100 fils faire des choses aléatoires qui dépendaient exactement de quel cycle ou de quelle phase de l’horloge il s’agissait. Maintenant, ces interfaces ont tendance à ressembler moins à des limites d’instructions – si j’envoie une instruction d’ici à là, j’ai maintenant un protocole. Donc, l’ordinateur à l’intérieur ne ressemble pas à un gros tas de trucs connectés ensemble, il ressemble à huit ordinateurs connectés ensemble qui font des choses différentes. Il y a un ordinateur d’extraction et un ordinateur de répartition, un ordinateur d’exécution et un ordinateur à virgule flottante. Si vous le faites correctement, vous pouvez modifier la virgule flottante sans rien toucher d’autre.

C’est moins une question d’ensemble d’instructions – c’est plus « quel était votre principe de conception lorsque vous l’avez construit », et ensuite comment l’avez-vous fait. Le truc, c’est que si vous rencontrez un problème, vous pourriez dire « si je pouvais juste avoir ces cinq fils entre ces deux boîtes, je pourrais me débarrasser de ce problème ». Mais chaque fois que vous faites cela, chaque fois que vous violez la couche d’abstraction, vous créez un problème pour le futur Jim. Je l’ai fait tellement de fois, et comme si vous le résolviez correctement, ce serait toujours propre, mais à un moment donné, si vous le piratez un peu, cela vous tue avec le temps.

Vivre une vie d’abstraction

IC : J’ai vu un certain nombre de conférences où vous parlez du concept de couches d’abstraction non seulement dans de nombreux aspects de l’ingénierie, mais aussi dans la vie. Ce concept vous permet de mettre à niveau indépendamment différentes couches sans affecter celles situées au-dessus et au-dessous, et en fournissant de nouvelles plates-formes sur lesquelles s’appuyer. À quel moment de votre vie ce genre d’éthique a-t-il eu un déclic, et que s’est-il passé dans votre vie pour en faire un élément omniprésent de votre personnalité ?

JK : Élément omniprésent de ma personnalité? C’est assez drôle ! Je sais que je le répète beaucoup, peut-être que j’essaie de me convaincre.

Comme, lorsque nous avons construit EV 6, Dirk Meyer était l’autre architecte. Nous avions quelques autres personnes fortes. Nous avons divisé la conception en quelques morceaux, nous avons écrit un modèle de performance très simple, nous l’avons compris, mais lorsque nous avons construit la chose, c’était un tuyau relativement court pour une machine en panne, car nous étions encore un peu faibles sur prédicteurs. Il y avait beaucoup d’interactions entre les choses, et c’était une conception difficile que nous avons construite. Nous l’avons également construit avec la méthodologie de conception personnalisée que Digital avait à l’époque. Nous avions donc 22 tongs différentes, et les gens pouvaient/feraient rouler leurs propres tongs. Nous avons souvent construit de grandes structures à partir de transistors. Je me souviens que quelqu’un m’a demandé quels éléments se trouvaient dans notre bibliothèque, et j’ai répondu, les deux ! N-périphériques et P-périphériques, n’est-ce pas ? Ensuite, je suis allé chez AMD et K7 a été construit avec une bibliothèque de cellules.

Maintenant, les ingénieurs là-bas étaient vraiment doués pour établir les bibliothèques de cellules de manière à obtenir de bonnes performances. Ils n’avaient que deux tongs – une grande et une petite, et ils avaient une bibliothèque de cellules propres. Ils avaient une couche d’abstraction entre les transistors et les concepteurs. C’était avant l’ère des très bons outils de localisation et d’itinéraire, et c’était bien mieux.

Ensuite, sur l’interface que nous avons construite sur EV6, qui s’est appelée plus tard le bus S2K, nous avons écouté AMD. À l’origine, nous avions beaucoup de transactions compliquées pour fouiner, charger, stocker, lire, écrire et toutes sortes de choses. Un de mes amis, qui était au Digital Research Lab, je lui ai expliqué un jour comment cela fonctionnait – il m’a écouté et il a juste secoué la tête. He said ‘Jim, that’s not the way you do this’. He explained how virtual channels worked, and how you could have separate abstract channels of information. You get that right before you start encoding commands. As a result of that educational seminar/ass-kicking, was HyperTransport. It has a lot of the S2K protocol, but it was built in a much more abstract way. So I would say that my move from AMD, from Digital to AMD, was where we had the ideas of how to build high-performance computing, but the methodologies were integrated, so from transistor up to architecture it couldn’t be the same person.

At AMD, there’s Mike Clark, the architects, the microarchitects, and the RTL people who write Verilog, but they literally translated to the gate libraries, to the gate people, and it was much more of a layered approach. K7 was quite a fast processor, and our first swing at K8, we kind of went backwards. My favorite circuit partner at the time – he and I could talk about big designs, and we saw this as transistors, but that’s a complicated way to build computers. Since then, I’ve been more convinced that the abstraction layers were right. You don’t overstep human capability – that’s the biggest problem. If you want to build something bigger and more complicated, you better solve the abstraction layers, because people aren’t getting smarter. If you put more than 100 people on it, it’ll slow down, not speed up, and so you have to solve that problem.

IC: If you have more than 100 people, you need to split into two abstraction layers?

JK: Exactement. There are reasons for that, like human beings are really good at tracking. Your inner circle of friends is like 10-20 people, it’s like a close family, and then there is this kind of 50 to 100 depending on how it’s organized, that you can keep track of. But above that, you read everybody outside your group of 100 people as semi-strangers. So you have to have some different contracts about how you do it. Like when we built Zen, we had 200 people, and half the team at the front end and half the team at the back end. The interface between them was defined, and they didn’t really have to talk to each other about the details behind the contract. That was important. Now they got along pretty good and they worked together, but they didn’t constantly have to go back and forth across that boundary.

Thoughts on Moore’s Law

IC: You’ve said on stage, and in interviews in the past, that you’re not worried about Moore’s Law. You’re not worried on the process node side, about the evolution of semiconductors, and it will eventually get worked out by someone, somewhere. Would you say your attitude towards Moore’s law is apathetic?

JK: I’m super proactive. That’s not apathetic at all. Like, I know a lot of details about it. People conflate a few things, like when Intel’s 10-nanometer slipped. People said that Moore’s law is dead, but TSMC’s roadmap didn’t slip at all.

Some of that is because TSMC’s roadmap aligned to the EUV machine availability. So when they went from 16nm, to 10nm, to 7nm, they did something that TSMC has been really good at – doing these half steps. So they did 7nm without EUV, and that 7nm with EUV, then 5nm without, and 5+nm with EUV, and they tweaked stuff. Then with the EUV machines, for a while people weren’t sure if they’re going to work. But now ASML’s market cap is twice that of Intel’s (it’s actually about even now, on 21st June).

Then there’s a funny thing – I realized that at the locus of innovation, we tend to think of TSMC, Samsung, and Intel as the process leaders. But a lot of the leadership is actually in the equipment manufacturers like ASML, and in materials. If you look at who is building the innovative stuff, and the EUV worldwide sales, the number is something like TSMC is going to buy like 150 EUV machines by 2023 or something like that. The numbers are phenomenal because even a few years ago not many people were even sure that EUV was going to work. But now there’s X-ray lithography coming up, and again, you can say it’s impossible, but bloody everything has been impossible! The fine print, this what Richard Feynman said – he’s kind of smart. He said ‘there’s lots of room at the bottom’, and I personally can count, and if you look at how many atoms are across transistors, there’s a lot. If you look at how many transistors you actually need to make a junction, without too many quantum effects, there are only 10. So there is room there.

There’s also this funny thing – there’s a belief system when everybody believes technology is moving at this pace and the whole world is oriented towards it. But technology isn’t one thing. There are people who figure out how to build transistors, like what the process designers do at like Intel, or TSMC, or Samsung. They use equipment which can do features, but then the features actually interact, and then there’s a really interesting trade-off between, like, how should this be deposited and etched, how tall should it be, how wide, in what space. They are the craftsman using the tools, so the tools have to be super sharp, and the craftsmen have to be super knowledgeable. That’s a complicated play. There’s lots of interaction and at some level, because the machines themselves are complicated, you have this little complexity combination where the machine manufacturers are doing different pieces, but they don’t always coordinate perfectly, or they coordinate through the machine integration guys who designed the process, and that’s complicated. It can slow things down. But it’s not due to physics fundamentals – we’re making good progress on physics fundamentals.

IC: In your scaled ML talk, the one that you have in Comic Sans, you had the printed X slide. About it you say that as time goes on the way you print the X, because of the laws of physics, there are still several more steps to go in EUV. Also High NA EUV is coming in a couple of years, but now you mention X-rays. What’s the timeline for that? It’s not even on my radar yet.

JK: Typically when a technology comes along, they use it for one thing. First, when EUV was first used in DRAMs, it was literally for one step, maybe two. So I’m trying to remember – perhaps 2023/2024? It’s not that far away. That means they’re already up and running, and people are playing with it. Then the wild thing is, when they went from optical light to EUV, it was about a 10x reduction in wavelength? So they while they had crazy multi-patterning and interference kind of stuff that you saw those pictures of DUV, when it came to EUV, they could just print direct. But actually [as you go smaller] they can use the same tricks on EUV. So EUV is going to multi-patterning, I think in 3nm. Then there are so many tricks you can do with that. So yeah, the physics is really interesting. Then along with the physics, the optics stuff, and then there’s the purity of the materials, which is super important, then temperature control, so things don’t move around too much. Everywhere you look there are interesting physics problems, and so there’s lots to do. There are hundreds of thousands of people working on it, and there’s more than enough innovation bandwidth.

Engineering the Right Team

IC: So pivoting to a popular question we’ve had. One of the things that we’ve noted you doing, as you go from company to company, is the topic of building a team. As teams are built by others, we’ve seen some people take engineers from a team they’ve built at previous companies to the next company. Have you ever got any insights into how you build your teams? Have there been any different approaches at the companies that you work for on this?

JK: The first thing you have to realize is if you are building the team, or finding one. So there’s a great museum in Venice, the David Museum, and the front of the museum, there’s these huge blocks of marble. 20 by 20 by 20. How they move them, I don’t know. The block of marble sitting there, and Michelangelo could see this beautiful sculpture in it. It was already there, right? The problem was removing the excess marble.

So if you go into companies with 1000 employees, I guarantee you, there’s a good team there. You don’t have to hire anybody. When I was at AMD, I hardly hired anybody. We moved people around, we re-deployed people [elsewhere], but there were plenty of great people there. When I went to Tesla, we had to build the team from scratch, because there was nobody at Tesla that was building chips. I hired people that I knew, but then we hired a bunch of people that I didn’t know at some point, and this is one of those interesting things.

I’ve seen leaders go from one company to another and they bring their 20 people, and then they start trying to reproduce what they had before. That’s a bad idea, because although 20 people is enough to reproduce [what you had], it alienates what you want [in that new team]. When you build a new team, ideally, you get people you really like, either you just met them, or you work with them, but you want some differences in approach and thinking because everybody gets into a local minimum. So the new team has this opportunity to make something new together. Some of that is because if you had ten really great teams all working really well, and then you made a new team with one person from each of those teams: that may well be better, because they will re-select which the best ideas were.

But every team has pluses and minuses, and so you have to think about if you’re building the team or finding a team, and then what’s the dynamic you’re trying to create that gives it space for people to have new ideas. Or, if some people get stuck on one idea, they then work with new people and they’ll start doing this incredible thing, and you think they’re great, even though they used to be not so great, so what happened? Well, they were carrying some idea around that wasn’t great, and then they met somebody who challenged them or the environment forced them, and all of a sudden they’re doing a great job. I’ve seen that happen so many times.

Ken Olson at Digital (DEC) said there are no bad employees, there are just bad employee job matches. When I was younger, I thought that was stupid. But as I’ve worked with more people, I’ve seen that happen so many bloody times that I’ve even fired people who went on to be really successful. All because they weren’t doing a good job and they were stuck, emotionally, and they felt committed to something that wasn’t working. The act of moving them to a different place freed them up. [Needless to say] I don’t get a thank you. (laughs)

IC: So how much of that also comes down to company culture? I mean, when you’re looking for the person for the right position, or whether you’re hiring in for the new position, do you try and get something that goes against the company grain? Or goes with the company grain? Do you have any tactics here or are you just looking for someone with spark?

JK: If you’re trying to do something really innovative, it’s probably mostly going against [the grain]. If you have a project that’s going really well, bringing in instigators is going to slow everybody down, because you’re already doing well. You have to read the group in the environment. Then there are some people who are really good, and they’re really flexible to go on this project, they fit in and just push, but on the next project, you can see they have been building their network and the team, and on the next project they’re ready to do a pivot and everybody’s willing to work. Trust is a funny thing, right? You know, if somebody walks up and says to jump off this bridge but you’ll be fine, you’re likely to call bullshit – but if you had already been through a whole bunch of stuff with them, and they said ‘look, trust me, then jump – you’re going to be fine; it’s going to suck, but it’s going to be fine’, you’ll do it, right? Teams that trust each other are way more effective than ones that have to do everything with contracts, negotiation, and politics.

So that’s probably one thing – if you’re building or finding a team, and you start seeing people doing politics, which means manipulating the environment for their own benefit, they have got to go. Unless you’re the boss! Then you have got to see if they deliver. Some people are very political, but they really think their political strength comes from delivering. But people randomly in an organization that are political just cause lots of stress.

IC: Do you recommend that early or mid-career engineers should bounce around regularly from project to project, just so they don’t get stuck in a hole? It sounds like that’s a common thing.

JK: You learn fastest when you’re doing something new, and working for somebody that knows way more than you. So if you’re relatively early in your career and you’re not learning a lot or, you know, the people that you’re working for aren’t inspiring you, then yeah you should probably change. There are some careers where I’ve seen people bounce around three times because they’re getting experience and they end up being good at nothing. They would have been better staying where they were, and really getting deep at something. So you know, creative tension – there’s creative tension between those two ideas.

Idols, Maturity, and the Human Experience

IC: So that kind of leads into a good question, actually, because I wanted to ask about you and your mentors going through your early career. Who did you look up to for leadership or knowledge or skills? Is there anyone you idolize?

JK: Oh, yeah, lots of people. Well it started out with my parents. Like, I was really lucky. My father was an engineer, and my mom was super smart, kind of more verbally and linguistically. The weird thing was that when I grew up, I was sort of more like her, you know, thinking-wise, but I was dyslexic – I couldn’t read. My father was an engineer, so I grew up thinking I was like him, but I was actually intellectually more like my mother. They were both smart people. Now they came out of the 50s, and my mom raised family, so she didn’t start her career as a therapist until later in life. But they were pretty interesting people.

Then, when I first started at Digital, I worked for a guy named Bob Stewart, who was a great computer architect. He did the PDP-11/44, PDP-11/70, VAX 780, VAX 8800, and the CI interconnect. Somebody said that every project that he had ever worked on earned a billion dollars, back when that was a huge number. So I worked for him and he was great, but there were half a dozen other really great computer architects there. I was at DEC and DEC had DEC Research Labs, and I got to meet guys like Butler Lampson and Chuck Thacker. Nancy Kronenberg was one of my mentors when I was a little kid, and she’s one of the chief people on the VMS operating system. So that was kind of lucky.

So did I idolize them? Well, they were both daunting and not, because I was a little bit of a, you know. I didn’t quite realize who they were at the time. I was more a little oblivious to what was going on. Like, my first week at Digital, we got trained on this drawing system called Valid, which is kind of before the Matrox graphics era. So this guy walked in, and he was asking us questions and telling us about hierarchical design. I explained to him why that was partly good idea and partly stupid, and so we had an hour debate about it, then he walked off. Somebody said that was Gordon Bell. I asked ‘Who’s that? He’s the CTO of Digital? Ah bon? Well he’s wrong about half the stuff he just said – I hope I straightened him out.’ But you know, I think that’s just some serotonin activation or something. That’s more of a mental problem with me than a feature, I think!

IC: So would you say you’ve matured?

JK: Not a bit!

IC: Is that where the fun is?

JK: I mean, there’s a whole bunch of stuff. When I was young, it was like I get nervous when I give a talk, and I realized I had to understand the people around me better. But you know, I wasn’t always quite convinced. [At the time] I rather they just do the right thing or something. So there’s a bunch of stuff that has changed. Now I’m really interested in what people think and why they think it, and I have a lot of experience with that. Every once a while you can really help debug somebody, or get the group to work better. I don’t mind giving public talks at all. I just decided that the energy I got from being nervous was fun. I still remember walking out on stage at Intel at some conference, like 2000 people. I was like I should have been really nervous, but instead I was just really excited about it. So some of that kind of stuff changed, but that’s partly conscious, and partly just practice. I still get excited around like computer design and stuff. I had a friend of mine’s wife ask what they put in the water, because all we ever do is talk about computers. It’s really fun, you know. Changing the world. It’s great.

IC: It sounds like you have spent a lot more time, in a way, studying the human experience. If you understand how people think, how people operate, that’s different compared to mouthing at Gordon Bell for an hour.

JK: It’s funny. People occasionally ask me like, or I tell people, that I read books. You learn a lot from books. Books are fun by the way – if you know how a book works. Somebody who lives 20 years, then passionately writes their best ideas (and there are lots of those books), and then you go on Amazon and find the best ones. It’s hilarious, right? Like a really condensed experience in a book, written, and you can select the better books, like who knew, right? But I’ve been reading a lot of books for a long time.

It’s hard to say, ‘read these four books, it’ll change your life’. Sometimes a [single] book will change your life. But reading 1000 books will [certainly] change your life that’s for damn sure. There’s so much human experience that’s useful. Who knew Shakespeare would be really useful for engineering management, right? But like, what are all those stories – power politics, devious guys, the minions doing all the work and the occasional hero saving the day? How does that all play out? You’re always placed 500 years ago, but it applies to corporate America every single day of the week. So if you don’t know Shakespeare or Machiavelli, you don’t know nothing.

IC: I think I remember you saying that before you went into your big first management role, you read 20 books about management techniques, and how you ended up realizing that you’d read 19 more than anybody else.

JK: Yeah, pretty much. I actually contacted Venkat (Venkatesh) Rao, who’s famous for the Ribbonfarm blog and a few other things to figure [stuff] out. I really liked his thinking about organization from his blog, and he had a little thing at the bottom where it says to click here to buy him a cup of coffee, or get a consulting or a consult, so I sent him an email. So we started yakking, and we spent a lot of time talking before I joined AMD. He said I should read these books and I did. I thought everybody who’s in a big management job did that, but nobody does. You know it was hilarious – like 19 is generous. I read 20 more management books than most managers have ever read. Or they read some superficial thing like Good to Great, which has some nice stories in it, but it’s not that deep a book management-wise. You’d be better off reading Carl Jung than Good to Great if you want to understand management.

IC: Do you find yourself reading more fiction or nonfiction?

JK: As a kid, I read all the nonfiction books. Then my parents had a book club. I didn’t really learn to read until I was in fourth grade, but somewhere around seventh or eighth grade, I had read all the books in the house. They had John Updike, and John Barth was one of my favorite authors when I was a kid. So there were a whole bunch of stories. Then Doris Lessing. Doris Lessing wrote a series of science fiction books that were also psychological inquiries, and I read that, and I just, I couldn’t believe it. Every once a while stuff like that kind of blows your mind. And it happened, obviously, at the right time. But now I read all kinds of stuff. I like history and anthropology and psychology, and mysticism, and there are so many different things. I’ve probably read fewer fiction books in the last 10 years. But when I was younger, I read probably mostly fiction.

IC: I did get a few particular comments from the audience in advance of this interview about comments you made when you were being interviewed by Lex Fridman. You said that you read two books a week. You’re also very adept at quoting from key engineers and futurists. I’m sure if you started tweeting what book you’re reading when you start a new one, you’ll get a very large following. A sort of a passive Jim Keller book club!

JK: I would say I read two books a week. Now, I read a lot, but it tends to be blogs and all kinds of crazy stuff. I don’t know – like doing Lex [Lex’s Podcast] is super fun, but I don’t know that I have the attention span for social media to do anything like that. I’d forget about it for weeks at a time.

IC: How do you make sure that you’re absorbing what you’re reading, rather than having your brain diverting about some other problem that you might be worrying about?

JK: I don’t really care about that. I know people that read books, and they are really worried if they’re going to remember them. They spend all this time highlighting and analyzing. I read for interest, right? What I really remember is that people have to write 250-page books, because that’s like a publisher rule. It doesn’t matter if you have 50 pages of ideas, or 500, but you can tell pretty fast. I’ve read some really good books that are only 50 pages, because that’s all they had. You can also read 50 pages, and you think, ‘wow, it’s really great!’, but then the next 50 pages is the same shit. Then you realize it’s just been fleshed out – at that point I wish they just published a shorter book.

But that is what it is. But if the ideas are interesting, that’s good. I meditate regularly, and then I think about what I’m thinking about, which is sometimes related to what I’m reading. Then if it’s interesting, it gets incorporated. But your brain is this kind of weird thing – you don’t actually have access to all the ideas and thoughts and things you’ve read, but your personality seems to be well informed by it, and I trust that process. So I don’t worry if I can’t remember somebody’s name [in a book], because their idea may have changed, and who I was and I don’t remember what book it came from. I don’t care about that stuff.

IC: As long as you have passively absorb it at some level?

JK: Oui. Well, there’s a combination of passive and active. I told Lex that a lot of times when I’m working on problems, I prep my dreams for it. It’s really useful. That’s a fairly straightforward thing to do. Before you fall asleep, you call up your mind, on what you’re really working on and thinking about. Then my personal experiences sometimes, I really do work on that, and sometimes that’s just a problem in the way of what I actually need to think about, and I’ll dream about something else. I’ll wake up well, and one way or the other it was really interesting.

Nature vs Nurture

IC: So on the topic of time, here we are discussing personal health, study, meditation, and family, but also how you execute professionally. Are you one of these people who only needs four hours of sleep a night?

JK: Nah, I need like seven. Well, I added it up one day that my ideal day would have like 34 hours in it. Because I like to work out, spend time with my kids, I like to sleep and eat, and you know I like to work. I like to read too, so I don’t know. Work is the weird one, because that can fill in lots more time than you want to spend on it. But I also really like working, so it’s a challenge to kind of stamp it down.

IC: When there’s a deadline, what gets pushed out the way first? You’ve worked at companies where getting the product out, and time to market, has been a key element of what you’re doing.

JK: For about the last six years, the key thing for me is that once I have too much to do, I find somebody that wants to do it more than me. I mostly work on unsolved problems. You know I was the laziest person at Tesla. Tesla had a culture of working 12 hours a day to make it look like you’re working, and I worked, you know, 9 to 7, which was a lot of hours. But I also went running at lunch, and a workout. They had a weightlifting room. Deer Creek was right next to the big machine shop, so I would go down there for an hour to work out and to eat.

At AMD and Intel, they’re big, big organizations, and I had a really good staff. So I’d find myself spending way too much time on presentations, or working on some particular thing. Then I’d find some people who wanted to work on it, so I’d give it to them and, you know, go on vacation.

IC: Or speaking to press people like me, and taking up your time! What is your feeling about doing these sorts of press interviews, and you know, more the sort of marketing and corporate and discussion? These aren’t really necessarily related to actually pushing the envelope, it’s just talk.

JK: It’s not just talk. I’ve worked on some really interesting stuff, so I like to talk about it. When I was in Intel, I realized it was one of the ways to influence the Intel engineers. Like everybody thought Moore’s Law was dead, and I thought ‘holy crap, it’s the Moore’s Law company!’. It was really a drag if [as an engineer] your main thing was that [Moore’s Law is dead], because I thought it wasn’t. So I talked to various people, then they amplified what I said and debated it, and it went back inside. You know, I actually reached more people inside of Intel by doing external talks. So that was useful to me, because I had a mission to build faster computers. That’s what I like to do. So when I talked to people, they always bring all kinds of stuff up, like how the work we do impacts people. Guys like you, and think really hard about it, and you talk to each other. Then I talk to you, and you ask all these questions, and it’s kind of stimulating. It’s fun. If you can explain something really clearly, you probably know it. There are a lot of times you think you know it, and then you go to explain it, but you’re stumbling all around. I did some public talks where they were hard to do, like the talk actually seems simple, but to get to the simple part you have to get your ideas out and reorganize them and then throw out the BS. It’s a useful thing to talk.

IC: Is it Feynman or Sagan that said ‘if you can’t explain the concept to at first-year college level, then you don’t really understand it’?

JK: Yeah, that sounds probably like Feynman. He did that really well, like with his lecture series on physics. It was quite interesting. Feynman’s problem was that he had such a brilliant intuition for the math, that his idea of simple was often not that simple! Like he just saw it, and you could tell. Like he could calculate some orbital geometry in five ‘simple’ steps, and he was so excited about how simple it was. But I think he was the only person in the room that thought it was simple.

IC: I presume he had the ability to visualize things in his head and manipulate them. I remember you saying at one point, that when it comes down to circuit-level design, that’s the sort of thing you can do.

JK: Oui. If I had one superpower, I feel like I can visualize how a computer actually runs. So when I do performance modeling and stuff like that, I can see the whole thing in my head and I’m just writing the code down. It is a really useful skill, but you know I probably partly was born with it. Partly developed and partly something that came out of my late adult diagnosis of dyslexia.

IC: I was going to ask how much of that is nature versus nurture?

JK: It’s hard. There’s this funny thing that with super-smart people, often things are so easy for them, that they can go a really long way without having to work hard. So I’m not that smart. So persistence, and what they call grit, is super useful, especially in computer design. When lots of stuff takes a lot of tweaking, you have to believe you can get there. But a lot of times, there’s a whole bunch of subtle iterations to do, and practice with that actually really works. So yeah, everybody’s a combination. But if you don’t have any talent, it’s pretty hard to get anywhere, but sometimes really talented people don’t learn how to work, so they get stuck with just doing the things that are obvious, not the things that take that persistence through the mess.

IC: Also identifying that talent is critical as well, especially if you don’t know you have it?

JK: Yeah, but on the flip side, you may have enough talent, but you just haven’t worked hard, and some people give up too soon. You’ve got to do something, something you’re really interested in. When people are struggling, like if they want to be an engineer or in marketing or this or that, [ask yourself] what do you like? This is especially true for people who want to be engineers, but their parents or somebody wants me to be a manager. You’re going to have a tough life, because you’re not chasing your dream, you’re chasing somebody else’s. The odds that you will be excited about somebody else’s dream are low. So if you’re not excited, you’re not going to put the energy in. or learn. That’s a tough loop in the end.

Pushing Everyone To Be The Best

IC: To what extent do you spend your time mentoring others, either inside organizations, or externally with previous coworkers or students? Do you ever envision yourself doing something on a more serious basis, like the ‘Jim Keller School of Semiconductor Design’?

JK: Nan. So it’s funny because I’m mostly mission driven. Like, ‘we’re going to build Zen!’, or ‘we’re going to build Autopilot!’, and then there are people that work for me. Then as soon as they start working for me, I start figuring out who they are, and then some of them are fine, and some of them have big problems that need to be, let’s say, dealt with one way or the other. So then I’ll tell them what I want, sometimes I’ll give them some pointed advice. Sometimes I’ll do stuff, and you can tell some people are really good at learning by following. Then people later on are telling me that I was mentoring them, but I’m thinking that I thought I was kicking your ass? It’s a funny experience.

There are quite a few people that said I impacted their life in some way, but for some of those, I went after them about their health or diet, because I thought they looked not energized by life. You can make really big improvements there. It’s worth doing by the way. It was either that, or they were doing the wrong thing, and they were just not excited about it. [At that point] you can tell they should be doing something else. So they either have to figure out why they are not excited or get excited, and then a lot of people start fussing with themselves or with other people about their status or something. The best way to have status is to do something great, and then everybody thinks you’re great. Having status by trying to claw your way up is terrible, because everybody thinks you’re a climber, and sometimes they don’t have the competence or skill to make the right choice there. It mostly comes out of being mission driven.

I do care about people, at least I try to, and then I see the results. I mean, it’s really gratifying to get a big complicated project done. You know where it was when you started, and then you know where it was when it was done, and then people when they work on successful things associate the leadership and the team they’re working with as being part of that. So that’s really great, but it doesn’t always happen. I have a hard time doing quote ‘mentoring people’, because what’s the mission? Like, somebody comes to you and says ‘I want to get better’. Well, better at what? Then if that’s like wanting to be better at you playing violin, well I’m not good at that.

Whereas when I say ‘hey, we’re going to build the world’s fastest autopilot chip’, then everybody working on it needs to get better at doing that. It turns out three-quarters of their problems are actually personal, not technical. So to get the autopilot chip, you have to go debug all that stuff, and there are all kinds of personal problems – health problems, parental childhood problems, partner problems, workplace problems, and career stall problems. The list is so bloody long, and we take them all seriously.  As it turns out, everybody thinks their own problems are really important, right? You may not think their problems are important, but I tell you, they do, and they have a list. Ask anybody – what are your top five problems. They can probably tell you.  Or even weirder, they give you the wrong five, because that happens too.

IC: But did they give you the five they think you want to hear rather than the actual five?

JK: Oui. People also have no-fly zones, so their biggest problem may be something they don’t want to talk about. But if you help them solve that, then the project will go better, and then at some point, they’ll appreciate you. Then they’ll say you’re a mentor, and you’re thinking, kinda, I don’t know.

IC: So you mentioned about your project succeeding, and you know, people being proud of their products. Do you have a ‘proudest moment’ of your career, project, or accolade? Any specific moments in time?

JK: I have, and there’s a whole bunch of them. I worked with Becky Loop at Intel, and we were debugging some quality things. It turns out there was a whole bunch of layers of stuff. We were going back and forth on how to analyze it, how to present it, and I was frustrated with the data and what was going on. One day she came up with this picture, and it was just perfect. I was really excited for her because she’d gotten to the bottom of it. We actually saw a line of sight to fix and stuff. But that kind of stuff happens a lot.

IC: An epiphany?

JK: Oui. Well sometimes working with a group of people, going into it is like a mess, but then it gets better. The Tesla Autopilot thing was wild, and Zen’s success has been fantastic. Everybody thought that the AMD team couldn’t shoot straight, and I was very intrigued with the possibility of building a really great computer with the team that everybody thought was out of it. Like nobody thought AMD had a great CPU design team. But you know, the people who built Zen, they had 25 to 30 years work history at AMD. That was insane.

IC: I mean Mike Clark and Leslie Barnes, they’ve been there for 25 to 30 years.

JK: Steve Hale, Suzanne Plummer.

IC: The Lifers?

JK: Yeah, they’re kind of lifers, but they had done many great projects there. They all had good track records. But what did we do different? We set some really clear goals, and then we reorganized to hit the goals. We did some really thorough talent analysis of where we were, and there were a couple people that had really checked out because they were frustrated that they could never do the right thing. You know I listened to them – whoa Jesus, I love to listen to people.

We had this really fun meeting, and it was one of the best experiences of my life. Suzanne called me up and said that people on the Zen team don’t believe they can do it. I said, ‘great – I’ll drive to the airport, I’m in California, and I’ll see you there tomorrow morning, eight o’clock. Make sure you have a big room with lots of whiteboards’. It was like 30 angry people ready to tell me all the reasons why it wouldn’t work. So I just wrote all of the reasons down on a whiteboard, and we spent two days solving them. It was wild because it started with me defending against the gang, but people started to jump in. I was like, whenever possible, when somebody would say ‘I know how we fix that’, I would give them the pen and they would get up on the board and explain it. It worked out really good. The thing was, the honesty of what they did, was great. Here are all the problems that we don’t know how to solve, and so we’re putting them on the table. They didn’t give you 2 reasons but hold back 10 and say ‘you solve those two’. There was none of that kind of bullshit kind of stuff. They were serious people that had real problems, and they’d been through projects where people said they could solve these problems, and they couldn’t. So they were probably calling me out, but like I’m just not a bullshitter. I’m not a bullshitter, but I told them how some we can do, some I don’t know. But I remember, Mike Clark was there and he said we could solve all these problems. You know I walked out when our thing is pretty good, and people walked out of the room feeling okay, but two days later problems all pop back up. So you know, like how often do you have to go convince somebody? But that’s why they got through it. It wasn’t just me hectoring them from the sidelines, there were lots of people and lots of parts of the team that really said, they’re willing to really put some energy into this, which is great.

IC: At some point I’d love to interview some of them, but AMD keeps them under lock and key from the likes of us.

JK: That’s probably smart!

IC: Is there somebody in your career that you consider like a silent hero, that hasn’t got enough credit for the work that they’ve done?

JK: A person?

IC: Yeah.

JK: Most engineers. There are so many of them, it’s unbelievable. You know engineers, they don’t really get it. Compared to lawyers that are making 800 bucks an hour in Silicon Valley, engineers so often want to be left alone and do their work and crank out stuff. There are so many of those people that are just bloody great. I’ve talked to people who say stuff like ‘this is my eighth-generation memory controller’, and they’re just proud as hell because it works and there are no bugs in it, and the RTL is clean, and the commits are perfect. Engineers like that are all over the place, I really like that scenario.

IC: But they don’t self-promote, or the company doesn’t?

JK: Engineers are more introverted, and conscientious. The introverted tend not to be the people who self-promote.

IC: But aren’t you a little like me, you’ve learned how to be more extroverted as you’ve grown?

JK: Well, I decided I wanted to build bigger projects, and to do that, you have to pretend to be an extrovert, and you have to promote yourself, because there’s a whole bunch of people who are decision-makers who don’t do the work to find out who the best architect is. They’re going to pick who the person that everybody says is the best architect, or the loudest, or the capable. So at some level, if you want to succeed above ‘principal engineer’, you have to understand how to work in the environment of people who play it. Some people are super good at that naturally, so they get pretty high in organizations without much talent, sometimes without much hard work. Then the group of people, Director and above, that you have to deal with have a way different skill set than most of the engineers. So if you want to be part of that gang, even if you’re an engineer, you have to learn how that rolls. It’s not that complicated. Read Shakespeare, Young, a couple of books, Machiavelli, you know, you can learn a lot from that.

Security, Ethics, and Group Belief

IC: One of the future aspects of computing is security, and we’ve had a wake of side-channel vulnerabilities. This is a potential can of worms, attacking the tricks that we use to make fast computers. To what extent do you approach those security aspects when you’re designing silicon these days? Are you proactive? Do you find yourself specifically proactive or reactive?

JK: So the market is sort of dictating needs. The funny thing about security first of all is you know it only has to be secure if somebody cares about it. For years, security in an operating system was virtual memory – for a particular process, its virtual memory couldn’t look into another process’s virtual memory. But the code underneath it in the operating system was so complicated that you could trick the operating system into doing something. So basically you started from security by correct software, but once you couldn’t prove the software correct, they started putting additional hardware barriers in there. Now we’re building computers where the operating system can’t see the data the user has, and vice versa. So we’re trying to put these extra boundaries in, but every time you do, you’ve made it a little more complicated.

At some level security worldwide is mostly for security by obscurity, right? Nobody cares about you, in particular, because you’re just one out of 7 billion people. Like somebody could crack your iPhone, but they mostly don’t care about it. There’s a funny arms race going on about this, but it’s definitely kind of incremental. They discovered side-channel attacks, and they weren’t that hard to fix. But there’ll be some other things, and, you know, I’m not a security expert. The overhead of building security features is mostly low. The hard part is thinking that out and deciding what to do. Every once in a while somebody will say something like ‘this is secure, because the software does x’, and I always think, ‘yeah, just wait 10 minutes, and the software will get more complicated, which will introduce a gap in it’. So there needs to be real hardware boundaries in there.

There are lots of computers that are secure, because they don’t talk to anything. Like there are boatloads of places where the computers are usually behind a hard firewall, or literally disconnected from anything. So only physical attacks work, and then they have physical guards. So now, it’s going to be interesting, but it’s not super high in my thinking, I mostly follow what’s going on, and then we’ll just do the right thing. But I have no faith in security by software, let’s say, because that always kind of grows to the point where it kind of violates its own premises. It’s happened many times.

IC: So you’ve worked at Tesla, and when you designed a product specifically for Tesla. You have also worked at companies that sell products for a wide array of uses. Beyond that sort of customer workload analysis, do you consider the myriad of possibilities of what the product you are building will be used for?  Do you consider the ethics behind what it might be used for? Or are you just there to solve the problem of building the chip?

JK: The funny thing about general-purpose computing is it can really be used for anything. So the ethics is more if the net good is better than the net bad. For the most part I think the net good is better than the possible downsides. But people do have serious concerns about this. There’s all a big movement around ethics in AI, and to be honest, the AI capabilities have so far outstripped the thinking around the aspects of that. I don’t know what to think about it.

What the current systems can do is already has stripped us bare, it knows what we think, and what we want, and what we’re doing. Then the question is how many people have that one reason to build a lower-cost AI and programmable AI. We’re talking to quite a large number of AI software startups, that want AI hardware and computing in more people’s hands, because then you have a little mutual standoff situation, as opposed to one winner take all. But the modern tech world has been sort of a winner take all. There are literally several dozen very large companies that have a competitive relationship with each other. So, that’s kind of complicated. I think about it some, but I don’t have anything you know, really good to say, besides, you know the net benefit so far has been a positive. Having technology in more people’s hands rather than a concentrated few seems better, but we’ll see how it plays out.

IC: You’ve worked for a number of big personalities. You know, Elon Musk, Steve Jobs to name two. It appears you still have a strong contact with Elon. Your presence at the Neuralink demo last year with Lex, was not unnoticed. What’s your relationship with Elon now, and was he the one to invite you?

JK: I was invited by somebody in the Neuralink team. I mean Elon, I would say I don’t have a lot of contact with him at the moment. I like the development team there, so I went over to talk to those guys. It was fun.

IC: So you don’t stay in touch with Elon?

JK: No, I haven’t talked to him recently, no.

IC: It was very much a professional, not a personal relationship when you worked for Tesla then?

JK: Oui.

IC: Because I was going ask about the fact that Elon is a big believer in Cryptocurrency. He regularly discusses it as it pertains to demands of computing and resources, for something that has no intrinsic value. Do you have any opinions as it comes to Cryptocurrency?

JK: Not much. Not really. I mean humans are really weird where they can put value in something like gold, or money, or cryptocurrency, and you know that’s a shared belief contract. What it’s based on, the best I can tell, hasn’t mattered much. I mean the thing the crypto guys like is that it appears to be out of the hands of some central government. Whether that’s true or not, I couldn’t say. Jow that’s going to impact stuff, I have no idea. But as a human, you know, group beliefs are really interesting, because when you’re building things, if you don’t have a group belief that makes sense then you’re not going to get anything done. Group beliefs are super powerful, and they move currencies, politics, companies, technologies, philosophies, self-fulfillment. You name it. So that’s a super interesting topic, but as for the details of Cryptocurrency, I don’t care much about it, except as a manifestation of some kind of psychological phenomena about group beliefs, which is actually interesting. But it seems to be more of a symptom, or a random example let’s say.

Chips Made by AI, and Beyond Silicon

IC: In terms of processor design, currently with EDA tools there is some amount of automation in there. Advances in AI and Machine Learning are being expanded into processor design – do you ever envision a time where an AI model can design a purposeful multi-million device or chip that will be unfathomable to human engineers? Would that occur in our lifetime, do you think?

JK: Yeah, and it’s coming pretty fast. So already the complexity of a high-end AMD, Intel, or Apple chip, is almost unfathomable that any one person. But if you actually go down into details today, you can mostly read the RTL or look at the cell libraries and say, ‘I know what they do’, right? But if you go look inside a neural network that’s been trained and say, why is this weight 0.015843? Nobody knows.

IC: Isn’t that more data than design, though?

JK: Well, somebody told me this. Scientists, traditionally, do a bunch of observations and they go, ‘hey, when I drop a rock, it accelerates like this’. They then calculate how fast it accelerated and then they curve fit, and they realize ‘holy crap, there’s this equation’. Physicists for years have come up with all these equations, and then when they got to relativity, they had to bend space and quantum mechanics, and they had to introduce probability. But still there are mostly understandable equations.

There’s a phenomenon now that a machine learning thing can learn, and predict. Physics is some equation, put inputs, equation outputs, or function output, right? But if there’s a black box there, where the AI networks as inputs, a black box of AI outputs, and you if you looked in the box, you can’t tell what it means. There’s no equation. So now you could say that the design of the neurons is obvious, you know – the little processors, little four teraflop computers, but the design of the weights is not obvious. That’s where the thing is. Now, let’s go use an AI computer to go build an AI calculator, what if you go look inside the AI calculator? You can’t tell why it’s getting a value, and you don’t understand the weight. You don’t understand the math or the circuits underneath them. That’s possible. So now you have two levels of things you don’t understand. But what result do you desire? You might still be designed in the human experience.

Computer designers used to design things with transistors, and now we design things with high-level languages. So those AI things will be building blocks in the future. But it’s pretty weird that there’s going to be parts of science where the function is not intelligible. There used to be physics by explanation, such as if I was Aristotle, 1500 years ago – he was wrong about a whole bunch of stuff. Then there was physics by equation, like Newton, Copernicus, and people like that. Stephen Wolfram says there’s now going to be physics by, by program. There are very few programs that you can write in one equation. Theorems are complicated, and he says, why isn’t physics like that? Well, protein folding in the computing world now we have programmed by AI, which has no intelligible equations, or statements, so why isn’t physics going to do the same thing?

IC: It’s going to be those abstraction layers, down to the transistor. Eventually, each of those layers will be replaced by AI, by some unintelligible black box.

JK: The thing that assembles the transistors will make things that we don’t even understand as devices. It’s like people have been staring at the brain for how many years, they still can’t tell you exactly why the brain does anything.

IC: It’s 20 Watts of fat and salt.

JK: Yeah and they see chemicals go back and forth, and electrical signals move around, and, you know, they’re finding more stuff, but, it’s fairly sophisticated.

IC: I wanted to ask you about going beyond silicon. We’ve been working on silicon now for 50+ years, and the silicon paradigm has been continually optimized. Do you ever think about what’s going to happen beyond silicon, if we ever reach a theoretical limit within our lifetime? Or will anything get there, because it won’t have 50 years of catch-up optimization?

JK: Oh oui. Computers started, you know, with Abacuses, right? Then mechanical relays. Then vacuum tubes, transistors, and integrated circuits. Now the way we build transistors, it’s like a 12th generation transistor. They’re amazing, and there’s more to do. The optical guys have been actually making some progress, because they can direct light through polysilicon, and do some really interesting switching things. But that’s sort of been 10 years away for 20 years. But they actually seem to be making progress.

It’s like the economics of biology. It’s 100 million times cheaper to make a complicated molecule than it is to make a transistor. The economics are amazing. Once you have something that can replicate proteins – I know a company that makes proteins for a living, and we did the math, and it was literally 100 million times less capital per molecule than we spent on transistors. So when you print transistors it’s something interesting because they’re organized and connected in very sophisticated ways and in arrays. But our bodies are self-organizing – they get the proteins exactly where they need to be. So there’s something amazing about that. There’s so much room, as Feynman said, at the bottom, of how chemicals are made and organized, and how they’re convinced to go a certain way.

I was talking to some guys who were looking at doing a quantum computing startup, and they were using lasers to quiet down atoms, and hold them in 3D grids. It was super cool. So I think we’ve barely scratched the surface on what’s possible. Physics is so complicated and apparently arbitrary that who the hell knows what we’re going to build out of it. So yeah, I think about it. It could be that we need an AI kind of computation in order to organize the atoms in ways that takes us to that next level. But the possibilities are so unbelievable, it’s literally crazy. Yeah I think about that.

Many thanks to Jim Keller and his team for their time.
Many thanks also to Gavin Bonshor for assistance in transcription,