LINUX.ORG.RU

История изменений

Исправление praseodim, (текущая версия) :

А что тестировалось то? Работа системы охлаждения?

Производительность с оптимизированной под Intel программой. Учитывая, что программы, оптимизированные под AMD - это редкость, достаточно актуально

Я сделал export MKL_DEBUG_CPU_TYPE=5 и не скажу, что результат как-то сильно отличается, хотя немного вырос. Заодно я не стал патчить вторую проверку в бинарнике, видимо отказ генерирует только 1-я.

$ ./xlinpack_xeon64 -i lininput_xeon64
Sample data file lininput_xeon64.

Current date/time: Sun May  3 12:35:47 2020

CPU frequency:    4.290 GHz
Number of CPUs: 1
Number of cores: 12
Number of threads: 12

Parameters are set to:

Number of tests: 15
Number of equations to solve (problem size) : 1000  2000  5000  10000 15000 18000 20000 22000 25000 26000 27000 30000 35000 40000 45000
Leading dimension of array                  : 1000  2000  5008  10000 15000 18008 20016 22008 25000 26000 27000 30000 35000 40000 45000
Number of trials to run                     : 4     2     2     2     2     2     2     2     2     2     1     1     1     1     1    
Data alignment value (in Kbytes)            : 4     4     4     4     4     4     4     4     4     4     4     1     1     1     1    

Maximum memory requested that can be used=16200901024, at the size=45000

=================== Timing linear equation system solver ===================

Size   LDA    Align. Time(s)    GFlops   Residual     Residual(norm) Check
1000   1000   4      0.007      101.5310 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      151.5913 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.7105 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.3868 1.029732e-12 3.511650e-02   pass
2000   2000   4      0.018      297.0534 3.991266e-12 3.471912e-02   pass
2000   2000   4      0.017      317.7125 3.991266e-12 3.471912e-02   pass
5000   5008   4      0.183      455.8109 2.436845e-11 3.397984e-02   pass
5000   5008   4      0.178      469.2654 2.436845e-11 3.397984e-02   pass
10000  10000  4      1.312      508.2806 9.326587e-11 3.288649e-02   pass
10000  10000  4      1.306      510.7859 9.326587e-11 3.288649e-02   pass
15000  15000  4      4.375      514.3553 2.066112e-10 3.254161e-02   pass
15000  15000  4      4.380      513.7584 2.066112e-10 3.254161e-02   pass
18000  18008  4      7.560      514.3747 3.038254e-10 3.327262e-02   pass
18000  18008  4      7.534      516.1403 3.038254e-10 3.327262e-02   pass
20000  20016  4      10.281     518.8268 3.709001e-10 3.283278e-02   pass
20000  20016  4      10.216     522.1393 3.709001e-10 3.283278e-02   pass
22000  22008  4      13.647     520.2415 4.439795e-10 3.251975e-02   pass
22000  22008  4      13.634     520.7464 4.439795e-10 3.251975e-02   pass
25000  25000  4      19.902     523.4641 5.712425e-10 3.248451e-02   pass
25000  25000  4      19.918     523.0524 5.712425e-10 3.248451e-02   pass
26000  26000  4      22.228     527.1996 6.026815e-10 3.169080e-02   pass
26000  26000  4      22.344     524.4585 6.026815e-10 3.169080e-02   pass
27000  27000  4      24.815     528.8495 6.825751e-10 3.328583e-02   pass
30000  30000  1      34.289     525.0005 8.257446e-10 3.255094e-02   pass
35000  35000  1      54.065     528.7277 1.073374e-09 3.115842e-02   pass
40000  40000  1      78.988     540.2037 1.536346e-09 3.416886e-02   pass
45000  45000  1      111.951    542.6855 1.823860e-09 3.208890e-02   pass

Performance Summary (GFlops)

