벤치리뷰·뉴스·정보/고전 스페셜 정보

[고전 2004.12.24] 폴락의 법칙에 찢어지고 취소된 테자스(Tejas)

tware 2005. 12. 12. 11:30

 

 

다이크기가 거의 같은 테자스(Tejas)와 스미스필드 (Smithfield)

 

 

2004 Intel Fall Analyst Meeting에서 공개 된 슬라이드

 

 

Intel이 2005 년의 CPU로 개발했던 "Tejas (테자스)"가 취소 된 원인은 폴락의 법칙이었다. Intel이12 월초에 개최 한 "2004 Intel Fall Analyst Meeting"에서 공개 된 정보에서 왜 Intel이 듀얼 코어로 방향을 바꿨나 구체적인 사정이 보이기 시작했다.

Intel은 Analyst Meeting에서 Tejas의 die size(반도체 본체의 면적)를 밝혔다. 이에 따르면,90nm 공정으로 설계된 Tejas의 다이는 213 제곱mm라고한다.이것은 0.18μm에서 제조된 초대 Pentium 4 (Willamette : 윌라멧)과 비슷하다. 현재 90nm 판 Pentium 4 (Prescott : 프레스콧)는 112 제곱mm 이므로 약 1.9 배의 다이 크기 라는 것이다.

그리고, Intel에 따르면 듀얼코어 데스크톱 CPU "Smithfield (스미스 필드)"의 다이 사이즈도, Willamette과 같은 정도라고한다. 즉, Intel은 싱글 코어인 채로 마이크로 아키텍처를 확장하고 다이를 1.9 배 한 Tejas를 마이크로 아키텍처는 그대로 듀얼코어화로 다이가 1.9 배 된 Smithfield로 대체한다. 그리고 이것은 성능의 관점에서 볼 때, 이익이다. 그것은 폴락의 법칙이 있기 때문이다.

폴락의 법칙은 CPU의 마이크로 아키텍처를 확장하여 다이(트랜지스터 수)를 2 배로 늘려도 성능은 2의 제곱근의 약 1.4 배 정도만   증가한다는 예상이다. Intel의 Microprocessor ​​Research Labs (MRL)의 이사를 역임했던 프레드 폴락 (Fred Pollack) 씨가 발견 한 것으로, 이에 따라 Intel의 연구개발 부문을 이끄는 Patrick P. Gelsinger (페트릭(펫)· P· 겔싱어) CTO 수석 부사장 (CTO & Senior Vice President) 씨는 "폴락의 법칙 '이라고 부르고있다.

그러면 이를 Tejas에 적용 시키면 어떻게 될까. 폴락의 법칙이 효과를 낸다면, Tejas는 동 클럭의 Prescott 에 비해 약 1.38 배 밖에 성능이 성장하지 못한다. 즉, 이 공정 세대 다이를 1.9 배까지해도 성능은 불과 1.38 배의 이득 밖에 얻지 못할 것이다. 이것은 비효율적인 방법이다.

 

 

폴락의 법칙에 의한 프레스캇(Prescott)에서 테자스 (Tejas) 와

스미스필드 (Smithfield)의  성능 이론치

 

폴락의 법칙을 깰 Smithfield


그런데, 듀얼 코어의 경우는 폴락의 법칙을 깰 수있다. "Prescott +"코어를 2 개 탑재하는 Smithfiel에서는 동 클럭의 Prescott 에 비해 최고 2 배의 성능을 얻을 수있다. 물론, 실제로는 버스 병목 현상과 소프트웨어 측의 스레드 병렬성, TDP의 문제로 거기까지 얻을 수 없지만, 이론적으로는 2 배 가까운 성능을 제공한다. 폴락씨 자신도 '99 년 Micro32 컨퍼런스에서 프레젠테이션에서 멀티 코어라면 다이크기에 거의 비례 한 성능을 제공, 폴락의 법칙을 깰 수 있다고 제안하고 있다.

이렇게 보면, 폴락의 법칙에서 보면, Smithfield가 Tejas보다 훨씬 효율적인 성능 향상 접근하는 것이 된다. 이것으로 Tejas가 취소되는 것이 당연한 것으로 보인다. 라고 할까? 폴락의 법칙을 알고 있다면 왜 Tejas 세대 싱글 코어 아키텍처의 확장을 도모했는지, 그 의도가 더욱 궁굼해진다. K7에서 K8로 아키텍처 이전시 CPU 코어 자체의 크기는 약간증가 밖에 하지 않고, 멀티 코어 갖춘 AMD 쪽이 선견지명이 있던 것 같다.

