벤치리뷰·뉴스·정보/아키텍처·정보분석

[정보분석] Intel 힐스보로가 개발하는 CPU 아키텍처의 방향성

tware 2008. 12. 17. 20:10

 

Larrabee는 미래의 Intel 메인 스트림 CPU의 선구

 Intel에 있어서 "Larrabee (라라비)"의 중요성은 Larrabee라는 제품 자체에 있는 것이 아니다. Larrabee가 Intel의 향후 CPU 아키텍처의 방향성을 제시하고 있다는 점에있다. Larrabee의 핵 부분은 x86의 새로운 명령 확장이다 "Larrabee 신 명령 (Larrabee New Instructions : LNI)"라고 CPU 코어 네트워크이다. 그리고 이러한 Larrabee의 핵 부분은 Intel의 향후 메인 스트림 CPU 기술의 선구가 되고 있다.

 왜냐하면 PC & 서버 전용의 메인스트림 CPU도 이장래는 "데이터 레벨의 병렬성 (DLP : Data-Level Parallelism)"와 "thread 레벨의 병렬성 (TLP : Thread-Level Parallelism)"를 증가 할 길은 없기 때문이다. 따라서 아키텍처를 개발하고 그것을 시험 차량으로 실어 것이 Larrabee라고 생각할 수도있다.

 따라서 Larrabee 내용은 제품만 가지고 그 성공 여부를 점쳐도 의미가 없다. 제품으로서의 Larrabee가 성공할지 여부도 중요 할지도 모르지만, 진정한 중요성은 Larrabee에서 Intel의 미래 CPU의 모습이 엿볼 수 있다. Larrabee에서 추측 할 수있는 Intel의 차 차세대 아키텍처의 성공 이야말로 중요하다.

 가장 정확하게 말하면, Intel의 1 / 3이 생각하는 미래 CPU 아키텍처 인지도 모른다. 왜냐하면 Intel은 x86 계 CPU를 개발하는 팀이 3 개 있고, Larrabee와 명령어 세트는 1 개에 속하고 있기 때문이다.

 3 팀 중 하나는 Digital Enterprise Group에 속하는 미국 오리건주 힐스보로 (Hillsboro)의 개발 센터에서 Pentium III / 4 및 Core i7을 개발했다. 두 번째는 Mobility Group에 속하는 이스라엘의 하이파 (Haifa)의 개발 센터에서 Pentium M이나 Core 2를 개발했다. 마지막이 미국 텍사스 주 오스틴의 개발 센터에서 Atom 계를 개발하고있다. 이 중 힐 스보로와 하이파가 2 년마다 메인 스트림 x86 CPU 아키텍처를 개발하는 체제를 취하고 있다 (펜티엄을 개발한 산타클라라팀은 아이테니엄 개발).

 Larrabee는 3 팀 중 힐스보로계의 인재에 의해 개발되고있다. 재미있는 것은, 제품뿐만 아니라 명령어 세트 아키텍처의 확장도 각 팀에 속하는 것이다.

 

 

 

Intel 명령어 세트와 CPU 아키텍처 확장의 방향성

 

 

