본문

최근방문

[참고] 인텔의 Math Kernel Library 라이브러리 AMD 최적화 수정 후 벤치 [20]





[광고]
글꼴

Python numpy "norm of matrix product"계산에 MKL, MKL_DEBUG_CPU_TYPE = 5 및 OpenBLAS를 사용한 Threadripper 3960x, Ryzen 3900X 및 Xeon 2175W 성능


 

numpy는 Python에서 가장 일반적으로 사용되는 수치 컴퓨팅 패키지입니다. 

 

이 테스트에서 제시된 계산은 매우 간단하지만 계산 집약적입니다. 

 

수많은 성능을 제공하는 BLAS 라이브러리를 활용합니다. 

 

이 경우 Intel MKL (기본값) 및 OpenBLAS (다음 섹션에서 설명)와 연결된 numpy에 대해 "envs"설정과 함께 Anaconda Python을 사용합니다.

 

pic_disp.jpeg.jpg

 

그 결과를보고 잠시 생각해보십시오 ... 뛰어난 기능은 차트에서 최상의 결과는 varMKL_DEBUG_CPU_TYPE = 5 환경에서 MKL을 사용하는 TR 3960x에 대한 것입니다. 

 

 그리고 MKL 단독의 낮은 최적화 코드 경로보다 훨씬 낫습니다.  AND, OpenBLAS는 MKL_DEBUG_CPU_TYPE = 5가 설정된 MKL과 거의 비슷합니다.

 

MKL은 Intel CPU에서 엄청난 성능 최적화를 제공합니다. 테스트 작업은이 OpenBLAS 버전에서 사용할 수없는 AVX512 최적화의 이점을 확실히 누리고 있습니다.

 

 OpenBLAS는 AVX2 수준까지 우수한 최적화를 제공하여 성능 차이를 상당히 높입니다.  (2175W는 Ryzen 3900X에서는 14 코어 vs 12 코어, TR 3960x에서는 24 코어입니다.)

 

 MKL이 AMD CPU에 사용하는 낮은 최적화 코드 경로는 성능을 저하시킵니다.

 

이 테스트는 하드웨어 특정 코드 최적화의 효과를 명확하게 보여줍니다.  꽤 합성입니다!  실제로는 프로그램이 더 복잡하고 일반적으로 AVX를 이용하는 벡터화와 관련하여 완전히 최적화 된 곳이 아닙니다.  특정 아키텍처를 겨냥하지 않은 일반적인 숫자 라이브러리도 있습니다.  예를 들어, 인기 있고 매우 좋은 C ++ 부스트 라이브러리 제품군입니다.



- 구글번역

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

 해당 문제는 

 

https://m.clien.net/service/board/park/14352836?type=recommend

https://m.ruliweb.com/pc/board/300006/read/2199991?

 

참조



댓글 | 20
1


BEST
라이젠의 경우 매트랩같은 프로그램에서 성능이 안나오는 문제가 있었는데 알고보니 저게 MKL에서 라이젠이 SSE2까지만 사용가능하게 만들어져있던게 원인으로 밝혀짐 유저들이 트윅을 통해 AVX2를 강제로 활성화시키니 바로 4배가량의 성능향상이 확인되었다고
19.12.03 16:55
BEST
쓰레드리퍼 3960X 24코어 수정전 55.6 수정후 13.8
19.12.03 16:49
BEST
네???;;
19.12.03 17:58
BEST
https://software.intel.com/en-us/mkl https://software.intel.com/en-us/articles/optimization-notice#opt-en mkl가보면 다 적혀있어요. 지원은 자사 cpu뿐이고 타회사 프로세서는 제대로 지원 안한다고. mkl이 amd 삐걱대는게 하루이틀 일도 아니었고, 저런 계산 최적화가 쉬운일도 아닌데 충분히 그럴 권리가 있죠. 저 링크도 끝에보면 인텔이 이 설정 없앨 권리가 충분히 있고 amd 유저라면 BLIS를 쓰자가 결론인데요?
19.12.03 19:04
(525992)

131.187.***.***

BEST
인텔이 mkl최적화 하는데 어떤 일을 했는지 알면 저런소리 못하지 ㅎㅎ
19.12.04 02:08
성능 대폭발!
19.12.03 16:33
(1742706)

175.223.***.***

수정전과 후비교하려면뭘 보면 될까요?
19.12.03 16:33
(4369296)

175.223.***.***

파이올렛
첫번째가 디버그니 밑에서 두번째 비교하면 되겠네요. | 19.12.03 16:38 | | |
BEST
파이올렛
쓰레드리퍼 3960X 24코어 수정전 55.6 수정후 13.8 | 19.12.03 16:49 | | |
BEST
라이젠의 경우 매트랩같은 프로그램에서 성능이 안나오는 문제가 있었는데 알고보니 저게 MKL에서 라이젠이 SSE2까지만 사용가능하게 만들어져있던게 원인으로 밝혀짐 유저들이 트윅을 통해 AVX2를 강제로 활성화시키니 바로 4배가량의 성능향상이 확인되었다고
19.12.03 16:55
(3163484)

61.105.***.***

웨이스트랜드
와우! 엄청난건데;;; | 19.12.03 17:24 | | |
인텔하는짓이 얄밉긴한데 라이브러리 자체가 intel math kernel library인것을... =_= 완전 오픈소스도 아니고 사서쓰는 라이브러리에요.
19.12.03 16:58
백에이커의숲
사서쓰는거면 더욱더 잘만들어야하는거 아닌가요; 최소한 AMD환경에서 나쁘다고 말은 해줘야죠. | 19.12.03 17:30 | | |
(4832181)

