Scimark numeric benchmark

vložil Radek Červinka 24. dubna 2024 20:05

Scimark je klasický numerický benchmark a já si tak pro zajímavost jednou za čas pouštím jeho Delphi port variantu, abych si ověřil jak je na tom 32bit Delphi a 64bit v jednotlivých verzích. Nikdy jsem neskrýval, že obecně mám radši 32bit kompilátor.

Předem upozorňuji, že je to jeden a ten samý kód, jen překládaný různými verzemi jak 32bit, tak 64bit. Jedná se o lehce upravený původní Delphi port, moje verze je 64bit kompatibilní a je tady ke stažení scimark.zip (200 kb).

Takže ještě jednou: stejný kód, takže teoretické chyby jsou stejné. A jedná se o numerický benchmark, ne obecný. Berte to prosím jako zajímavost, jak s tím naložíte je na Vás.

Bechmark obsahuje pět "kernelů", tj. testů (podrobnosti na prvním odkazu, ve zkratce):

Fast Fourier Transform (FFT) provede jednorozměrnou dopřednou transformaci 4K komplexních čísel. Toto jádro procvičuje komplexní aritmetiku, promíchávání, nekonstantní odkazy na paměť a trigonometrické funkce.

Jacobi Successive Over-relaxation (SOR) na 100x100 mřížce cvičení typických přístupových vzorů v aplikacích s konečnými diferencemi, například řešení Laplaceovy rovnice ve 2D s Drichletovými okrajovými podmínkami.

Monte Carlo aproximuje hodnotu PI výpočtem integrálu čtvrtkruhu y = sqrt(1 - x^2).

Sparse matrix mutiply používá nestrukturovanou řídkou matici uloženou ve formátu komprimovaných řádků s předepsanou řídkou strukturou.

dense LU matrix factorization vypočítá LU faktorizaci husté matice 100x100 pomocí částečného otáčení. Procvičuje jádra lineární algebry (BLAS) a operace s hustými maticemi.

(pozn. popis algoritmu je přes deepl s minimem oprav)

Nahoře je vždy celkové skóre, pod tím jednotlivé testy (vše mobilní AMD Ryzen 5 4500U, vše je single thread)

Delphi 2007

Delphi 2007 jako nejstarší verzi co mám a kterou sem tam použiji. D2007.jpg

Delphi XE

xe.jpg

Delphi XE8

32Bit

DX8_32.jpg

64Bit

DXE8_64.jpg

Pozn. 32bit je plus minus jako DXE, které je trochu lepší než D2007

Delphi 11.3

32Bit

D11_32.jpg

64Bit

D11_64.jpg

Lehký vývoj hlavně v 64bit verzi.

Delphi 12.1

32Bit

D12_32.jpg

64Bit

D12_64.jpg

WTF? SOR 2x lepší a LU výrazně lepší v 64bit než v předchozí verzi. Nevím proč, resp. jsou jisté optimalizace, ale až tak?

Jinak následující nemá moc význam (existuje jen v 64bit).

{$FINITEFLOAT OFF}
{$EXCESSPRECISION OFF}

Obecně je ale velmi poznat rozdíl v numerice mezi 32bit, kde se používá klasické FPU asi pořád k vůli kompatibilitě (bohužel, velká škoda) a 64bit, kde se používají SSE2 instrukce.

Tagy:

Přidat komentář




biuquote
  • Komentář
  • Náhled
Loading



Naše nabídka

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy).

love Delphi

O Delphi.cz

Delphi je moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64, Mac OSX, Linux a na iPhone a Android.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Poslední komentáře

Comment RSS

Dle měsíců