Size   LDA    Align.  Average  Maximal
1000   1000   4       140.5549 154.7105
2000   2000   4       307.3829 317.7125
5000   5008   4       462.5382 469.2654
10000  10000  4       509.5332 510.7859
15000  15000  4       514.0569 514.3553
18000  18008  4       515.2575 516.1403
20000  20016  4       520.4831 522.1393
22000  22008  4       520.4940 520.7464
25000  25000  4       523.2582 523.4641
26000  26000  4       525.8291 527.1996
27000  27000  4       528.8495 528.8495
30000  30000  1       525.0005 525.0005
35000  35000  1       528.7277 528.7277
40000  40000  1       540.2037 540.2037
45000  45000  1       542.6855 542.6855

Residual checks PASSED

End of tests

https://www.pugetsystems.com/labs/hpc/How-To-Use-MKL-with-AMD-Ryzen-and-Threa...

Для сравнения интереснее другая статья там же

https://www.pugetsystems.com/labs/hpc/AMD-Ryzen-3950x-Compute-Performance-Lin...

Из нее видно, что у меня с интеловской программой и интеловской библиотекой MKL вышло вровень или даже чуть быстрее(!!!), чем у него с AMD-ными библиотеками и оптимизацией под Zen2. 542 GFlops моих супротив 539 GFlops его, впрочем.

Впрочем, без MKL_DEBUG_CPU_TYPE=5 разница не в мою пользу. 516 GFlops против 539. Как я понял, эта переменная включает AVX2. Прирост получается на 5% где-то.

P.S. Про систему охлаждения. Этот тест на короткое время разогревал ядра до 82 градусов, судя по Zenmonitor, хотя в среднем где-то было в течение теста 75-77. Даже не знаю хорошо или плохо. wPrime, кстати, сумел разогреть до 90 градусов. При этом температуры, частоты, и напряжения все время скачут.

Исправление praseodim, :

А что тестировалось то? Работа системы охлаждения?

Производительность с оптимизированной под Intel программой. Учитывая, что программы, оптимизированные под AMD - это редкость, достаточно актуально

Я сделал export MKL_DEBUG_CPU_TYPE=5 и не скажу, что результат как-то сильно отличается, хотя немного вырос. Заодно я не стал патчить вторую проверку в бинарнике, видимо отказ генерирует только 1-я.

$ ./xlinpack_xeon64 -i lininput_xeon64
Sample data file lininput_xeon64.

Current date/time: Sun May  3 12:35:47 2020

CPU frequency:    4.290 GHz
Number of CPUs: 1
Number of cores: 12
Number of threads: 12

Parameters are set to:

Number of tests: 15
Number of equations to solve (problem size) : 1000  2000  5000  10000 15000 18000 20000 22000 25000 26000 27000 30000 35000 40000 45000
Leading dimension of array                  : 1000  2000  5008  10000 15000 18008 20016 22008 25000 26000 27000 30000 35000 40000 45000
Number of trials to run                     : 4     2     2     2     2     2     2     2     2     2     1     1     1     1     1    
Data alignment value (in Kbytes)            : 4     4     4     4     4     4     4     4     4     4     4     1     1     1     1    

Maximum memory requested that can be used=16200901024, at the size=45000

=================== Timing linear equation system solver ===================

