• [^] # Re: Bof

    Posté par (site web personnel) . En réponse à la dépêche C11 n'est pas encore mort. Évalué à 2.

    Je suis de formation microelec, et j'ai bosser pour TI sur la lib de gestion de l'énergie bas niveau.

    Il utilisait 4 points de fonctionnement (0 25 50 100 % de fréquence avec la tension qui va avec), pour changer de tension, les latences étaient de l'ordre de la ms (commande d'un chip externe ). C'est pas grave pour diminuer la fréquence, mais il faut anticiper pour la remonter, sinon on plante le chip.

    Cette répartition "spread to deadline" est à la mode, mais je n'y crois pas trop. A l'utilisation, à part pour écouter un mp3, on a besoin du processeur à fond, pour que les applications soient fluides. Pour écouter un mp3, un arm7 suffit et consommera bien moins.

    De plus, on ne réduit que la consommation dynamique. Or avec les finesses de gravure actuelle, la conso statique est forte (fuite) et même dominante sur la dynamique. Cette conso est proportionnel à la tension et la surface du bloc. Dans le cas du passage à 50% de cpu, le cpu baisse sa conso mais celle du cache est toujours la même, ce qui fait que dans certain cas, le système consomme plus pour une tache à 50% qu'à 100% ! (c'est le cas des cpu intel, dont la baisse de puissance est juste une protection thermique)

    Je crois plus à un système stop-and-go et selon le temps prévu d'endormissement, on diminue (ou coupe) la tension ou pas. Dans certain système, il mette sur la ligne de l'alim une diode interne, pour tomber à une tension de rétention (genre 0.6V). Le système consomme beaucoup moins, juste parce que la tension appliqué à l'ensemble est plus faible. C'est bien plus rapide que de faire varier l'alim à découpage et cela fonctionne aussi pour les caches.

    Concernant la cohérence mémoire, je comprend le problème technique. Mais Cray a failli mourir en pensant que les codeurs arriveraient à s'en sortir. Il y a peut être un mode intermédiaire, par exemple avec une instruction barrière de cohérence mémoire explicite.

    je pense que le monsieur ne se rend pas du tout compte de ce qui va être proposé et des contraintes dont il va falloir jouer pour arriver à produire des puces réellement dotées de centaines ou milliers de coeurs. Il veut absolument de la cohérence de cache par exemple,

    Je pense au contraire qu'il est très conscient et dis que cela sera inutilisable, tellement cela sera compliqué.

    D'ailleurs, en regardant l'architecture des gpu nvidia, je me suis demandé pourquoi il n'existait pas de cpu équivalent. En gros, 16 MAC, un load/store avec un adressage complexe(2D ou 3D, +extraction de valeur), plusieurs milliers de registres pour diminuer la pression sur la mémoire, et un jeu d'instruction qui gèrent les matrices/vecteurs et d'autre type de donné vectoriel comme la couleurs de pixel en format exotique. Pourquoi un tel cpu ne pourrait pas exister ?

    "La première sécurité est la liberté"