다만 Intel의 의도는 알 수있다. Smithfield는 멀티 스레드/멀티 태스킹 이야말로 성장하지만, 싱글스레드 성능은 이론적으로 Prescott와 같기 때문이다. 물론  실제로는 단일 스레드 응용 프로그램 사용시에도 멀티태스킹 성능이 오르기에 종합적인 성능은 오른다 (윈도우의 백그라운드 작업이 실행되거나, 싱글 스레드 프로그램을 여러개 실행하거나 할 때). 그러나 순수한 의미에서의 싱글스레드 성능은 변함 없다.


반면 Tejas는 멀티스레드 성능도 싱글스레드 성능도 오른다. Tejas가 Hyper-Threading의 강화에 초점을 맞춘 아키텍처, 멀티 스레드 성능을 향상시키는 방향으로 향하고 있었다고 해도, Smithfield 보다 단일 스레드 성능은 높은 것이다.

이렇게 보면, Intel에게 "Tejas 또는 Smithfield?"라는 선택은 동일한 비용의 CPU에서 싱글 스레드 성능과 멀티 스레드 성능 모두를 중시 하는 선택이었다가 된다. 그리고, Intel이 마지막으로 내린 결단이 어차피 같은 비용을 거는 경우 멀티 스레드 성능에 포커스 하자는 판단이었다 가 된다.

 


왜 Tejas도 Smithfield도 200 제곱 mm 전후의 다이인가


흥미로운 것은 200 제곱 mm 전후의 다이 크기는 Intel에게 일종의 마법인 것이다. 역사적으로 보면 Intel의 데스크탑 CPU의 다이 사이즈는 일정한 법칙이있다. 아래의 그림을 보면 알수 있듯 어떤 아키텍처 세대도 200 제곱 mm 전후 일련의 다이에 다음 그아래 140 제곱 mm 전후에서 아래 라인에 일련의 다이가 있다.

 

 

Tejas (테자스) 존재시 die size(다이 사이즈) 이행도

 

 

현재의 다이사이즈 이행도

 

이 Intel의 다이 크기 전략은 매우 명확하다. Intel은 PC 용 CPU는 우선 200 제곱 mm 전후의 다이 크기에서 성능/메인 스트림 시장에 투입시킨다. 그리고 140 제곱 mm 전후의 다음 다이 크기에서 밸류 시장에 본격적으로 침투시킨다. 이런 2 단계 접근 방식을 취한다.

따라서 성능 / 메인 스트림 전용 CPU는 200 제곱 mm 전후의 다이가 되도록 설계한다. 그런 다음 이 구조를 1 공정 세대 미세화하면 140 제곱 mm 이하의 다이가 만들어 진다.

Pentium 4는 Willamette (0.18μm, 217 제곱 mm) → Northwood (0.13μm, 136 제곱 mm),

Pentium II는 Klamath (0.35μm, 203 제곱 mm) → Deschutes (0.25μm, 130 제곱 mm)가 이런 패턴에 해당한다. 경우에 따라서 이전 300 제곱 mm 전후의 다이를 만들 수도 있지만, 이쪽은 서버나 워크스테이션 등 일부에 그치고, 대부분 투입하지 않는다. 300 제곱 mm에서 1 공정 세대 미세화 하여 200 제곱 mm로 가져와에서 PC 시장에 본격적으로 침투시킨다.

 