하이파 AVX와 힐 스보로 LNI-2 명령어 확장

 Intel은 2010 년에 새로운 SIMD (Single Instruction, Multiple Data) 명령어 확장인 "Intel Advanced Vector Extensions (Intel AVX)"를 탑재 한 CPU를 투입한다. 구현하는 CPU는 하이파에서 개발하고 있다 "Sandy Bridge (샌디 브릿지)"하지만 명령 확장 자체도 하이파가 주도했다고 한다. 실제로 Intel Developer Forum (IDF)에서 AVX 설명에 등장한 인물은 대부분 하이파의 일원이었다. 즉, Intel의 명령 세트 확장 로드맵에 있는 AVX는 하이파에서 개발된 하이파의 CPU에 구현된다.

 대조적으로, "Larrabee 신 명령 (Larrabee New Instructions : LNI)"은 힐스보로 계에서 개발 되었다. 만약 각 명령어 세트 확장의 구현이, 명령어 세트를 개발한 팀의 CPU에서만 하는 경우, LNI 또는 개선 명령이 Intel의 메인 스트림 CPU에 와서는 힐스보로가 메인 스트림 CPU를 개발 할 차례가 될 것이다. 생각하면 그것은 2012 년 이후 "Haswell (스웰)"라는 코드 이름만 알려진 CPU 또는 그 후속 세대가 되고 나서이다. 즉, Larrabee는 2012 년 이후의 Intel CPU 아키텍처를 부분적으로 엿보는 셈이다.

 이런 눈으로 보면, 내년 (2009 년) 이후의 Intel CPU의 명령 세트 아키텍처의 괴리의 사정도 추측이있다. 2010 년에는 Intel의 메인 스트림 x86 CPU는 256-bit 벡터 AVX 명령어 확장, 높은 처리량 CPU는 512-bit 벡터의 LNI 확장으로 나뉘어 버린다. 조금 분열증 기미. 벡터 확장 두 계통이 평행 비정상적인 사태가 된다. 그러나 이것이 Intel의 2 개의 개발 센터 간의 경쟁의 결과라고 하면 상황이 보인다.

 Intel 속에서 제품으로서의 Larrabee를 처리하고 있는 신설 Visual Computing Group에서 보면, 기본 x86 CPU의 명령 세트 확장도 LNI에 맞춰달라고 하는 것이 더 고맙다. 확장 명령 세트 부분은 일관성이 나오기 때문에 Larrabee의 침투가 훨씬 쉬워지기 때문이다. 만약 Intel이 그러한 전략을 취하고 있었으면, 제품으로서의 Larrabee의 위치 설정과 전략은 더 멀리 깔끔한 것이 되었을 것이다. 하지만 지금의 제품 계획에서는 Larrabee는 x86 악마적인 존재가 될 수도 있다. 이러한 "엇갈림"에 거함 Intel의 부문별 전략 차이가 보이는 것 같다.

 덧붙여서, 힐스보로 탑인 Patrick (Pat) P. Gelsinger (팻 · P · 겔싱어) 씨 (Senior Vice President and General Manager, Digital Enterprise Group)는 "우리는 SSE에 이어 장기적인 명령 세트 확장 로드맵을 가지고 있다 "고 은근히 AVX 뿐만이 아닌 계획이 있음을 시사했다. 지금 생각하면, 이것은 AVX 후 LNI가 있다는 것을 염두에 둔 발언이 었다 할지도 모른다.

 

 

 

Intel 명령 세트 아키텍처의 진화

 

 

폭 넓은 x86 CPU 코어에 LNI를 실장 할 수 있도록 배려

 Larrabee의 핵이되고 있는 것은, x86의 새로운 확장 명령 LNI와 CPU 코어군과 언코어(CPU 코어 이외의 블록)를 연결하는 온칩 네트워크 아키텍처이다. LNI는 더 넓은 벡터 프로세싱에 의해 DLP를 높여 효율적으로 성능을 늘리기 위한 것. 코어 네트워크는 더 많은 CPU 코어를 효율적으로 연결하여 TLP를 높이기위한 것. LNI가 미래의 Intel의 메인 스트림 CPU에 필요한 것처럼, 코어 네트워크도 Intel의 미래 CPU에 중요한 요소가 될 것이다.

 Intel의 Larrabee 개발 팀은 Larrabee의 코어 네트워크를 검토함에 있어서는 먼저 링 버스를 사용하여 서버 형 인터커넥트에서 시작했다. Larrabee 아키텍처를 담당 한 Intel의 Doug Carmean 씨 (Larrabee Chief Architect, Intel)에 따르면 첫 번째 시안은 통합 L2 캐시가 있으며 캐시와 각 CPU 코어가 링 버스로 연결되는 것이 었다고 한다. 그러나 이 계획은 Larrabee 아키텍처에 잘 맞지 않기 때문에 빨리 버려졌다.

 

 

 

서버형 인터커넥트

 

 

서버 형 인터커넥트의 3D 그래픽

 