99.203.***.***

루리웹-8021269694
인텔에서 자사칩셋에서 잘돌아가게 돈들여서 개발한걸 경쟁사를 위해서도 오픈하라는건 AMD 소비자들의 욕심이죠. AMD도 돈들여서 비슷한 라이브러리 개발해서 공개하면 될일 입니다. | 19.12.03 17:51 | | |
BEST
루리웹-8021269694
네???;; | 19.12.03 17:58 | | |
루리웹-8021269694
AMD는 자사 최적화 라이브러리인 BLIS라고 있습니다. 근데 왜 안쓰는지는 AMD만이 알겠죠 ㅎ | 19.12.03 18:42 | | |
스펀지밥
그분이 얘기하는건 amd에서도 돌아가게 만들어 달라는게 아니라 라이브러리 구입자에게 성능 관련한 내용을 먼저 알려줘야 맞는게 아니였까 라는거 같은데요 | 19.12.03 18:48 | | |
(988026)

223.38.***.***

numpy.__config__.show() 로 백엔드 확인가능합니다
19.12.03 17:16
(1300081)

183.96.***.***

인텔 cpu가 아니면 벡터연산을 제대로 사용하지 않는 듯
19.12.03 17:26
(2639760)

175.223.***.***

암드가 이런데서 건너야 될 산이 아직 많네
19.12.03 18:33
AMD cpu를 사용할시 openblas를 사용하도록 하던가 계산 프로그램단에서 바꿔줘야하는데 mkl을 그대로 사용하려고 하면 문제가 생기죠...
19.12.03 18:52
BEST
https://software.intel.com/en-us/mkl https://software.intel.com/en-us/articles/optimization-notice#opt-en mkl가보면 다 적혀있어요. 지원은 자사 cpu뿐이고 타회사 프로세서는 제대로 지원 안한다고. mkl이 amd 삐걱대는게 하루이틀 일도 아니었고, 저런 계산 최적화가 쉬운일도 아닌데 충분히 그럴 권리가 있죠. 저 링크도 끝에보면 인텔이 이 설정 없앨 권리가 충분히 있고 amd 유저라면 BLIS를 쓰자가 결론인데요?
19.12.03 19:04
(574415)

123.212.***.***

루리웹-8073638431
유명한 이야긴데, 인텔은 자사 컴파일러에서 그럴 권리(자사 소프트웨어니 Intel에 최적화된 결과를 낼 권리)가 있다고 주장하다가 FTC에서 시정명령을 받은 적 있습니다. 10년쯤 전 일이고요. 라이브러리 관련으로도 분쟁이 붙으면 유사한 결론이 날 거예요. | 19.12.03 23:33 | | |
(4979929)

223.62.***.***

압록강
그게 어쨌든 시정하라는 원론적인 이야기이지 강제성이 있는 사항이 아니라서 인텔이 굳이 해줄 이유가 있나 싶네요 얄밉지만 어쨌든 자사 기술이니 아쉬우면 amd도 직접 개발해서 배포하던가 해야겠죠 | 19.12.04 14:15 | | |
(525992)

131.187.***.***

BEST
인텔이 mkl최적화 하는데 어떤 일을 했는지 알면 저런소리 못하지 ㅎㅎ
19.12.04 02:08


1


댓글은 로그인 후 이용 가능합니다.




ID 구분 제목 글쓴이 추천 조회 날짜
777 전체공지 '프로젝트 O2' 발표회 실황 8[RULIWEB] 2019.12.14
352195 공지 국내외 언론 및 웹진 불펌 금지. 관리자 2 8595 2010.06.22
2200875 ETC 야만의파도 11 2710 17:48
2200868 ETC 이햇성 799 15:25
2200867 ETC 이햇성 2 2796 15:23
2200866 S/W 사쿠라모리 카오리P 4 1924 15:01
2200865 S/W 사쿠라모리 카오리P 1 271 15:00
2200861 S/W 사쿠라모리 카오리P 1 4335 13:37
2200856 ETC 사쿠라모리 카오리P 1234 08:51
2200851 S/W 루리웹-9949658347 11 8925 01:03
2200848 ETC 루리웹-8324431290 7 4790 2019.12.14
2200841 ETC 사쿠라모리 카오리P 2163 2019.12.14
2200840 S/W 340456694 18 15325 2019.12.14
2200836 ETC 사쿠라모리 카오리P 1 615 2019.12.14
2200835 ETC 사쿠라모리 카오리P 778 2019.12.14
2200806 ETC 이햇성 1 4188 2019.12.14
2200805 ETC 이햇성 4 2627 2019.12.14
2200803 S/W 사쿠라모리 카오리P 957 2019.12.14
2200800 ETC 야만의파도 6 3272 2019.12.14
2200799 ETC 사쿠라모리 카오리P 4 4007 2019.12.14
2200785 ETC 이햇성 2 6047 2019.12.13
2200784 H/W 춘리허벅지 11 9646 2019.12.13
2200783 참고 춘리허벅지 1 4021 2019.12.13
2200782 ETC 사쿠라모리 카오리P 1 1710 2019.12.13
2200772 ETC 오버테크 10 7076 2019.12.13
2200758 ETC 이햇성 3 6991 2019.12.13
2200757 ETC 이햇성 1938 2019.12.13
2200756 ETC 이햇성 1 1135 2019.12.13
2200753 ETC 사쿠라모리 카오리P 3060 2019.12.13
2200749 S/W 사쿠라모리 카오리P 1972 2019.12.13

글쓰기 27536개의 글이 있습니다.


1 2 3 4 5 6 7 8 9 10



X