Comme nous avons eu l’occasion de l’expliquer dans la première partie de notre dossier sur les CPU (note à moi-même : penser à le finir…), l’Intel 4004 est le premier microprocesseur à avoir été commercialisé.
Il intégrait pour rappel 2 300 transistors et la puce ne disposait que de 16 pins. Elle était capable d’exécuter 92 600 opérations par seconde avec une vitesse de fonctionnement de 740 kHz. De son côté, le noyau Linux est arrivé 20 ans plus tard, en 1991
Dmitry Grinberg a réussi à booter le noyau Linux de Debian dessus, en seulement 4,76 jours. Quelques précisions pour les sceptiques :
« Bien sûr, Linux ne peut pas et ne veut pas démarrer directement sur un 4004. Il n’y a pas de compilateur C ciblant le 4004, et il n’a pas été possible d’en créer un en raison des limitations de l’architecture. La quantité de ROM et de RAM adressable est également trop faible ».
Solution de contournement : l’émulation. « Mon objectif initial était de rester dans la limite 4 Ko de code, car c’est ce qu’un 4004 non modifié peut gérer. 4 Ko de code, ce n’est pas grand-chose pour émuler un système complet ». Après avoir analysé différentes options, il est partie sur le MIPS R3000.
Commentaires (19)
#1
Et faire émerger la conscience que les ressources d'aujourd'hui sont peut-être overkill et qu'on peut se contenter de moins?
En tout cas pour des usages de consultation/consommation courants.
#1.1
Pour revenir à cette démo:
6.3w pendant 4j pour juste booter c'est 0.7kWh; le pire rendement depuis que les calculateurs à ampoules ont étés arrêtés.
et on ne compte pas le PC a côté qui sert de terminal en port série.
Les heures de développement qu'il a fallu pour programmer ce noyau ça se compte en mois, une gabegie au regard de l'intérêt.
Enfin les ressources matérielles, ce n'est même pas du matériel au rebut qu'un nostalgique aurait voulu faire revivre, la carte a été construite sur mesure.
Donc moi ce que ça m'évoque plutôt, j'hésite entre de la folie ou de l'acharnement.
#1.11
Simplement regarder occasionnellement la TV avec l'antenne râteau, jouer avec des vraies cartes ou autres accessoires, aller voir le foot sur le terrain… Les activités personnelles très utiles des ordi ne nécessitent pas autant de puissance… Quant à l'Internet, c'est (aussi) une source de publicités comme si les pub ciblées (comme disait Coluche avec les dragées Fucka suivi d'un produit de nettoyage des toilettes) aujourd'hui on a tout sur les fuites urinaires au moment de l’apéro ou du repas ; comme c'est insuffisant il faut en récupérer d'autres avec la merveilleuse FIBRE.
ON a le jeune voisin qui rêve de s'offrir une GTX?090 avec 48 Go de DDR9 pour pouvoir jouer (s'isoler dans un monde où l'on zigouille du Russes et du Chinois) alors qu'il y a des clubs sportifs ou d'échecs/de dentelles en bas (payés par le contribuable).
Bon, cela dit, j'ai 2 ordi (portable et fixe), une connexion fibre à 5Go, mais un trucphone qui me sert uniquement pour téléphoner, un APN pour la Photo, une liseuse pour la lecture (pas pour me faire la lecture en audio), et pour contrôler la monnaie j'ai quelques vieux souvenirs arithmétiques. Je ne suis donc pas vraiment «IN» !
#1.2
Le problème c’est qu’on a des ordinateurs incroyablement puissants mais que les éditeurs de logiciels n’en ont plus rien à faire de la perf donc on se retrouve avec des softs ridiculement lourds qui ne font pas grand chose de plus qu’avant.
Bon après je modère quand même mon propos : j’ai jamais gardé mes machines aussi longtemps. Mon PC fixe sous Linux a 7 ou 8 ans et a part la carte graphique quasi tout est d’origine. Par contre le PC de mon ancien taf (de dev ) était une bête à 3000€ sous Windows et était insupportable à utiliser tant le moindre outil (Windows compris) croit que c’est open bar niveau ressources.
Mais en tant que dev, j’ai vu de mes yeux que la perf n’est ja-mais un sujet. Économiquement c’est logique : par rapport au salaire d’un dev qui va passer du temps à bien faire (et déjà ça implique plusieurs devs qui débattent pendant des heures de ce que ça veut dire ), l’infra coûte que dalle et la machine du client c’est encore pire, c’est gratuit.
Et c’est même pas que c’est volontaire ou cynique ou de la malveillance : non, c’est un peu comme le respect de la vie privée ou la sécurité : on dit qu’on s’en occupe, probablement que plein de gens aimeraient que ce soit vrai - ou même pensent que c’est vrai - mais en vrai on est déjà en retard pour livrer les fonctionnalités promises alors bien faire …
#1.3
Par contre de l'optimisation logicielle oui, par exemple éviter de trop empiler les couches de framework.
#1.4
Mais disons qu'un équivalent moderne d'un CPU des années 2000 qui permettait déjà de naviguer sur le web et faire du traitement de texte , serait encore suffisant si les programmes et OS étaient optimisés pour.
Les montres connectées peuvent déjà le faire, et leur CPU est rikiki.
#1.8
#1.9
Entre image FHD/4K, utilisation de nombreuses librairie JS et d'images dans le template augmente le temps de calcul et l'utilisation de la RAM.
En plus aujourd'hui, on doit isoler chaque site dans un processus différent pour des raisons de sécurité, ce que l'on ne faisait pas à l'époque.
#1.13
* Le web d'aujourd'hui est extrêmement consommateur et inefficace (JS, image, calcul CSS via le GPU au pixel - mais pour un résultat peu déterministe)
* L'énorme différence opérée il y a 20 ans niveau sécu, c'est que l'ordi est connecté à l'extérieur, et que la sécurité des données est au-delà du physique
Ceci dit, la séparation des processus est extrêmement dommageable aux perfs surtout sur un CPU mono thread. Au-delà de cela, le web n'utilise pas ou peu le parallélisme.
Mais le constat est réel: téléchargement 4Mo pour 8000 signes effectivement utiles, l'efficacité des ordis actuels est quasi nulle.
#1.7
Sans parler que les GPU on des performances de bureau convenable dès les fréquences les plus basses.
#1.5
#1.6
Bon, et l'IA, les petites puces TPU Coral savent se tenir en conso.
Si on veut être raisonnable
#1.10
A partir de cette puissance, on a d'un coté les développeurs qui doivent optimiser pour faire entrer leur appli dessus.
Et d'un autre coté, les fabricants de CPU qui doivent minimiser la consommation.
#1.12
#2
#2.1
#2.2
Beaucoup trop de visites mon fils.
#3
Aujourd’hui, nous abusons des possibilités des CPU/RAM pour toujours plus de décors. Pour ceux qui ont connu les RAM courtes comme des timbres postes pour y loger un roman, il fallait « misez petit, optimisez. » La solution est peut-être par là.
#3.1