멀티 코어
멀티 코어 또는 멀티 코어 프로세서(multi-core processor) CPU는 두 개 이상의 독립 코어를 단일 집적 회로로 이루어진 하나의 패키지로 통합한 것이다. 칩 레벨 멀티프로세서(CMP)라고도 한다.
듀얼 코어(dual-core) 프로세서는 두 개의 코어를 포함하고 있으며, 트리플 코어(triple-core) 프로세서는 세 개의 코어를 포함하고 있고, 쿼드 코어(quad-core)는 네 개의 코어를 포함하고 있고, 헥사 코어(hexa-core) 프로세서는 여섯 개의 코어를 포함하고 있다. 옥타 코어(octa-core) 프로세서는 여덟 개의 코어를 포함하고 있다. 데카코어(deca-core) 프로세서는 열 개의 코어를 포함하고 있다. 도데카 코어(dodeca-core) 프로세서는 열두 개의 코어를 포함하고 있다.
멀티 코어 마이크로프로세서는 멀티프로세서 기능을 단일 물리 패키지에 추가하였다. 하나의 다이에 모든 코어를 가진 프로세서를 모놀리식 프로세서(Monolithic Processor)라고 부른다. 멀티 코어 장치 안의 코어는 하나로 연결된 캐시를 최고 수준의 장치 캐시 수준에서 공유할 수 있으며(이를테면 인텔 코어 2의 2차 캐시), 두 개의 캐시(이를테면 AMD 듀얼 코어 프로세서)를 가질 수도 있다. 각 코어는 슈퍼스칼라 실행, 파이프라인 처리, 멀티스레딩과 같은 최적화를 독립적으로 수행한다. 코어의 개수에 따라, 그 개수만큼의 스레드를 동시에 처리할 때 효율적으로 동작한다. 상업적으로 가장 중요한 멀티 코어 프로세서들은 컴퓨터(주로 인텔, AMD)와 게임기(플레이스테이션 3의 셀 프로세서)에서 사용된다. 문맥상 "멀티"(multi)는 보통 상대적으로 작은 수의 코어를 뜻한다. 그러나 이 기술은 네트워크 프로세서, 디지털 신호 처리장치, 그래픽 처리 장치와 같은 임베디드 프로세서 등의 다른 기술 분야에도 널리 쓰인다.
멀티 코어 프로세서
멀티 코어 프로세서(multi-core processor), 전력요청과 비효율적인 하드웨어 증대를 줄일 수 있는 또 하나의 방법은 멀티코어 프로세서를 이용하는 것이다. 멀티코어 프로세서는 2개 이상의 프로세서를 포함한 집적회로이다. 과거에 칩 생산자는 몇 메가헤르츠에서 기가헤르츠까지 주파수를 늘리는 방식으로 프로세서의 속도를 증가시켰다. 그러나 이런 전략은 높은 기가헤르츠 칩에 수냉각이 필요할 정도로 열과 전력 소모 모두를 증대시켰다. 멀티 코어 프로세서는 2개 이상의 느린 프로세서를 하나의 칩에 결합한다. 이 기술은 파워가 증가되고, 열 손실이 감소한 2개의 프로세싱 엔진이 프로세싱 코어가 하나인 자원이 부족한 칩보다 더 빠르게 작업을 수행할 수 있도록 해준다.
현재 인텔이나 AMD 같은 회사는 멀티 코어 마이크로프로세서를 생산하며 쿼드 코어 프로세서를 출시하였다. 도쿄기술 협회는 일본에서 가장 큰 슈퍼컴퓨터를 구축하려고 듀얼 코어 프로세서를 이용하였다. 이 기관이 단일 코어 프로세서를 이용했다면 현재 시설의 2배 규모인 데이터 센터가 필요하고 거의 2배에 달하는 열을 발생했을 것이다. 듀얼 코어는 단일 코어를 구현하는데 필요한 서버 수의 절반으로도 구현할 수 있으며, 관리할 시스템 수도 적어 유지·보수비용이 적게 든다.[1]
개요
이 기술은 여러 개의 CPU 코어를 하나의 다이에 집적하는 경우, 프로세스 규칙을 바꾸지 않으면 장착된 CPU 코어의 수에 비례하여 다이가 커지게 된다. 면적이 늘면 급수적으로 제조 불량률도 늘어나는 경우가 있기에 제조 측면에서는 불편한 점이 있다.
병렬 연산에 맞는 프로그래밍이 필요하므로 소프트웨어의 개발이 어려워지긴 하지만, 운영체제나 미들웨어 등이 병렬 처리를 지원하면 소프트웨어 개발이 쉬워지는 경우가 있다. 멀티 프로세서와 호환되는 프로세서의 멀티 코어 개발은 비교적 간단하다.
개인용 컴퓨터는 소비 전력, 발열, 소음이 높아지는 제약, 클럭 주파수가 높아지지만 그에 따른 효과는 크지 않은 이유 등에 따라, 멀티 코어 기술을 사용하게 된다. 멀티 코어는 소비 전력과 발열을 낮추는 것을 목적으로, 코어마다 동작 전압이나 클럭 속도를 임의로 제어하며 유휴(idle) 상태를 포함한 동작 상태를 제어하는 제품도 있다.
멀티 코어와 비슷한 기술로 동시 멀티스레딩(SMT)이 있다.(이를테면 인텔의 하이퍼스레딩에서 사용하는 기술이다.) 이것은 하나의 CPU를 외부로부터 2개처럼 보이게 한다는 점에서는 같지만, 실제로 존재하는 코어는 싱글 코어라는 점에서 멀티 코어 기술과 근본적으로 다르다.
용어
주로 쓰이는 용어는 다음과 같다..
- 다이: 실리콘, 회로판 위에 반도체 회로를 만들어서 사각형으로 잘라낸 것이다. 반도체 산업에서 공정이 끝난 회로판이나 다이의 생산까지가 메인스트림 공정이며, 테스트와 패키지 봉입이 다운스트림 공정이 된다. 반도체를 생산하는 대기업에서 자체 생산을 하는 경우가 있지만, 다운스트림 공정은 하청 생산하는 경우가 많다.
- 코어: 멀티 코어 CPU의 코어는 CPU 다이 위에 구성된 CPU 회로의 핵심 부분에서 캐시 메모리를 제외하는 반도체 회로 부분이다. 그러나 공유가 아닌 코어 전용의 캐시 메모리는 코어에 포함된 것이 많다. 대부분 CPU 다이는 코어, 캐시 메모리 등의 접속부로 구성된다.
- 서브 스트레이트 (실리콘 웨이퍼)
- 칩: 반도체 부품을 뜻하지만, 다이를 가리키는 경우도 있다. 또, 표면 실장 기술(SMT)의 수동 부품을 가리키기도 한다.
같이 보기
각주
- ↑ Laudon, Kenneth C, Jane P. 《Management Information Systems 12/E: Managing the Digital Firm, CHAPTER 5, 215P》. Pearson Education Asia. ISBN-10 : 027375453X / ISBN-13 : 9780273754534.
외부 링크
- 멀티 코어 연산 코스 (라이스 대학교)
- BMDFM: Binary Modular Dataflow Machine - 멀티 코어 런타임 환경 (BMDFM)
- 인텔 테라급 컴퓨팅 연구 프로그램
- 멀티 코어를 파헤쳐 보기: 무어의 법칙의 이점을 넓혀 본다
- AMD 하이퍼트랜스포트 기술
- 썬 스튜디오 멀티스레딩 도구
- 멀티코어 프로그래밍의 일주일 코스 (MIT)
모듈:Authority_control 159번째 줄에서 Lua 오류: attempt to index field 'wikibase' (a nil value).
- 스크립트 오류가 있는 문서
- 잘못된 파일 링크가 포함된 문서
- 위키데이터 속성 P18을 사용하는 문서
- 위키데이터 속성 P41을 사용하는 문서
- 위키데이터 속성 P94를 사용하는 문서
- 위키데이터 속성 P117을 사용하는 문서
- 위키데이터 속성 P154를 사용하는 문서
- 위키데이터 속성 P213을 사용하는 문서
- 위키데이터 속성 P227을 사용하는 문서
- 위키데이터 속성 P242를 사용하는 문서
- 위키데이터 속성 P244를 사용하는 문서
- 위키데이터 속성 P245를 사용하는 문서
- 위키데이터 속성 P268을 사용하는 문서
- 위키데이터 속성 P269를 사용하는 문서
- 위키데이터 속성 P271을 사용하는 문서
- 위키데이터 속성 P347을 사용하는 문서
- 위키데이터 속성 P349를 사용하는 문서
- 위키데이터 속성 P350을 사용하는 문서
- 위키데이터 속성 P373을 사용하는 문서
- 위키데이터 속성 P380을 사용하는 문서
- 위키데이터 속성 P396을 사용하는 문서
- 위키데이터 속성 P409를 사용하는 문서
- 위키데이터 속성 P428을 사용하는 문서
- 위키데이터 속성 P434를 사용하는 문서
- 위키데이터 속성 P435를 사용하는 문서
- 위키데이터 속성 P436을 사용하는 문서
- 위키데이터 속성 P454를 사용하는 문서
- 위키데이터 속성 P496을 사용하는 문서
- 위키데이터 속성 P549를 사용하는 문서
- 위키데이터 속성 P650을 사용하는 문서
- 위키데이터 속성 P651을 사용하는 문서
- 위키데이터 속성 P691을 사용하는 문서
- 위키데이터 속성 P716을 사용하는 문서
- 위키데이터 속성 P781을 사용하는 문서
- 위키데이터 속성 P791을 사용하는 문서
- 위키데이터 속성 P864를 사용하는 문서
- 위키데이터 속성 P865를 사용하는 문서
- 위키데이터 속성 P886을 사용하는 문서
- 위키데이터 속성 P902를 사용하는 문서
- 위키데이터 속성 P906을 사용하는 문서
- 위키데이터 속성 P947을 사용하는 문서
- 위키데이터 속성 P950을 사용하는 문서
- 위키데이터 속성 P966을 사용하는 문서
- 위키데이터 속성 P982를 사용하는 문서
- 위키데이터 속성 P1003을 사용하는 문서
- 위키데이터 속성 P1004를 사용하는 문서
- 위키데이터 속성 P1005를 사용하는 문서
- 위키데이터 속성 P1006을 사용하는 문서
- 위키데이터 속성 P1015를 사용하는 문서
- 위키데이터 속성 P1045를 사용하는 문서
- 위키데이터 속성 P1048을 사용하는 문서
- 위키데이터 속성 P1053을 사용하는 문서
- 위키데이터 속성 P1146을 사용하는 문서
- 위키데이터 속성 P1153을 사용하는 문서
- 위키데이터 속성 P1157을 사용하는 문서
- 위키데이터 속성 P1186을 사용하는 문서
- 위키데이터 속성 P1225를 사용하는 문서
- 위키데이터 속성 P1248을 사용하는 문서
- 위키데이터 속성 P1273을 사용하는 문서
- 위키데이터 속성 P1315를 사용하는 문서
- 위키데이터 속성 P1323을 사용하는 문서
- 위키데이터 속성 P1330을 사용하는 문서
- 위키데이터 속성 P1362를 사용하는 문서
- 위키데이터 속성 P1368을 사용하는 문서
- 위키데이터 속성 P1375를 사용하는 문서
- 위키데이터 속성 P1407을 사용하는 문서
- 위키데이터 속성 P1556을 사용하는 문서
- 위키데이터 속성 P1584를 사용하는 문서
- 위키데이터 속성 P1695를 사용하는 문서
- 위키데이터 속성 P1707을 사용하는 문서
- 위키데이터 속성 P1736을 사용하는 문서
- 위키데이터 속성 P1886을 사용하는 문서
- 위키데이터 속성 P1890을 사용하는 문서
- 위키데이터 속성 P1907을 사용하는 문서
- 위키데이터 속성 P1908을 사용하는 문서
- 위키데이터 속성 P1960을 사용하는 문서
- 위키데이터 속성 P1986을 사용하는 문서
- 위키데이터 속성 P2041을 사용하는 문서
- 위키데이터 속성 P2163을 사용하는 문서
- 위키데이터 속성 P2174를 사용하는 문서
- 위키데이터 속성 P2268을 사용하는 문서
- 위키데이터 속성 P2349를 사용하는 문서
- 위키데이터 속성 P2418을 사용하는 문서
- 위키데이터 속성 P2456을 사용하는 문서
- 위키데이터 속성 P2484를 사용하는 문서
- 위키데이터 속성 P2558을 사용하는 문서
- 위키데이터 속성 P2750을 사용하는 문서
- 위키데이터 속성 P2980을 사용하는 문서
- 위키데이터 속성 P3223을 사용하는 문서
- 위키데이터 속성 P3233을 사용하는 문서
- 위키데이터 속성 P3348을 사용하는 문서
- 위키데이터 속성 P3372를 사용하는 문서
- 위키데이터 속성 P3407을 사용하는 문서
- 위키데이터 속성 P3430을 사용하는 문서
- 위키데이터 속성 P3544를 사용하는 문서
- 위키데이터 속성 P3562를 사용하는 문서
- 위키데이터 속성 P3563을 사용하는 문서
- 위키데이터 속성 P3601을 사용하는 문서
- 위키데이터 속성 P3723을 사용하는 문서
- 위키데이터 속성 P3788을 사용하는 문서
- 위키데이터 속성 P3829를 사용하는 문서
- 위키데이터 속성 P3863을 사용하는 문서
- 위키데이터 속성 P3920을 사용하는 문서
- 위키데이터 속성 P3993을 사용하는 문서
- 위키데이터 속성 P4038을 사용하는 문서
- 위키데이터 속성 P4055를 사용하는 문서
- 위키데이터 속성 P4114를 사용하는 문서
- 위키데이터 속성 P4143을 사용하는 문서
- 위키데이터 속성 P4186을 사용하는 문서
- 위키데이터 속성 P4423을 사용하는 문서
- 위키데이터 속성 P4457을 사용하는 문서
- 위키데이터 속성 P4534를 사용하는 문서
- 위키데이터 속성 P4535를 사용하는 문서
- 위키데이터 속성 P4581을 사용하는 문서
- 위키데이터 속성 P4613을 사용하는 문서
- 위키데이터 속성 P4955를 사용하는 문서
- 위키데이터 속성 P5034를 사용하는 문서
- 위키데이터 속성 P5226을 사용하는 문서
- 위키데이터 속성 P5288을 사용하는 문서
- 위키데이터 속성 P5302를 사용하는 문서
- 위키데이터 속성 P5321을 사용하는 문서
- 위키데이터 속성 P5368을 사용하는 문서
- 위키데이터 속성 P5504를 사용하는 문서
- 위키데이터 속성 P5587을 사용하는 문서
- 위키데이터 속성 P5736을 사용하는 문서
- 위키데이터 속성 P5818을 사용하는 문서
- 위키데이터 속성 P6213을 사용하는 문서
- 위키데이터 속성 P6734를 사용하는 문서
- 위키데이터 속성 P6792를 사용하는 문서
- 위키데이터 속성 P6804를 사용하는 문서
- 위키데이터 속성 P6829를 사용하는 문서
- 위키데이터 속성 P7293을 사용하는 문서
- 위키데이터 속성 P7303을 사용하는 문서
- 위키데이터 속성 P7314를 사용하는 문서
- 위키데이터 속성 P7902를 사용하는 문서
- 위키데이터 속성 P8034를 사용하는 문서
- 위키데이터 속성 P8189를 사용하는 문서
- 위키데이터 속성 P8381을 사용하는 문서
- 위키데이터 속성 P8671을 사용하는 문서
- 위키데이터 속성 P8980을 사용하는 문서
- 위키데이터 속성 P9070을 사용하는 문서
- 위키데이터 속성 P9692를 사용하는 문서
- 위키데이터 속성 P9725를 사용하는 문서
- 위키데이터 속성 P9984를 사용하는 문서
- 위키데이터 속성 P10020을 사용하는 문서
- 위키데이터 속성 P10299를 사용하는 문서
- 위키데이터 속성 P10608을 사용하는 문서
- 위키데이터 속성 P10832를 사용하는 문서
- 위키데이터 속성 P11249를 사용하는 문서
- 위키데이터 속성 P11646을 사용하는 문서
- 위키데이터 속성 P11729를 사용하는 문서
- 위키데이터 속성 P12204를 사용하는 문서
- 위키데이터 속성 P12362를 사용하는 문서
- 위키데이터 속성 P12754를 사용하는 문서
- 위키데이터 속성 P13049를 사용하는 문서
- 병렬 컴퓨팅
- 마이크로프로세서
- 컴퓨터 구조
- 디지털 신호 처리
- 플린 분류