Intel은 이전에 2 년에 한번씩 새로운 아키텍처 CPU를 투입했다. 따라서 이패턴에서 차례 차례로 종속 된 새로운 아키텍처의 CPU를 저렴한 가격대로 내려 올 수 있었다. 그런데, P6 (Pentium Pro / II / III) 이후는 Pentium 4까지 1 세대 빠져 버렸다. 따라서 P6 세대는 확장을 거듭 다이 확대하고 궁극적으로는 0.13μm 세대까지 연장했다 (펜티엄을 설계했고 (1993년 출시), 이후 P7을 (초기) 설계 중이던 산타클라라 설계팀이 HP와 공동 개발하는 고성능 서버용 CPU 아이테니엄 설계로 변경 (1994년. 출시 2001년). P6을 개발한 힐스보로 설계팀 혼자서 x86을 개발하게 되면서 P6 (펜프로,펜2,펜3. 펜프로 1995년 출시.) 아키텍처에서 펜티엄4 (2000년 출시) 까지 매우 긴 시간이 지나서야 출시. CPU 개발에서 출시는 통상 4~5년 이상이 걸림. 이후 이전에는 기존 제품의 개량형을 설계하던 (노트북용 MMX 펜티엄, 개발 다 끝내고 출시만 (생산) 취소된 P6(펜3급)+GPU통합 CPU 팀나 설계.) 하이파 개발센터가 노트북용 베니어스 (2003년 출시, 1999년 개발 시작?) 등의 성공을 토대로, 메인 CPU인 콘로 설계, 이후 힐스보로/하이파가 주력 x86 CPU를 동시에 개발. 2년 약간 지나면 새로운 CPU가 출시. 오스틴 센터는 아톰 개발. 아예 새로운 아키텍처 개발과 기존 제품의 연장선상의 개선판의 개발은 차이가 크죠. 무기로 말하면, F-16 블록 업그레이드냐, F-15 개발이냐의 차이.).

이번 NetBurst (Pentium 4 계) 아키텍처도 2 년후 후속 아키텍처가 등장하지 않았던 것 부터, Tejas 에서 크게 아키텍처를 확장 할 것으로 예상되어 있었다. 그러나 당초 이코너에서는 Tejas의 다이 크기를 140 제곱mm 전후로 예상했다. 그것은 90nm 세대에서 200 제곱 mm 전후의 다이 사이즈로 NetBurst 다음 "Nehalem (네할렘)"이 등장 할 것으로 예상하고 있었기 때문이다. Nehalem은 Tejas의 전 아마 2003 년에 취소된 완전히 새로운 아키텍처로, CPU 다이 크기가 증가할 것이었다

  하스웰로 이어지는 네할렘 개발 이야기

하지만 이번 Tejas 다이가 200 제곱 mm 클래스인 인걸로 나타난 것으로, Nehalem은 아마 65nm로 200 제곱mm 클래스의 다이 였다고 생각된다. 즉, Intel은 Willamette에서 Nehalem까지 3 공정 세대의 차이가 벌어지고 있던 것이다. 따라서 Intel은 90nm 세대에서 140 제곱 mm의 다이가 아니라 200제곱 mm의 다이가 필요하게 되었다. 그리고 거기로 가는 것이 Tejas에서 Smithfield로 바뀐 것이 현재의 로드맵인 것이다.

Smithfield 다이가 200 제곱 mm 대에 억제 된 것은, Intel은 적어도 다이 크기 (= 비용 및 생산성)의 관점에서, 65nm 프로세스에서는 본격적으로 듀얼 코어의 투입을 도모 할 수있는 것을 의미하고 있다. 물론 TDP와 싱글 스레드 성능 문제를 고려해야 하겠지만 말이다.

65nm의 NetBurst 계열 듀얼 코어(코드 네임은 Presler이라고 알려져있다)는 140 제곱 mm 이하의 die size에 있을 것이다. 그렇게 되면, Intel은 Northwood 첫 다이(136 제곱 mm)과 마찬가지로 65nm 버전 듀얼 코어를 투입시킬 수있다. 역으로 말하면, 200 제곱 mm 전후의 다이에 억제 된다는 목표가 붙기 때문 Smithfield 계획을 시작했다고 추정된다.

 


SMT을 크게 확장한 Tejas?

 

Tejas의 다이가 200 제곱 mm 클래스였던 것은 Tejas의 아키텍쳐가 크게 확장 된 것을 의미한다.Tejas에 대한 정보 소스에서 밝혀진 것은 확장판 (Enhance) Hyper-Threading의 구현이나, L2 캐시 2MB로 확장, L1 데이터 / 추적 캐시 (L1 명령 캐쉬)의 확장보다 고클럭화를 할수 있도록 한 설계등이다.

Tejas는 캐시가 증가될 예정 이었기 때문에, 다이 증가 정도의 비율은 캐시 SRAM 부분이었다고 추정된다. 하지만 Prescott의 1.9 배의 다이는 SRAM의 증가만으로 메워지지 않는다. K8처럼 주변 장치를 가져올 계획도 없었던 것으로, Tejas에서는 CPU 코어도 크게 확장 된 것이다.

