Výhody architektury RISC-V

Wasper

  • ***
  • 120
    • Zobrazit profil
    • E-mail
Výhody architektury RISC-V
« kdy: 25. 10. 2023, 02:37:43 »
Pro začátek: pokud shledáváte tento dotaz jako trolling, pak prosím neodpovídejte. Rozhodně tak není míněn.

Chtěl bych se zeptat na jednu věc - pokud se někde objeví zmínka o použití RISC-V architektury, tak obvykle sklízí nadšené ovace většiny čitatelů. Takže bych se rád zeptal, jaké jsou ale reálné plusy, v porovnání např. s ARM nebo Wintel?

Ptám se hlavně proto, že mě dorazily dvě RISC-V hračky (LicheeRV D1 dock, 512MB+WiFi), dal jsem na ně Debian, a třeba i v porovnání s RPI zero, na kterou nedám dopustit, mám tak trochu rozporuplné pocity. Spotřeba cca 200mA moc nezávisí na zátěži (malina má v skoro-idle, jen aktualizuje ePaper displej kolem 100mA) a výkonově, no ... ta Malina mi připadne o dost svižnější a mnohem mín žravá.
« Poslední změna: 25. 10. 2023, 08:39:39 od Petr Krčmář »


alex6bbc

  • *****
  • 1 664
    • Zobrazit profil
    • E-mail
Re:Výhody RISCV
« Odpověď #1 kdy: 25. 10. 2023, 03:55:52 »
riscv nema zadne licence co je treba platit pri vyrobe. az se bude davat masove to mobilu, tak bude mit lepsi parametry.

mhi

  • *****
  • 500
    • Zobrazit profil
Re:Výhody RISCV
« Odpověď #2 kdy: 25. 10. 2023, 08:47:02 »
Problem je v tom, ze od ARMu potrebujete licenci. Nejde ani tak o ISA (i kdyz pry jsou zeme, kde neni legalni si ani udelat vlastni design implementujici napr. ARM ISA), jako spis o nejake patenty, ktere jsou na ISA uzce navazany. Ptal jsem se na to driv uz vice lidi a nikdy jsem zadny konkretni seznam nedostal, stale by mne to zajimalo.

R-V jde implementovat bez tech licencnich veci tykajicich se primo ISA, ale opet je otazka, jestli clovek pri nejake chytrejsi implementaci nenarazi na neci patent. Toto by mne opet zajimalo, jestli nekdo mate nejake background info (napadaji mne patenty ohledne synchronizace pameti u vice jader).

Re:Výhody architektury RISC-V
« Odpověď #3 kdy: 25. 10. 2023, 09:46:52 »
Osobně se na RISC-V dívám skepticky zejména z politických důvodů, neboť zatím se této architektuře vážně věnuje snad jen Čína. Pro tu je to cesta, jak se vyhnout všemožným sankcím a embargům na západní technologie. Pokud by si západ nechal ujet vlak, mohlo by se snadno stát, že bude závislý na čínské implementaci RISC-V, zatímco bude svázán patenty souvisejích technologií, ve vlastnictví číny.

alex6bbc

  • *****
  • 1 664
    • Zobrazit profil
    • E-mail
Re:Výhody architektury RISC-V
« Odpověď #4 kdy: 25. 10. 2023, 11:38:13 »
Osobně se na RISC-V dívám skepticky zejména z politických důvodů, neboť zatím se této architektuře vážně věnuje snad jen Čína. Pro tu je to cesta, jak se vyhnout všemožným sankcím a embargům na západní technologie. Pokud by si západ nechal ujet vlak, mohlo by se snadno stát, že bude závislý na čínské implementaci RISC-V, zatímco bude svázán patenty souvisejích technologií, ve vlastnictví číny.

nikdo nemuze zacit patentovat risc-v kdyz uz je jednou free. leda nove veci navic by mohli patentovat.


RDa

  • *****
  • 2 709
    • Zobrazit profil
    • E-mail
Re:Výhody architektury RISC-V
« Odpověď #5 kdy: 25. 10. 2023, 12:21:37 »
Osobně se na RISC-V dívám skepticky zejména z politických důvodů, neboť zatím se této architektuře vážně věnuje snad jen Čína. Pro tu je to cesta, jak se vyhnout všemožným sankcím a embargům na západní technologie. Pokud by si západ nechal ujet vlak, mohlo by se snadno stát, že bude závislý na čínské implementaci RISC-V, zatímco bude svázán patenty souvisejích technologií, ve vlastnictví číny.

nikdo nemuze zacit patentovat risc-v kdyz uz je jednou free. leda nove veci navic by mohli patentovat.

Ale on nemluvi o patentech na RV, ale na implementaci.

