행렬 계산용 cpu

DKLee   
   조회 4705   추천 0    

안녕하세요. 

연구실에서 계산용컴퓨터를 사려고 하는데요 대략적인 예산은 500~600만(그래픽카드 제외) 입니다.


파이썬(numpy, scipy 등등..)으로 행렬(혹은 텐서)계산을 하는데요.

보통 행렬의 크기가 300*300부터해서 1500*1500 사이즈의 행렬들을 계산합니다. 

데이터들을 빠르게 얻고 싶으면 특히 cpu를 어떤식으로 맞추면 될지 궁금합니다. 


답글 남겨주시면 감사하겠습니다 ^^

짧은글 일수록 신중하게.
하셀호프 2019-10
행렬 계산용 cpu가 따로 있는 것은 아니구요
그냥 클럭 높은  cpu  사시면 됩니다
참고로 요사이는 행렬 계산은 gpu (cuda)를 많이 사용합니다

KSTAR 토카막 적용 사례
http://images.nvidia.com/content/gtc-kr/part_5_spinhalf.pdf
윤건 2019-10
Matrix 계산용이면 그냥 최신 CPU에 고클럭으로 가시면 됩니다.
MMX, SSE, AVX 등의 SIMD기술이 적용될수록 계산속도는 일반적으로 배로 빨라집니다.
numpy도 MKL을 이용하도록 되어있으면 병렬화되어서 코어수도 꽤 영향을 미칠겁니다.

GPGPU가 Matrix계산에서 많이 빠르긴 한데
Overhead때문에 CPU보다 계산이 빨라지는 사이즈가 일반적으로  ~1M(1024x1024) 정도라서
1500x1500까지의 계산정도는 그냥 CPU를 이용하는게 편할지도 모르겠습니다.

그리고 Heavy한 계산일 경우에는 파이썬보다는 C/C++ 또는 포트란을 사용하시는게 시간면에서 훨~~~~씬 유리합니다.
     
쓰레기단장 2019-10
음... 행렬사이즈가 클수록 오버헤드가 커진다는 건 좀 이상합니다.
gpgpu에서 오버헤드는 보통 계산데이터를 메인 메모리 -> GPU메모리로 올리는 레이턴시와 그 반대로 계산끝난 결과를 gpu에서 다시 메인메모리로 올리는 레이턴시를 말하는데, 당연히 한 번에 많은 행렬계산을 하는 게 효율이 좋거든요. fp32라면 1500x1500 해봤자 9메가바이트밖에 안됩니다. 요즘 비디오 카드들메모리가 8기가는 기본으로 깔고 가는지라 저런 행렬 수백개는 연산하고도 남을 것 같아요. (이론상 8기가면 950개 정도 들어가네요. 아웃풋 행렬도 저장해야 하니까 대략 600개 정도는 한 번에 계산 가능하다고 볼 수 있겠습니다.) 물론 한계라는 게 존재하긴 하지만 그래도 충분한 수준입니다. 그리고 파이선 쓰신다면 당연히 텐서플로우 쓰실텐데, 텐서플로우 GPU세팅이 좀 까다롭긴 합니다만 한번 해 놓고 나면  간단한 API호출로도 충분히 가속을 받을 수 있으므로 굳이 C++을 쓸 필요는 없다고 생각합니다.
          
윤건 2019-10
반대로 이해하신듯합니다만...
오버헤드때문에 일정사이즈 이상이 되어야만 GPGPU를 이용한 연산이 CPU연산보다 더 빠르다고 한 이야기였습니다.
1500x1500 ~ 2.5M 정도이긴 하지만 예를 들어 CPU로 2초짜리 연산이 GPU로 1초 연산이 되는 정도는 그냥 CPU 연산이 편하다고 생각합니다.
물론 2시간 짜리가 1시간이 되는 것은 다른 이야기 이지요...
               
쓰레기단장 2019-10
[Overhead때문에 CPU보다 계산이 빨라지는 사이즈가 일반적으로  ~1M(1024x1024) 정도라서]
라고 하셔서 1M까지라고 생각했습니다. 제가 반대로 이해한 게 아닌 것 같아요.

[Overhead때문에 CPU보다 계산이 빨라지는 사이즈가 일반적으로  1M(1024x1024)~ 부터라서]
로 쓰시는 게 맞는 것 같습니다.
                    
윤건 2019-10
오해의 여지가 있도록 해서 죄송합니다.
저는 "~1M"의 의미를 "백만 까지"가 아니라 "대략 백만"의 의미로 사용한 것이었습니다.


QnA
제목Page 3868/5710
2014-05   5160258   정은준1
2015-12   1694501   백메가
2017-11   4227   오티스
2021-02   4227   yollman
2016-09   4227   늘파란
2015-07   4227   seok
2016-11   4227   전설속의미…
2015-11   4227   e5472
2018-04   4227   Dustin
2022-10   4227   nubian
2016-05   4227   wdm42
2017-01   4227   2nd클래스
2015-08   4227   머라카는데
2014-07   4226   방o효o문
2017-10   4226   으라차차차
2015-09   4226   python
2021-05   4226   보탕
2015-12   4226   한철희
2017-07   4226   허인구마틴
2018-04   4226   애송이
2015-03   4226   나비z
2015-08   4226   jack33