하나의 CPU에 다 수의 코어가 있는 제품들이 보편화되면서,
이 프로그램은 듀얼 코어/쿼드 코어를 지원합니다
하는 광고(?)멘트들이 난무하게 되었다. 이게 어떤 의미일까?
우리가 흔히 사용하는 많은 프로그램들은 기본적으로/전통적으로 “싱글 스레드”라고 부르는 한 번에 한 가지일만 처리하는 구조로 만들어져 있다. 그래서 CPU에 코어가 몇 개 있더라도 1개의 코어만 사용해서 실행된다. 이런 프로그램들의 경우 멀티 코어 CPU ((듀얼 코어/쿼드 코어/그 이상의 코어들… 현재 IBM에서는 16/32 core CPU를 발매한 상태다. 그리고 intel에선 쿼드 코어 CPU를 2개 꽂을 수 있는 데스크탑용 메인 보드를 출시한다. 즉 일반 사용자(좀 하드코어해야겠지만)가 8개의 코어를 쓰게되는 걸 곧 보게된다.))에서 더 빨라지진 않는다. 즉 CPU자체가 향상되는 부분만큼만 속도가 빨라지지 CPU 수가 늘어나는데서는 이익을 못본다.
물론 여러개의 응용 프로그램을 동시에 돌릴 때는 이익을 볼 수 있다. 각각의 프로그램에서 서로 다른 코어를 사용하면 되는 문제니까. 예전이라면 게임을 켜놓고 동영상을 보면서 웹 브라우징을 한다는 건 좀 괴로운 일에 속했는데, CPU 코어가 3개 이상이고(쿼드 코어라거나) — 그리고 각각이 싱글 스레드라면 — 메모리가 모자라지 않는다면 별 부담없이 할 수 있는 일이 된다.
반면에 요즘 나오기 시작한 프로그램들은 제한적인 의미에서 여러 개의 코어를 쓸 수 있는 경우가 있다. 즉 “여러 개의 스레드”를 동시에 사용해서 코어를 스레드 수 만큼까지는 쓸 수 있다는 것이다. 사실 이미 몇 가지 프로그램들에서는 제한적으로 이런 기능을 쓰고 있다. 예를 들어,
- 미디어 플레이어인 foobar 2000에서 MP3 포맷을 바꾸면 동시에 CPU 코어 수만큼 변환이 일어난다. 이렇게 동시에 해도 되는 작업을 코어 수만큼 실행하는 프로그램들은 많다. ((프로그래머들이 사용하는 대다수의 빌드 툴들은 사용하는 코어 수를 지정해 줄 수가 있다. VisualStudio 2005/2008의 경우 코어 수만큼 동시에 프로젝트를 빌드한다. makefile 유틸리티의 경우 -j 코어수 옵션으로 동시에 빌드할 파일의 수를 지정해줄 수 있다.))
- 많은 수의 워드프로세서에서는 스펠링 검사나 검색용 인덱스 생성을 조용히 뒷단에서 별도의 코어를 활용해서 수행한다.
- 요즘 나오는 게임들은 게임 화면을 표시하는 부분 / 게임 자체의 로직이나 물리 연산 / 데이터를 읽어들이는 부분을 서로 다른 스레드에서 동작하게 해서 여러 개의 코어를 동시에 사용한다.
같은 것들이 있다. 즉 이런 프로그램들의 경우 멀티 코어를 지원한다고 말하는 것인데, 약간의 성능향상이 있긴하다. ((첫번째 경우에는 CPU 수만큼 성능향상이 되지만 이런 경우는 매우 드물다))
즉, 광고는 이렇게 받아들여라.
- 멀티 코어를 지원한다 = 남는 CPU 코어가 있으면 좀 더 활용해서 빨라질 수도 있다
- 멀티 코어를 지원한다 ≠ 모든 코어를 활용한다 => 기껏해야 만든 스레드 수 만큼밖에 못쓰니 지금 4코어를 쓰는 프로그램이 16코어 CPU에서 더 빨라지는 것은 아니다.
- 멀티 코어를 지원하지 않는다 — 멀티 코어 CPU에서 동작하지 않는다는 얘기가 절대로 아니다. 단지 코어 수만큼 빨라지진 않을 거란 의미.
- 멀티 코어를 지원하지 않아도 여러 개의 프로그램을 동시에 쓰는 경우가 많다면 멀티 코어 CPU 는 충분히 매력적인 무언가다.
뭐 그런 의미다. 앞으로의 미래는 CPU 클럭이 올라가는 것보다는 멀티 코어에서 코어 수가 증가하는 방향이 될테니(적어도 향후 5년 이상은), 멀티 코어를 위한 프로그램들도 증가하긴 할 것이고, 크게 신경 쓸 문제는 아니다. 그러니 저런 광고에 낚이지도 말고, 지원하지 않는다는 말에 좌절하지도 말자 :D
그러니까…가령, 듀얼코어를 지원하지 않는 단일 프로그램일 경우, 코어1이 CPU점유율이 98~100에서 허덕여도 코어2는 쳐 주무신다는 얘기임? 하지만 프로그램을 다수 돌릴 경우 프로그램A가 코어1의 대부분을 점유하고 있다면 프로그램 B,C는 코어2에서 처리할 수 있다는 거니까..멀티태스킹엔 도움이 되도 사양 노맨허 게임 돌리는데는 그닥 효과가 크지 않다는거군효.
ㅇㅇ 그대로임.
근데 요즘 OS들은 Core 총합을 100%로 봐서 듀얼 코어면 단일 코어만 쓰는 프로그램은 50% 이상 못쓰는 것처럼 보임
MuzePod Deck : 새로운 시스템에 안착하다….
후…뭐 매트릭스까지 인용하지 않더라도 컴퓨터 없이 살기는 힘든 세상이 되었습니다. Μųźёноliс은 아마 아직 미국에서 꼬꼬마 쪼렙으로 살던 시절 386 기반 PC로 컴퓨터질을 시작한 것 같…