Size   LDA    Align. Time(s)    GFlops   Residual     Residual(norm) Check
1000   1000   4      0.007      101.5310 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      151.5913 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.7105 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.3868 1.029732e-12 3.511650e-02   pass
2000   2000   4      0.018      297.0534 3.991266e-12 3.471912e-02   pass
2000   2000   4      0.017      317.7125 3.991266e-12 3.471912e-02   pass
5000   5008   4      0.183      455.8109 2.436845e-11 3.397984e-02   pass
5000   5008   4      0.178      469.2654 2.436845e-11 3.397984e-02   pass
10000  10000  4      1.312      508.2806 9.326587e-11 3.288649e-02   pass
10000  10000  4      1.306      510.7859 9.326587e-11 3.288649e-02   pass
15000  15000  4      4.375      514.3553 2.066112e-10 3.254161e-02   pass
15000  15000  4      4.380      513.7584 2.066112e-10 3.254161e-02   pass
18000  18008  4      7.560      514.3747 3.038254e-10 3.327262e-02   pass
18000  18008  4      7.534      516.1403 3.038254e-10 3.327262e-02   pass
20000  20016  4      10.281     518.8268 3.709001e-10 3.283278e-02   pass
20000  20016  4      10.216     522.1393 3.709001e-10 3.283278e-02   pass
22000  22008  4      13.647     520.2415 4.439795e-10 3.251975e-02   pass
22000  22008  4      13.634     520.7464 4.439795e-10 3.251975e-02   pass
25000  25000  4      19.902     523.4641 5.712425e-10 3.248451e-02   pass
25000  25000  4      19.918     523.0524 5.712425e-10 3.248451e-02   pass
26000  26000  4      22.228     527.1996 6.026815e-10 3.169080e-02   pass
26000  26000  4      22.344     524.4585 6.026815e-10 3.169080e-02   pass
27000  27000  4      24.815     528.8495 6.825751e-10 3.328583e-02   pass
30000  30000  1      34.289     525.0005 8.257446e-10 3.255094e-02   pass
35000  35000  1      54.065     528.7277 1.073374e-09 3.115842e-02   pass
40000  40000  1      78.988     540.2037 1.536346e-09 3.416886e-02   pass
45000  45000  1      111.951    542.6855 1.823860e-09 3.208890e-02   pass

Performance Summary (GFlops)

Size   LDA    Align.  Average  Maximal
1000   1000   4       140.5549 154.7105
2000   2000   4       307.3829 317.7125
5000   5008   4       462.5382 469.2654
10000  10000  4       509.5332 510.7859
15000  15000  4       514.0569 514.3553
18000  18008  4       515.2575 516.1403
20000  20016  4       520.4831 522.1393
22000  22008  4       520.4940 520.7464
25000  25000  4       523.2582 523.4641
26000  26000  4       525.8291 527.1996
27000  27000  4       528.8495 528.8495
30000  30000  1       525.0005 525.0005
35000  35000  1       528.7277 528.7277
40000  40000  1       540.2037 540.2037
45000  45000  1       542.6855 542.6855

Residual checks PASSED

End of tests

https://www.pugetsystems.com/labs/hpc/How-To-Use-MKL-with-AMD-Ryzen-and-Threa...

Для сравнения интереснее другая статья там же

https://www.pugetsystems.com/labs/hpc/AMD-Ryzen-3950x-Compute-Performance-Lin...

Из нее видно, что у меня с интеловской программой и интеловской библиотекой MKL вышло вровень или даже чуть быстрее(!!!), чем у него с AMD-ными библиотеками и оптимизацией под Zen2. 542 GFlops моих супротив 539 GFlops его, впрочем.

Впрочем, без MKL_DEBUG_CPU_TYPE=5 разница не в мою пользу. 516 GFlops против 539. Как я понял, эта переменная включает AVX2. Прирост получается на 5% где-то.

Исходная версия praseodim, :

А что тестировалось то? Работа системы охлаждения?

Производительность с оптимизированной под Intel программой. Учитывая, что программы, оптимизированные под AMD - это редкость, достаточно актуально

Я сделал export MKL_DEBUG_CPU_TYPE=5 и не скажу, что результат как-то сильно отличается, хотя немного вырос. Заодно я не стал патчить вторую проверку в бинарнике, видимо отказ генерирует только 1-я.

$ ./xlinpack_xeon64 -i lininput_xeon64
Sample data file lininput_xeon64.

Current date/time: Sun May  3 12:35:47 2020

CPU frequency:    4.290 GHz
Number of CPUs: 1
Number of cores: 12
Number of threads: 12

Parameters are set to:

Number of tests: 15
Number of equations to solve (problem size) : 1000  2000  5000  10000 15000 18000 20000 22000 25000 26000 27000 30000 35000 40000 45000
Leading dimension of array                  : 1000  2000  5008  10000 15000 18008 20016 22008 25000 26000 27000 30000 35000 40000 45000
Number of trials to run                     : 4     2     2     2     2     2     2     2     2     2     1     1     1     1     1    
Data alignment value (in Kbytes)            : 4     4     4     4     4     4     4     4     4     4     4     1     1     1     1    

