이 블로그 검색

2018년 2월 23일 금요일

OpenMP 인텔 컴퓨터에 성능 최적화 할때, HT보다는 Real Core 수에 맞추도록 하라.




$ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 94
model name      : Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
stepping        : 3
microcode       : 0xba
cpu MHz         : 3400.000
cache size      : 8192 KB
physical id     : 0
siblings        : 8
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes

내가 사용하는 컴퓨터이다. 이놈을 가지고 일을 하는데, 코어 4개까지는 어떻게 속도가 급속도로 올라가는데, 그 이상에서는 오히려  속도가 감소하는 경향이 나타났다. 


인텔 하이퍼스레드 기술이 어떻게 이루어지는건지 모르겠지만, 실수계산이 매우 많은 순간에는 저 하이퍼스레딩 기술이 발목을 잡는 것 같다. 

amd의 불도저 cpu의 경우도 1모듈 2코어란 말을 썼으나 실상은 1실수 + 2 정수 연산이었는데 인텔도 내부구조는 어떨지 모르겠지만 추상적으로는 같은 방향인듯하다.  

관련해서 검색해보니... 수치해석을 할 때는 하이퍼 쓰레기가 되므로 아예 HT는 끄는 방향으로 가라고 권유를 해준다. 

오케이 땡큐.

가장 많이 본 글