다음 계획은 소용량의 L2 캐시를 각 CPU 코어마다 분산하는 방식이었다. 이 아키텍처는 L2 캐시에 픽셀 데이터를 싣는 Larrabee에는 잘 맞지하지만, 문제도 있었다. 그것은 분산 된 L2 캐시 사이에 일관성을 유지해야 한다는 것이었다.

 Intel은 Larrabee와 같은 높은 처리량 CPU에도 캐시 아키텍처를 채택했다. GPU가 가지고있는 것 같은 명시적인 액세스가 필요한 스크래치 패드 형 메모리 아키텍처는 취하지 않았다. 하이 throughput 프로세서가 주요 대상으로 하는 스트림 형 프로세싱의 경우 캐시는 거의 쓸모가 없다. 재사용 하지 않는 데이터가 대부분으로, 방대한 데이터 스트림이 필요하기 때문이다. 그러나, Intel은 LNI에서 캐시 제어 명령을 늘리는 것으로, 캐시에서도 어느 정도 스트림에 적합한 사용을 할 수 있게 한다.

 Intel이 캐시 아키텍처를 고집 한 이유는 힐스보로가 그린 것으로 예상되는 전략을 생각하면 명백하다. LNI를 메인 스트림 x86 CPU에 실장 할 때 캐시 아키텍처를 전제로 하는 것이 적합하고 쉽기 때문이다. 프로그램의 일관성을 유지하기 쉽다. 그러나 이를 위해 Intel은 다수의 코어 메모리 일관성 유지라는 과제를 안고 있다. GPU 나 Cell BE는 코어 간의 일관성을 가지고 가지 않기 때문에 이 문제를 가지지 않는다.

 

 

캐시를 중앙에 놓는다 Larrabee의 링 버스

 

 

매니 코어 시대의 캐시 아키텍처

 그래서 Carmean 교수 설계자 팀이 먼저 확인 한 것은 캐시의 태그 디렉토리를 집중적으로 가지는 방법 이었다.

 "먼저 시도한 것은 글로벌 태그 디렉토리 (Global Tag Directory) 블록을 추가했다.이 블록은 기본적으로 링 버스의 중앙 집중화 된 포인트에서 링에 모든 캐시 소유자 자격을 관리한다. 사실, 모든 L2 태그의 하드 카피를 유지 "(Carmean 씨).

 그런데 이 방식에는 큰 문제가 있었다. 그것은 글로벌 태그 디렉토리가 성능과 확장 성이 제한되어 버리는 것이었다.

 "태그 디렉토리는 링의 핫스팟이 되어 버린다. 핫스팟은 성능의 페널티가 될 것"이라고 Carmean 고 말했다. 또한 코어 수가 증가할수록, 태그 디렉토리에 대한 액세스는 더욱 집중되기 때문에 코어 수의 확장성을 저해해 버린다. 그래서 해결책으로 생각한 것은, 태그 디렉토리 자체를 분산하는 방식이었다.

 이것이 실제 Larrabee의 스타일로, 각 CPU 코어가 분포된(distributed) 태그 디렉토리를 갖춘다. 링에 분산 된 디렉토리 위치에 액세스하기 위해 해시 주소를 사용한다. 이 스타일에서는 글로벌 태그 디렉토리와 같은 1 점 집중이 발생하지 않기 때문에 성능의 제약이 없다. 또한 코어를 늘리는 경우 확장 성이 높다.

 

 

태그 디렉토리를 더한 것

 

 

각각의 캐시에 태그 디렉토리를 추가 한 것

 

또한 Intel은 캐시 사이의 데이터 전송 트래픽을 줄이기 위해 캐시 일관성 프로토콜을 확장했다. 표준 "MESI"에 Owned 스테이트를 더한 "MOESI"프로토콜을 구현했다. 캐시 라인의 소유권을 직접 마이그레이션 할 수 있도록 함으로써 트래픽을 경감 했다고 한다.

 또한 장래의 Larrabee는 "잠금 캐시"(락캐쉬)를 도입하여 캐시 라인의 잠금을 허용한다. 그래픽 작업에서 효과가 높은 것으로 나타났기 때문이라고 Carmean 씨는 설명한다.

 

 

