• Komolytalan
    #5
    "Ha van egy x86-os, 4 magos processzor, az egyszerre 4 (hyperthreading-gel 8) feladatot tud vegezni. Ez a diszk i/o blokkolo hatasa miatt lehet akar 16 is. Ha van 64 felhasznalo a szerveren akkor ez 4-es load-ot fog jelenteni, tehat lassunak tunik a gep. Ezzel szemben ha van 64 felhasznalo es van ra 32 arm mag, akkor a szerveren i/o val egyutt 0.5-os load lesz, tehat a felhasznalo azt latja, hogy gyorsabb a gep."
    Juj-juj-juj... ezt a mellémagyarázást. Nézzük sorban:
    - Egy x86 mag durván 10x gyorsabb mint egy ARM mag. Ez köszönhető az órajelbeli eltérésnek, a jóval magasabb cache mennyiségnek, és annak, hogy az x86 elemi műveletként bonyolultabbakat tud elvégezni, mint az ARM (pl lebegőpontos részt meg lehet nézni).
    - Egy normális oprendszer legalabb ezredmásodpercenként 1x újraosztja a szálak között a processzort, mint erőforrást. Vagyis ha egy 4 magos processzoron 5 szál fut, akkor attól az még nem válik reakcióképtelenné. A load egy nagyon gyorsan számolható, és nagyon buta mérőszám. Csináltam média szervert, amely pikk-pakk 40-80-as loadra ugrasztotta a szervert, de a streaming ettől függetlenül folyamatos volt. Pedig a video streamingnél azért elég hamar látnom kéne a lassulást, akadozást.
    - Arról az ARMnál mindig szemérmesen hallgatnak, hogy memória, az egy van ám. És egy memóriát legjobban egy mag tud használni - onnan kezdve hogy növeljük az erre akasztott magok számát az össz teljesítmény koránt sem lineárisan nő. Vagyis egy 64 magos ARM rendszer össz teljesítménye mondjuk egy 4 magoséhoz képest nem 16x lesz, de jó ha a 8x-et eléri.

    "Egyebkent mivel egy high end arm-os cpu kepes kivaltani egy low end x86-ost, ezert mar desktop feladatokban is megkozelitik az x86-ok teljesitmenyet."
    Létező processzorokról beszéljünk. A létező ARM procik egy eleve k.rva lassú, és évek óta nem fejlődő Atom proci sebességét se érik el. Lebegőpontos számításban pláne nem. Fogyasztásban jobbak, de ez az egyetlen előnyük.

    "A szerveres feladatok pedig tipikusan olyanok amiben a sok mag, kisebb orajel jobb mint a keves mag, magas orajel."
    Ez nem csak szervereknél, de sehol az ég világon nem igaz. A sok mag az állandó blokkolás, cache ürítés, memóriára várakozás. 4db 1Ghz-s mag felér 1 db 2Ghz-s maggal, de 1 db 3Ghz-s maggal már nem mindig. És itt még csak 1 vs 4-ről, nem 4 vs 64-ről beszéltünk.

    "Egyebkent az meg mindig igaz, hogy egy egymagos x86-os core sorozatu cpu azonos orajelen kb. 3-4-szer gyorsabb mint egy modern arm."
    "Arm-on futo android-hoz van x86 emulator. Mar eppen hasznalhato sebesseggel fut rajta az x86-os kod, pedig hardveres gyorsitas nelkul megy. Ha lenne jit is, akkor meg jobb eredmenyt hozna. Innentol x86-rol arm-ra valtani kb. olyan lenne mint amikor az apple ppc-rol x86-ra valtott."
    Feltételezve hogy egy JIT fordító azért nem lesz olyan hatékony, mint egy AOT fordító, ráadásul a JIT fordító is prociidőt fogyaszt, mondhatjuk azt, hogy azonos órajel és magszám mellett 1/4 sebesség a max, ami elérhető (és szerintem ez durván hurrá optimizmus). Ezzel nagyjából el is veszne az "azonos teljesítményt, alacsonyabb fogyasztásból" című előny is - amely eleve csak nagyon alacsony teljesítményen él, mert magasat az ARM egyszerűen nem tud. Nekem ebből nem az jön le, hogy érdemes volna váltani.