Google voudrait vraiment gérer les puces RISC-V avec Android
Depuis quelques années, un nouveau jeu d'instructions fait parler de lui, en parallèle du x86 d'Intel et de celui d'ARM : RISC-V (le V signifie ici 5). Apparu en 2010, il est libre, basé sur une logique de type RISC et ne nécessite pas de royalties, ce qui le rend intéressant pour beaucoup de sociétés.

Google voudrait que RISC-V soit une architecture majeure
Depuis quelques mois, du code RISC-V avait été vu dans la partie open source d'Android (AOSP), mais — comme le note Ars Technica — Google a finalement communiqué un peu sur ce point au RISC-V Summit, un ensemble de conférences liées au jeu d'instructions. Lars Bergstrom (un des responsables de la partie technique d'Android) a en effet indiqué qu'il aimerait que RISC-V soit une plateforme majeure pour Android, même si le travail nécessaire risque encore de prendre quelques années.

Android gère essentiellement ARM
Actuellement, le monde Android fonctionne essentiellement sur des puces ARM, avec la possibilité de fonctionner en 32 bits ou en 64 bits, même si certains appareils comme le récent Pixel 7 abandonnent le 32 bits. Android a un temps été pris en charge sur les puces MIPS, mais le support a été abandonné en 2018, et si la compatibilité x86 existe encore, elle est rarement déployée dans des smartphones. Le x86, en 2023, sert essentiellement pour la compatibilité Android de Windows 11 et de Chrome OS, deux plateformes où les puces d'Intel sont majoritaires.
Mais pour Google, dépendre d'ARM reste une épée de Damoclès, comme pour Apple d'ailleurs. En effet, les évolutions du jeu d'instructions dépendent de la société ARM, qui passe de mains en mains, et tous les fabricants de CPU compatibles ARM doivent payer une licence (plus ou moins élevée) à ARM. Ce point pose parfois des soucis, comme récemment avec Qualcomm et Nuvia.

La bisbille entre ARM et Qualcomm aura-t-elle un effet sur Apple ?
RISC-V n'est pas encore tout à fait adapté
Si le passage à RISC-V semble inévitable pour certains, le jeu d'instructions n'est malheureusement pas encore tout à fait mûr pour remplacer ARM dans le cœur des smartphones. La première raison est liée au fait que le jeu d'instructions est récent : la partie logicielle manque d'optimisation pour le moment et les développeurs préfèrent se pencher sur le x86 ou l'ARM à ce niveau. Dans le cas d'Android, c'est parfois très visible : les optimisations touchent essentiellement le code ARM et la partie x86 est par exemple assez « brute » comparativement.
De même, certains composants open source — comme ceux liés au décodage vidéo — sont optimisés très finement pour les puces ARM et Intel (avec parfois de l'assembleur) mais pas pour RISC-V. Ces points ne gênent pas directement le fonctionnement, mais rendent les choses plus compliquées pour les performances.

Et le point des performances est la seconde raison. Actuellement, les processeurs RISC-V ne peuvent pas vraiment concurrencer les meilleures puces ARM ou x86 à ce niveau. Les quelques sociétés qui conçoivent les puces visent en effet plutôt le marché de l'embarqué, des serveurs ou celui de la (très) basse consommation, mais pas celui des smartphones. Les meilleurs CPU RISC-V annoncent généralement des performances du même ordre que des architectures ARM qui ont un an ou deux, avec comme avantage avancé une consommation plus faible. Et même dans les serveurs, les puces montrées au RISC-V Summit visent les architectures actuelles avec une sortie fin 2023.
Comme expliqué plus haut, il ne faut donc pas s'attendre à des smartphones Android RISC-V rapidement, mais la transition est tout de même bien en route.
Srouji doit également bosser sur du Risc-V…..
« même si le travail nécessaire - risque - encore de prendre quelques années. »
👏
@eplus
Je l’avais aussi. 😉 Pierre Dandumont s’y met aussi 🤪
RISC-V remplacera ARM dans 10 ans et Apple sortira Rosetta 3 pour changer d’architecture comme elle la fait avec Rosetta 2 et ARM 😈
Aucune idée du timing mais c'est quasiment une évidence vu le risque que représente ARM.
@lmouillart
De quel risque parlez-vous ? De RISC-V 😜😈
ARM était sur le point de se faire racheter par un designer peu ouvert : NVidia. J'imagine que chez tous les designers cela a été un rappel que ARM (donc le coeur de leur poule aux oeufs d'or peut à tout moment se faire racheter par un concurrent).
RISC-V résout beaucoup de ces soucis, notamment niveau gouvernance qui permet de rester neutre dans le conflit commercial USA/CN : https://www.ictjournal.ch/articles/2019-11-25/le-projet-open-source-de-microprocesseurs-risc-v-quitte-les-usa-pour-la-suisse
@lmouillart
Oui c’est vrai, mais heureusement que les régulateurs font de temps en temps bien leurs travail 😈
@lmouillart
« RISC-V résout beaucoup de ces soucis, notamment niveau gouvernance qui permet de rester neutre dans le conflit commercial USA/CN »
Ce n’est pas pour rien que les chinois investissent lourdement dans le RISC-V, afin de se libérer d’une dépendance technologique.
@lmouillart
Puis ARM passera l’arme à gauche 😎
@DG33
☺️
Ça serait donc un passage à une nouvelle architecture et alors nécessité d’utiliser un émulateur de type Rosetta ou de tout recompiler?
Pour Apple ça ne ferait que la Xeme transition…
Autre question : comment envisager d’améliorer les jeux d’instructions ARM sans ARM: dependre d’ARM peut aussi être une bride au collier…
@amonbophis
"de tout recompiler?"
Tout recompiler : kernel Linux, librairies diverses, machine virtuelle Java. Les applications qui n’embarquent pas de code arm natif n’ont pas besoin de recompilation, elles ne quittent pas la VM.
"Autre question : comment envisager d’améliorer les jeux d’instructions ARM sans ARM"
On ne peut légalement pas, le jeu d’instructions arm appartient à arm et ne peut être bricolé "comme on en a envie".
@amonbophis
« alors nécessité d’utiliser un émulateur de type Rosetta ou de tout recompiler? »
Rosetta 2 n’est pas un émulateur, il analyse le code machine, reconstruit un code source et le recompile en code machine ARM. C’est nettement plus efficace que n’importe quel émulateur (et beaucoup plus compliqué à développer).
aka transcompilateur
@byte_order
« aka transcompilateur »
Ah le charme des mots geeks compliqués pour faire genre sur un forum grand-public !
@IceWizard
écoutez, c'est la seule chose qui me permet de briller lors des soirées de l'ambassadeur réputées pour le bon goût du maître de maison, et avoir un peu de prestige devant la gente féminine. Alors ne me l'enlevez pas !
et dans le cas de Rosetta, nous parlons plutôt d'un DBT, une technique déjà en germe dans un compilateur Just-In-Time. #seLaPèteDeOuf
@oomu
« écoutez, c'est la seule chose qui me permet de briller lors des soirées de l'ambassadeur réputées pour le bon goût du maître de maison, et avoir un peu de prestige devant la gente féminine. Alors ne me l'enlevez pas ! »
T’es vraiment un geek ! Apporter des chocolats c’est tellement plus efficace ! 🍫💝
CAPM JIT DBT ISS 😜
@IceWizard
"Ah le charme des mots geeks compliqués pour faire genre sur un forum grand-public !"
Qu’est-ce que tu trouves compliqué comme mot ? Trans ou compilateur ? Trans je pense est assez bien compris de nos jours. Compilateur n’est pas très compliqué non plus, et c’est un mot que les enfants apprennent au cycle secondaire (début, cours informatiques élémentaires) dans mon pays, et souvent ils le connaissent pour l’avoir déjà rencontré au cycle primaire.
L’association des deux peut-être ?
Le bouton chercher d’iOS te trouve la définition en un click, si jamais.
C’est juste un mot spécialisé. Pas plus compliqué que bâbord et tribord.
@fte
« Qu’est-ce que tu trouves compliqué comme mot ? Trans ou compilateur ? Trans je pense est assez bien compris de nos jours. «
Transcompilateur ça te parle, parce que tu es de la partie. Expliquer le principe est bien plus utile pour une personne ne connaissant pas les arcanes de la technomagie.
J’ai passé des années à vulgariser l’informatique à des moldus. Un « expert » ne se rend jamais compte des difficultés éprouvées par les non-informaticiens à comprendre des « choses évidentes pour lui ».
@IceWizard
Je viens de poser la question à ma fille de 15 ans.
Sa réponse : err, je sais pas, un truc qui change un programme dans un autre langage ?
🤷
@fte
« Je viens de poser la question à ma fille de 15 ans.
Sa réponse : err, je sais pas, un truc qui change un programme dans un autre langage ? »
Je doute qu’une fille de 15 ans, dont le père est informaticien soit représentatif de la totalité du grand-public. Vas faire de la vulgarisation informatique dans un club de quartier, avec des gens de différents niveaux sociaux, de professions diverses et d’âges allant de 7 à 77 ans, et tu verras !
@IceWizard
"Je doute qu’une fille de 15 ans, dont le père est informaticien soit représentatif de la totalité du grand-public."
En effet. Mais des ados de son âge, déjà beaucoup plus. L’informatique n’est pas son centre d’intérêt, ce qui l’intéresse c’est le génie civil et l’urbanisme. Elle programmerait comme hobby, je ne dis pas, mais ce n’est pas le cas, ça ne l’intéresse pas du tout et ne l’a jamais intéressé.
Je te dirais bien ce que ma femme m’a répondu, mais ce n’est pas pertinent dans un sens ou l’autre : m’emmerde pas je suis en vacances. ;)
@IceWizard
Ch’pô mééé :
« Performance générative »
Me semblerait, pit-être, de meilleur aloi 🤫
Peut être aussi un moyen de négociation pour ne pas être pieds et mains liés envers ARM
RISC-V est à arm ce que arm est à x86.
Plus économe, moins puissant, moins mature, plus spécialisé, risque potentiel futur.
Ce que RISC-V n’a pas encore, c’est une part de marché conséquente, contrairement à arm et x86, y compris dans l’embarqué.
Question : dit-on « RISC-vé » ou « RISC-5 » ?
@k2r
Je me suis posé la même question et c’est risc cinq d’après Wikipedia.
@Pyr0h
Merci !
@k2r
Je m’étais aussi posé la même question !
Merci pour la réponse.
@Pierre Dandumont
👍🙏
Comme Georges
@v1nce29
🤣🤣🤣
@k2r
Ni vé ni cinq mais five ?
RISC : l’architecture des Mac avant Intel 🧐