MESI에 Owned 스테이트를 더한 MOESI을 추가 한 것

 

 

미래는 잠금 캐시를 도입

 

 

CPU 코어를 확장가능 늘리는 일도 가능하다.

 이러한 아키텍쳐상의 궁리에 의해, Larrabee는 16 코어까지의 CPU 코어를 1 쌍의 양방향 링으로 연결 수 있다고 한다. SIGGRAPH 논문에서 16 코어까지 1 링이지만, 그 이상의 경우 확장도 가능하다고 되어 있었다.

 Carmean 씨에 따르면, 16 코어 이상은 엑스트라 링 "Xring"를 사용한다. 이것은 여러 링을 연결하는 크로스 오버 포인트를 더하는 것으로, 1 쌍 이상의 링 구성을 유연하게 가능하게하는 것이다. "코어 구성을 더 확장 할 수 있으며, Larrabee 아키텍처를 더 모듈이 된다. 또한 물리적 배치의 자유도도 증가 한다"고 Carmean 씨는 말했다. 아래 그림은 3 개의 링이 서로 연결되는 것으로, 16 코어 이상의 코어를 구성하고있다.

 

 

확장 성을 갖게 한 Larrabee의 링 버스

 

첫 Larrabee는 Xring을 가지지 않지만, 확장 된 제품은 갖게된다. 이에 따라 Larrabee의 급격한 발전이 가능 하다고 한다. 즉, 24 코어 및 32 코어 같은 제품을 기본 아키텍처를 변경하지 않고 신속하게 개발할 수 있다는 것이다.

 Larrabee의 온칩 네트워크의 구성은 Intel의 Justin R. Rattner (저스틴 R · 래트너) 씨 (Senior Fellow, Corporate Technology Group 겸 CTO, Intel)가 이전에 설명한 재구성 가능한 온칩 네트워크의 실현으로도 향하고 있다.

 Rattner 씨는 가상 머신 지원 기능과 함께, 캐시 일관성 유지를 용이하게 하는 구상을 밝혔다. 가상 머신에 의해 메모리 파티셔닝 되므로 다른 가상 머신을 달리게 하는 CPU 코어 사이에서는 캐시 사이에 일관성을 유지할 필요가 없다.

 따라서 같은 가상 머신을 달리게 하는 CPU 코어 사이에서만 일관성을 유지하고 가상 머신이 다른 CPU 코어 그룹간에 캐시를 분리하는 것이다. Larrabee의 분포 태그 모델은 이러한 아키텍처에도 대응하기 쉬운 것 같다.

 

 

 

Larrabee의 블록 다이어그램

 

 

미래의 CPU에 적용 가능한 Larrabee의 각 요소

 Larrabee의 명령 확장인 LNI는 Larrabee와 같은 작은 CPU 코어에 한정된 것이 아니라, PC & 서버 전용의 큰 CPU 코어도 구현 가능하다. Intel의 Gelsinger 씨는 LNI를 범용 대형 CPU 코어에 구현 가능하다는 것을 인정하고 있다. 이와 비슷하게, Larrabee의 코어 네트워크는 PC & 서버 전용 CPU에 응용이 가능하다.

 즉, Intel은 Larrabee 개발에서 얻은 경험을 바탕으로, 메인 스트림 CPU에도 CPU 코어 수가 많은 데이터 병렬 CPU를 만들 수있다. 이 경우 CPU 코어의 전체 또는 일부는 Larrabee 코어보다 크고 단일 스레드 성능이 높은 것이 될 것이지만, 기술 자체는 전용 수 있다.

 이렇게 보면 Intel은 메인 스트림 CPU 제품으로, 향후 벡터 연산 성능을 높여 스레드 / 작업 병렬성을 높이기 위한 기초적인 기술이 Larrabee에서는 실현되고 있다. 만약 Intel이 2012 년 이후의 CPU를 그쪽 방향으로 더욱 기울이면 이미 길은 보이고 있는 셈이다.

 그러나 제품으로서의 Larrabee의 행방은 여전히​​ 미묘하다. Intel이 Larrabee를 고성능 컴퓨팅 (HPC) 분야 뿐만 아니라 그래픽 제품으로 보급시키는 전략을 취했기 때문이다. 그래픽은, Larrabee는 신경지를 개척 수 있는 GPU와는 다른 수준의 유연성을 가진다. 하지만 반면에 기존 그래픽에 대해서는 약점도 있어, GPU에 대항 할 수 있는지 여부는 아직 모른다.

 

 

 

 