Treba out of order execution s ROB (reorder-buffer), ruzne DVFS pristupy ... to je vse patentovany, a rekl bych ze takovej patent je napsanej dost genericky, aby nebyl omezenej jenom na x86 svet.

RV je jenom ISA, tj muzes tvorit a cist binarku a pro kazdeho to da stejny vysledek. Ale jak konkretne implementujes svuj procesor nebo prekladac.. je uz zcela jine vedro zizal :D

Re:Výhody architektury RISC-V
« Odpověď #6 kdy: 25. 10. 2023, 13:03:08 »
nikdo nemuze zacit patentovat risc-v kdyz uz je jednou free. leda nove veci navic by mohli patentovat.

Stejně tak je "free" architektura osobního automobilu - 4 kola, volant, nějaké sedačky a trocha plechu okolo... Konkrétní technická řešení jsou však automobilkami často patentována.


Re:Výhody architektury RISC-V
« Odpověď #7 kdy: 25. 10. 2023, 14:28:46 »
RISC-V mi přijde míň praktická instrukční sada v porovnáním třeba s AArch64.

Základ je dobrý, ale kvůli "jednoduchosti" tam jsou některé věci, které prostě nejsou praktické, a RISC-V V (SIMD) je ukázka toho, že ti lidi co to navrhovali asi neměli s využitím SIMD instrukcí moc zkušeností z praxe.

Takže za mě jsem teď spíš skeptický o využití RISC-V např. v desktopech.

AArch64 je určitě mnohem praktičtější design, ale taky má věci z dnešního pohledu zastaralé (třeba 64-bit SIMD), a podle mě s ARM-SVE byl krok do slepé uličky.

Re:Výhody architektury RISC-V
« Odpověď #8 kdy: 25. 10. 2023, 16:55:31 »
RISC-V mi přijde míň praktická instrukční sada v porovnáním třeba s AArch64.

Základ je dobrý, ale kvůli "jednoduchosti" tam jsou některé věci, které prostě nejsou praktické, a RISC-V V (SIMD) je ukázka toho, že ti lidi co to navrhovali asi neměli s využitím SIMD instrukcí moc zkušeností z praxe.

Takže za mě jsem teď spíš skeptický o využití RISC-V např. v desktopech.

AArch64 je určitě mnohem praktičtější design, ale taky má věci z dnešního pohledu zastaralé (třeba 64-bit SIMD), a podle mě s ARM-SVE byl krok do slepé uličky.

SIMD je asi nejlepsi porad jeste na x86-64 (AVX).

Re:Výhody architektury RISC-V
« Odpověď #9 kdy: 25. 10. 2023, 19:35:31 »
RISC-V mi přijde míň praktická instrukční sada v porovnáním třeba s AArch64.

Základ je dobrý, ale kvůli "jednoduchosti" tam jsou některé věci, které prostě nejsou praktické, a RISC-V V (SIMD) je ukázka toho, že ti lidi co to navrhovali asi neměli s využitím SIMD instrukcí moc zkušeností z praxe.

Takže za mě jsem teď spíš skeptický o využití RISC-V např. v desktopech.

AArch64 je určitě mnohem praktičtější design, ale taky má věci z dnešního pohledu zastaralé (třeba 64-bit SIMD), a podle mě s ARM-SVE byl krok do slepé uličky.

SIMD je asi nejlepsi porad jeste na x86-64 (AVX).

Spíš AVX-512 - AVX2 nemá třeba scatter, maskování, a oproti AVX-512 je nekompletní.

Re:Výhody architektury RISC-V
« Odpověď #10 kdy: 25. 10. 2023, 19:47:32 »
RISC-V mi přijde míň praktická instrukční sada v porovnáním třeba s AArch64.

Základ je dobrý, ale kvůli "jednoduchosti" tam jsou některé věci, které prostě nejsou praktické, a RISC-V V (SIMD) je ukázka toho, že ti lidi co to navrhovali asi neměli s využitím SIMD instrukcí moc zkušeností z praxe.

Takže za mě jsem teď spíš skeptický o využití RISC-V např. v desktopech.

AArch64 je určitě mnohem praktičtější design, ale taky má věci z dnešního pohledu zastaralé (třeba 64-bit SIMD), a podle mě s ARM-SVE byl krok do slepé uličky.

SIMD je asi nejlepsi porad jeste na x86-64 (AVX).

Spíš AVX-512 - AVX2 nemá třeba scatter, maskování, a oproti AVX-512 je nekompletní.

jj pravda. Akorat muj CPU AVX-512 neumi (Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz), takze kysele hrozny. Ale mas pravdu.

