Linpack AVX2, vad får ni för resultat?

Permalänk
Medlem

Linpack AVX2, vad får ni för resultat?

Man ser inte så ofta resultat från Intels nya Linpack med AVX2-stöd och Haswell, troligen för att det är lite bökigt att få igång.

Ladda hem det här:
http://software.intel.com/en-us/articles/intel-linpack-benchm...

1. Packa upp zip-filen

2. Kopiera filen redist\intel64\compiler\libiomp5md.dll till linpack_11.0.5\benchmarks\linpack

3. Om du har en processor med Hyper-Threading, stäng antingen av det i BIOS, eller byt ut runme_xeon64.bat till följande:

@echo off SETLOCAL rem Setting up affinity for better threading performance set KMP_AFFINITY=nowarnings,compact,granularity=fine rem Setting path to OpenMP library set PATH=..\..\..\redist\intel64\compiler;%PATH% echo Running linpack_xeon64.exe. Output can be found in win_xeon64.txt. start /b /affinity 55 linpack_xeon64.exe lininput_xeon64 > win_xeon64.txt echo. echo When this window closes the calculation is done. ENDLOCAL

4. Om du har 8GB RAM, öppna lininput_xeon64 i Notepad och byt ut till följande:

Sample Intel(R) Optimized LINPACK Benchmark data file (lininput_xeon64) Intel(R) Optimized LINPACK Benchmark data 9 # number of tests 1000 2000 3000 4000 5000 10000 15000 20000 25000 # problem sizes 1000 2000 3000 4000 5000 10000 15000 20000 25000 # leading dimensions 4 4 4 4 4 2 2 2 2 # times to run a test 4 4 4 4 4 4 4 4 4 # alignment values (in KBytes)

Detta för att de större problemstorlekarna kräver >8GB RAM.

5. Nu är det bara att köra runme_xeon64.bat och vänta tills DOS-fönstret stängs Du kan även använda aktivitetshanteraren och temperaturövervakningsprogram för att bekräfta att den kör (50% CPU om du har Hyper-Threading). Borde ta några minuter med problem size upp till 25000, betydligt längre annars. Temperaturen kommer troligen vara högre än vid andra stresstester:

6. Resultaten återfinns sedan i win_xeon64.txt

Intel(R) Optimized LINPACK Benchmark data Current date/time: Sun Aug 18 13:42:04 2013 CPU frequency: 4.398 GHz Number of CPUs: -1 Number of cores: 1 Number of threads: 4 Parameters are set to: Number of tests: 9 Number of equations to solve (problem size) : 1000 2000 3000 4000 5000 10000 15000 20000 25000 Leading dimension of array : 1000 2000 3000 4000 5000 10000 15000 20000 25000 Number of trials to run : 4 4 4 4 4 2 2 2 2 Data alignment value (in Kbytes) : 4 4 4 4 4 4 4 4 4 Maximum memory requested that can be used=705536800, at the size=25000 =================== Timing linear equation system solver =================== Size LDA Align. Time(s) GFlops Residual Residual(norm) Check 1000 1000 4 0.006 114.0584 1.194739e-012 4.074366e-002 pass 1000 1000 4 0.005 124.8665 1.194739e-012 4.074366e-002 pass 1000 1000 4 0.006 102.9154 1.194739e-012 4.074366e-002 pass 1000 1000 4 0.006 108.3124 1.194739e-012 4.074366e-002 pass 2000 2000 4 0.051 104.0321 4.536926e-012 3.946570e-002 pass 2000 2000 4 0.057 93.1630 4.536926e-012 3.946570e-002 pass 2000 2000 4 0.043 125.5055 4.536926e-012 3.946570e-002 pass 2000 2000 4 0.058 91.7913 4.536926e-012 3.946570e-002 pass 3000 3000 4 0.151 119.1956 8.334888e-012 3.209566e-002 pass 3000 3000 4 0.153 117.6245 8.334888e-012 3.209566e-002 pass 3000 3000 4 0.141 127.7614 8.334888e-012 3.209566e-002 pass 3000 3000 4 0.175 102.7084 8.334888e-012 3.209566e-002 pass 4000 4000 4 0.371 115.1468 1.519912e-011 3.312792e-002 pass 4000 4000 4 0.416 102.5799 1.519912e-011 3.312792e-002 pass 4000 4000 4 0.294 145.3543 1.519912e-011 3.312792e-002 pass 4000 4000 4 0.308 138.5620 1.519912e-011 3.312792e-002 pass 5000 5000 4 0.561 148.5110 2.471656e-011 3.446525e-002 pass 5000 5000 4 0.509 163.8585 2.471656e-011 3.446525e-002 pass 5000 5000 4 0.554 150.5717 2.471656e-011 3.446525e-002 pass 5000 5000 4 0.557 149.5816 2.471656e-011 3.446525e-002 pass 10000 10000 4 3.766 177.0737 9.436774e-011 3.327502e-002 pass 10000 10000 4 4.015 166.0853 9.436774e-011 3.327502e-002 pass 15000 15000 4 12.906 174.3740 2.169435e-010 3.416896e-002 pass 15000 15000 4 12.091 186.1307 2.169435e-010 3.416896e-002 pass 20000 20000 4 25.191 211.7482 3.504283e-010 3.102058e-002 pass 20000 20000 4 25.593 208.4220 3.504283e-010 3.102058e-002 pass 25000 25000 4 53.778 193.7201 5.345983e-010 3.040069e-002 pass 25000 25000 4 53.765 193.7694 1.495229e-008 8.502830e-001 pass Performance Summary (GFlops) Size LDA Align. Average Maximal 1000 1000 4 112.5382 124.8665 2000 2000 4 103.6230 125.5055 3000 3000 4 116.8225 127.7614 4000 4000 4 125.4108 145.3543 5000 5000 4 153.1307 163.8585 10000 10000 4 171.5795 177.0737 15000 15000 4 180.2524 186.1307 20000 20000 4 210.0851 211.7482 25000 25000 4 193.7447 193.7694 Residual checks PASSED End of tests

Visa signatur

Ryzen 7 3800X, Asus Prime X370 Pro, 32 GB LPX 3600, Gainward RTX 3060 Ti Ghost, 7 TB SSD + 4 TB HDD

Permalänk
Medlem

Ursäkta om nån stör sig på att jag tar upp en gammal tråd igen. Men linpack är ju vettigare och roligare än t.ex. Prime95.

En Haswell med AVX2 gör 16 flyttals operationer per klockcykel.
Så om du har 4 kärnor på 4.5GHz = 4*16*4.5 dvs 288GFlops i teoretisk maxprestanda. Ditt bästa resultat på 211.7482GFlop ger en effektivitet på (211/288=) 73.523 %

Vilket jag tycker är ganska lågt, men har ingen erfarenhet av linpack i windows Ett singel-socket Intel system bör inte ha några problem att komma över 95% om man lägger lite mer tid på att tweaka. Det bör inte finnas andra program som stör samtidigt och kan sno dyrbara klockcykler som stör benchmarket.
Sen bör man också ändra Problem size(Ns), på ett singel-socket bör man allokera så mycket som möjligt för bästa prestanda -> utan att swappa!