하나 확실한 것은 Tejas의 포인트가 Hyper-Threading의 확장였던 것이다. Tejas 아키텍처 개발이 진행되고 있던 2002 년 당시 Gelsinger 씨는 다음과 같이 CPU의 미래를 설명했다.

"미래에 우리는 IPC (Instruction per Cycle : 1 사이클에서 실행할 수있는 명령 수) 대신"TPC (Threads per Cycle) ", 즉, 1 사이클에서 어떤 스레드를 처리 할 수​​ 있는지에 대해 CPU의 효율성을 측정하도록 될 것이다. 지금까지 PC 용 CPU는 1 스레드 퍼 사이클에서만 실행할 수 없었지만,Hyper-Threading은 2 스레드를 병렬로 실행할 수 있게된다. 또한 향후 더 많은 스레드를 작동 할수 있을 것이다. 이것은 다만 CPU의 실행유닛의 지금까지의 변화와 비슷하다. 486 때에는 1 개의 명령 실행 파이프 밖에 없었던 것이, Pentium에서 2 개가되고, Pentium Pro 에서 7 개로 된 것과 유사하게 진화한다 "


내용은 명확하고, Intel은 이시점에서 "Simultaneous Multithreading (SMT)"인 Hyper-Threading을 확장하여 멀티스레드 성능을 높이는 것을 최우선으로 한 것으로 보인다. 그렇다면 Tejas는 당연히, 4 스레드/사이클 정도의 스레드 병렬성을 가지고 있었다고 생각하는 것이 자연 스러울 것이다. 그리고, SMT에서 스레드 병렬성을 높이는 것으로, Intel은 아마 CPU 코어 내부의 명령 발행 수를 확장 하려고 하고 있었다고 추측된다.

현재 싱글 코어 CPU는 모두 3 명령/클락의 명령 대역 밖에 없다. NetBurst도 K8도 x86 명령 환산으로 최대 3 명령/클럭 만 스케줄러가 보낸다. 이것은 x86 명령에서 3 명령 이상을 동시에 발행할 수 있는 명령 스케줄링이 어렵기 때문이다. 그러나, SMT에 의존성이 적은 스레드에서 명령끼리를 조합할 수 있게되면, 3 명령/ 클럭 이상으로 대역폭을 확장될 수 있다.

만약 그렇다고 하면 Tejas에서는 실행 유닛도 확장 된 것이다. 원래, Intel은 Willamette을 개발할 때, 정수연산 유닛을 늘릴 생각이었던게 트랜지스터 예산(사용할 트랜지스터 수의 제한)에 의해 유닛 수를 깎은 사정이 있다. 발행 할 명령 수가 늘어나는 것도 생각하면 Intel이 Tejas에서는 연산 유닛을 늘리는 방향으로 갔었다고 추측된다.

하지만 결국 이것도 듀얼 코어화 하는 것이 효율이 높아진다. 듀얼 코어라면 3 명령/사이클의 대역을 갖는 CPU 코어가 2 개, 최대 6 명령/사이클을 인출하고 스케줄러로 통할 수있다. Tejas가 아무리 SMT를 확장해도 따라 잡지 못하는 것이다. 그러나 Tejas 접근이라면, 실행 자원과 일정 대역이 넓어, 성능이 향상되는 싱글 스레드 프로그램이 나온다. 결국 이부분도 절충했다는 것이다.

 

 

 

SMT와 듀얼코어 비교

 

 


pc watch

 

 

 

[2000.08.25] 그래픽 통합 CPU 팀나(Timna)의 개요를 분명히-극적인 다이 크기 축소를 실현

 

 

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

 

 

[아키텍처] Intel 차세대 하이퍼 쓰레딩 (Hyper-Threading) 기술 공개

(지금쓰고 있는 하이퍼 쓰레딩 보다 더 확장한)

 

 

[고전 2001.08.30] 인텔 하이퍼 쓰레딩 펜티엄4 계획, 인텔 투기 (Spectulative) 스레드 실

 

 

[고전 2001.02.07] 인텔 폴락의 법칙이 등장 Intel 겔싱어 CTO의 ISSCC 강연

 

 

[고전 2004.11.05] 폴락의 법칙을 깨뜨리기 위한 멀티 코어

 

 

[분석정보] 심플 코어로 향하는 차세대 CPU 아키텍처

 

 

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

 

 

[고전 2005.01.12] 암달의 법칙(Amdahl's law)을 둘러싼 Intel과 AMD의 싸움

 

 

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