Re:Výhody architektury RISC-V
« Odpověď #11 kdy: 25. 10. 2023, 23:15:52 »
Obecně si myslím, že je úplně jedno jaká je architektura.
Rozdíly nejsou v podstatě důležité. Jde totiž o aplikace které jsou určeny pro konkrétní platformu.
Tzn. ty používáš konkrétní aplikace a k nim hledáš optimální hardware.
Ale na druhou stranu se můžeš vydat druhou stranou, máš hardware a k němu si napíšeš veškerý software.
Pak už je to spíše otázka proč jsi si zvolil konkrétní hardware, protože na aplikaci nezáleží, tu si napíše a optimalizuješ software pro konkrétní celou platformu toho hardware.

Když bych uvedl konkrétní a teoretický příklad. Máš vesmírnou sondu, specifikoval jsi si požadavky na CPU (nebo raději celou platformu) a výkon nebo architektura vůbec nemusí být nejdůležitější, ale rozhodující podmínkou třeba bude že kompletní vývoj a výroba bude v USA, patenty jsou v USA, výrobce má certifikace pro dodávky pro armádu USA apod, a vyšel ti vítězně nějaký model CPU. A k tomu CPU vytvoříš veškerý software.

A nebo si představ že máš LGM-30 Minuteman - to je jaderná raketa v silech, sedí tam v silu jednotky ale spíše desítky let a čeká neustále připravená, a tam nemůžeš dělat upgrade CPU každý rok jako je běžné u Intelu/AMD/ARM. Tady je nějaký popis co jsem v rychlosti našel: https://minutemanmissile.com/missileguidancesystem.html   a https://en.wikipedia.org/wiki/LGM-30_Minuteman

Zajímá-li tě podobná problematika najdi si pomocí googlu, problematiku zavádění Block 4 u stíhačky F-35, údajně už to řeší přes 2 roky. Zjednodušeně mají potřebný výkon v novém procesoru, ale nemají adekvátní rezervu chlazení pro elektroniku. Ale je fakt, že jsem toto pouze letmo zahlédl a třeba odkaz na to je slepá ulička, a nebo mé nepochopení.

Re:Výhody architektury RISC-V
« Odpověď #12 kdy: 25. 10. 2023, 23:46:42 »
Divej, pokud pro tebe nejsou rozdíly důležité, tak proč se vyjadřovat?

Pro hodně lidí ty rozdíly důležité jsou, protože chcou z každé platformy vyždímat maximum.

Re:Výhody architektury RISC-V
« Odpověď #13 kdy: 26. 10. 2023, 01:20:51 »
Pro: anonacct
Máš pravdu, já jsem se pouze snažil říci, že z architektury vytěžíš maximum pouze když si to nízkoúrovňově  naprogramuješ.
Ale porovnávat něco co tam "nějak" rozběhnu, proti nějakému trochu lépe odladěnému systému tak toto nelze porovnávat, a ani vyvozovat závěry.

Jinak existuje docela dobrá literatura:
Computer Organization and Design RISC-V edition.pdf

Re:Výhody architektury RISC-V
« Odpověď #14 kdy: 26. 10. 2023, 13:07:23 »
honzako: A kolik času strávils psaním low-level kódu v asm nebo třeba použitím C++ intrinsics pro nějakou architekturu?

To co píšeš k tématu prostě nedává smysl, sorry :) Hodně lidí chce psát obecný kód aniž by museli cílit na nějakou architekturu, na druhou stranu pro netriviální věci máme knihovny, které už cílit můžou, i triviální memcpy má různé implementace pro dosažení maximálního vykonu.

Když jde o základní operace, tak všechny architektury jsou si víceméně podobné, ale používáním základních operací nikdy člověk nedosáhne maximálního výkonu. Dnešní CPU dokáže zpracovat 4-8 instrukcí za jeden cyklus a tady se bavíme jak o základních operacích tak o využití SIMD, a proto je SIMD instrukční sada tak zajímavá, protože když se použije dobře, tak za 1 cyklus se dokáže zpracovat mnohem víc dat (a v podstatě za stejnou cenu). V tomto případě nemluvím jen o tom iterovat nad nějakým polem a něco počítat, SIMD se dnes hodně využívá i k naprosto základním věcem jako třeba zkopírování nějaké struktury (fixní délka) nebo na akceleraci nějaké operace, která má fixní počet elementů (pole, struktura, atd...), akcelerace hash tabulek je taky hodně zajímavé téma (s využitím VPSUFB), atd...

Takže ne, architektura je opravdu důležitá a když se věci udělají dobře, tak i blbá hash tabulka může být 5x rychlejší než při použití obecné implementace bez optimalizací. Třeba toto video je celkem zajímavé a k tématu: https://www.youtube.com/watch?v=DMQ_HcNSOAI