Mobilní průmysl by na RISC-V přejít mohl, asi by to nebyl zase TAKOVÝ problém. Android byl nedávno naportován na RISC-V vývojovou desku. Jen spousta NDK věcí by se musela překompilovat či někdy dokonce přepsat.
Ale samozřejmě bych byl nejraději kdyby tato hypotetická smrt ARMu sebou stáhla do hlubin i Android, ale to se bohužel nestane už vůbec.
Jenže je tu další problém a to ten, že ARM je jedna z dvou hodně podporovaných platforem (pokud počítám i686 a x86_64 jako jednu). Rust má dokonce v Tier 1 aarch64-unknown-linux-gnu, Flathub kompiluje pro i686, x86_64 a aarch64.
Na druhou stranu kdyby nVidia ničila ARM pomalu, tak by se na RISC-V dalo přecházet postupně. Možná s tím i někteří strachy se třesoucí činští výrobci telefonů experimentují ;)
No, tak fandím nVidii, aby ARM položila (ale postupně) a všem ostatním aby RISC-V ekosystém mezi tím pozvedli na úroveň ARMu ba i dokonce x86_64!
NDK není problém. Zapomínáte na to, že pro x86 Intel tehdy udělal překlad na serverech Googlu, takže vývojář nahrál ARM binárku do Google Play a člověk s x86 Androidem si stáhl automaticky přeloženou verzi pro x86. Podobně jako překládá x86 při prvním spuštění Apple na ARM Macách. Windows on ARM sice překládá on-the-fly, ale i to by stačilo - aplikace pro Android jsou stavěné i pro mobily pod $100. Tj. fungovaly by vám všechny důležité aplikace (např. sociální sítě a banky) a půlka her (ty, které nejsou náročné na výkon CPU). Ohledně CPU architektury je důležité akorát, aby byl stejný endian (aby se nemusel předělávat zdrojový kód aplikací pro podporu little/big endian). Osobně považuju jinou architekturu CPU na Android zařízení za menší problém než chybějící mobilní služby Googlu (financování free aplikací z reklam, mikrolatby v aplikacích, DRM pro banky a streaming služby, ...).
jen poznamka - Windows on ARM binarni translator neni rozhodne plne on-the-fly, sice u prvniho spusteni to tak je, ale pak se udrzuje cache prelozenych segmentu.
Win10 OnARM je ale podle mne vysmech, kdyz jsem videl co vsechno je v pameti u meho helloworld procesu - jak sileny overhead - tak neverim tomu, ze nekdy Win10 budou fungovat alespon trochu pouzitelne na lowend ARM hardware. A GPU to opravdu nenazene, ani kdyz bude pro Rpi Mali driver, stejne to bude nepouzitelny system.
Ano, on-the-fly překladače cachují. To už bylo v FX!32 emulátoru x86-32bit na DEC Alpha (standardní emulátor ve Windows emuloval jen x86-16bit).
Win10 on ARM tu už je mnoho let, ale vývoj prakticky stál. Až díky Applu se zas rozjel. Konkrétně podpora 64bitů (dnes už spousta aplikací a her je 64bit-only) a OpenGL (většina aplikací a některé hry). Až s Applem totiž má Win10 on ARM konečně smysl - do vydání M1 totiž neexistoval desktopový ARM CPU (i když je M1 jen pro mini počítače a tenké notebooky, je to furt obrovský skok oproti SoC do mobilu - a už se připravuje verze do výkonných notebooků a All-in-On PC).
Výkon Win10 on ARM není zas tak špatný, zde hraní Windows-only hry ve virtualizaci na M1: https://youtu.be/G5gyao-c45c
Míň příjemná je spotřeba baterky. Např. na Surface Pro X, pokud je spuštěná byť jen jedna x86 app, tak výdrž na baterii je poloviční (čímž zabíjí důvod kupovat si ARM, když se dostanu na výdrž x86).
EDIT: Jen doplním k Ahead-of-Time překladu pro x86 Android a ARM Mac: Sice je tam velký rozdíl ve výkonu, ale z cenu, že malé procento aplikací blbne (v obou jmenovaných případech).
15. 2. 2021, 14:42 editováno autorem komentáře
1. Vážně někdo dělá v assembleru? Mít ohromná množství zbytečných instrukcí...
2. V dnešní době máte spoustu mobilních zařízení a x86 není úsporná
3. Mít duopol Intel a AMD nikomu a ničemu nesvědčí
A mít architekturu jako RISC-V by všemu jen prospělo...
16. 2. 2021, 00:59 editováno autorem komentáře