[분석정보] TOP500 슈퍼컴퓨터 순위 2013년 6월

 

 

[분석정보] 4만 8000개의 제온파이로 중국 톈허2 세계에서 가장 빠른 슈퍼 컴퓨터

 

 

[제품뉴스] Intel Xeon Phi 새로운 폼 팩터 채용 포함 5모델 추가

 

 

[정보분석] 인텔 60코어 매니코어 "Xeon Phi" 정식발표

 

 

[분석정보] 인텔 슈퍼컴퓨터용 가속기 Xeon Phi 5110P 발표

 

 

[분석정보] Intel, HPC 전용 보조 프로세서 Xeon Phi 2013년 1월부터 일반용으로 출시

 

 

[분석정보] IDF 2012에서 주목한 한가지, 매니 코어 "Knights Corner"

 

 

[정보분석] 엔비디아 세계 최다 트렌지스터 칩 GK 110 공개

 

 

[정보분석] IDF 2011 Justin Rattner 기조연설 매니코어 시대가 다가옴 1/2부

 

 

[정보분석] IDF 2011 Justin Rattner 기조연설 매니코어 시대가 다가옴 2/2부

 

 

[정보분석] 같은 무렵에 시작된 Nehalem과 Larrabee와 Atom

 

 

 

[분석정보] Intel은 Larrabee 계획과 아키텍처를 어떻게 바꾸나?

 

 

[분석정보] 다시 처음부터 시작된 라라비 무엇이 문제였나?

 

 

[분석정보] 라라비 (Larrabee)의 비장의 카드 공유 가상 메모리

 

 

[분석정보] 인텔의 스칼라 CPU + 라라비의 이기종 CPU 비전

 

 

[분석정보] Larrabee는 SIMD와 MIMD의 균형 - Intel CTO가 말한다.

 

 

[정보분석](암달의 법칙) 2010년대 100 코어 CPU 시대를 향해서 달리는 CPU 제조사

 

 

 

[분석정보] GDC 2009 드디어 소프트 개발자 정보도 나온 "Larrabee"

 

 

[분석정보] 그래픽 및 DirectX 로드맵을 정리

 

 

[정보분석] 팀스위니 미래의 게임 개발 기술. 소프트웨어 렌더링으로 회귀

 

 

[분석정보] 정식 발표된 라라비(Larrabee) 아키텍처

 

 

[아키텍처] 베일을 벗은 인텔 CPU & GPU 하이브리드 라라비(Larrabee)

 

 

[정보분석] 암달의 법칙(Amdahl's law)을 둘러싼 Intel과 AMD의 싸움

 

 

[정보분석] 모든 CPU는 멀티 스레드로, 명확하게 된 CPU의 방향

 

 

[정보분석] 같은 무렵에 시작된 Nehalem과 Larrabee와 Atom


 

[정보분석] 2개의 CPU 개발팀이 경쟁하는 Intel의 사내 전략

 

 

[분석정보] Intel 4번째 x86 CPU 개발 센터 방갈로르

 

 

[분석정보] 5W 이하의 저전력 프로세서의 개발로 향하는 Intel

 

 

[고전 1998.11.4] DEC의 Alpha 개발 팀이 대 Intel 진영에

 

 

[정보분석] Merom(메롬) 이후인 Nehalem(네할렘) 과 Gilo(길로)

 

 

[정보분석] 2년 주기로 아키텍처를 쇄신하는 Intel

 

 

[고전 2000.2.25] 인텔 사내경합이 낳은 Willamette 1.4GHz

 

 

[정보분석] 인텔의 2013년 CPU 하스웰로 이어지는 네할렘 개발 이야기