Maximum memory requested that can be used=16200901024, at the size=45000

=================== Timing linear equation system solver ===================

Size   LDA    Align. Time(s)    GFlops   Residual     Residual(norm) Check
1000   1000   4      0.007      101.5310 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      151.5913 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.7105 1.029732e-12 3.511650e-02   pass
1000   1000   4      0.004      154.3868 1.029732e-12 3.511650e-02   pass
2000   2000   4      0.018      297.0534 3.991266e-12 3.471912e-02   pass
2000   2000   4      0.017      317.7125 3.991266e-12 3.471912e-02   pass
5000   5008   4      0.183      455.8109 2.436845e-11 3.397984e-02   pass
5000   5008   4      0.178      469.2654 2.436845e-11 3.397984e-02   pass
10000  10000  4      1.312      508.2806 9.326587e-11 3.288649e-02   pass
10000  10000  4      1.306      510.7859 9.326587e-11 3.288649e-02   pass
15000  15000  4      4.375      514.3553 2.066112e-10 3.254161e-02   pass
15000  15000  4      4.380      513.7584 2.066112e-10 3.254161e-02   pass
18000  18008  4      7.560      514.3747 3.038254e-10 3.327262e-02   pass
18000  18008  4      7.534      516.1403 3.038254e-10 3.327262e-02   pass
20000  20016  4      10.281     518.8268 3.709001e-10 3.283278e-02   pass
20000  20016  4      10.216     522.1393 3.709001e-10 3.283278e-02   pass
22000  22008  4      13.647     520.2415 4.439795e-10 3.251975e-02   pass
22000  22008  4      13.634     520.7464 4.439795e-10 3.251975e-02   pass
25000  25000  4      19.902     523.4641 5.712425e-10 3.248451e-02   pass
25000  25000  4      19.918     523.0524 5.712425e-10 3.248451e-02   pass
26000  26000  4      22.228     527.1996 6.026815e-10 3.169080e-02   pass
26000  26000  4      22.344     524.4585 6.026815e-10 3.169080e-02   pass
27000  27000  4      24.815     528.8495 6.825751e-10 3.328583e-02   pass
30000  30000  1      34.289     525.0005 8.257446e-10 3.255094e-02   pass
35000  35000  1      54.065     528.7277 1.073374e-09 3.115842e-02   pass
40000  40000  1      78.988     540.2037 1.536346e-09 3.416886e-02   pass
45000  45000  1      111.951    542.6855 1.823860e-09 3.208890e-02   pass

Performance Summary (GFlops)

Size   LDA    Align.  Average  Maximal
1000   1000   4       140.5549 154.7105
2000   2000   4       307.3829 317.7125
5000   5008   4       462.5382 469.2654
10000  10000  4       509.5332 510.7859
15000  15000  4       514.0569 514.3553
18000  18008  4       515.2575 516.1403
20000  20016  4       520.4831 522.1393
22000  22008  4       520.4940 520.7464
25000  25000  4       523.2582 523.4641
26000  26000  4       525.8291 527.1996
27000  27000  4       528.8495 528.8495
30000  30000  1       525.0005 525.0005
35000  35000  1       528.7277 528.7277
40000  40000  1       540.2037 540.2037
45000  45000  1       542.6855 542.6855

Residual checks PASSED

End of tests

https://www.pugetsystems.com/labs/hpc/How-To-Use-MKL-with-AMD-Ryzen-and-Threa...

Для сравнения интереснее другая статья там же

https://www.pugetsystems.com/labs/hpc/AMD-Ryzen-3950x-Compute-Performance-Lin...

Из нее видно, что у меня с интеловской программой вышло вровень или даже чуть быстрее(!!!), чем у него с оптимизацией под Zen2. 542 GFlops моих супротив 539 GFlops его, впрочем.

Впрочем, без MKL_DEBUG_CPU_TYPE=5 разница не в мою пользу. 516 GFlops против 539. Как я понял, эта переменная включает AVX2. Прирост получается на 5% где-то.