본문 바로가기
IT/Hardware/CPU/MB

인텔 네할렘(Nehalem) 개발 비하인드스토리

by 에비뉴엘 2010. 5. 21.
반응형
●Pentium 4를 베이스로 하는 계획도 있었던 Nehalem

 Intel 는 Nehalem(네할렘) 마이크로 아키텍쳐의 개발을 2003년부터 스타트시켜, 2004년중반까지, 대부분의 마이크로 아키텍쳐를 결정했다.2005~2007년은 엔지니어링에 소비했다. 모두 제품출시까지 5년 걸렸다.

 Nehalem 개발에 있어서는, 많은 선택사항을 검토했다.그 중에는, 「Northwood(노스 우드:130nm Pentium 4)」을 베이스로 하는 플랜과 백지상태에서 마이크로 아키텍쳐를 신개발 하는 플랜도 있었다.하지만, 개발 노력의 삭감과 소프트웨어 최적화의 일관성의 유지를 위해서, Core 2로 같은「Pentium Pro(P6)」파이프라인의 확장을 선택했다.

  또, Nehalem에 256-bit의 SIMD(Single Instruction, Multiple Data) 연산 명령「VSSE」을 짜넣는 플랜이나, Hyper-Threading를 실장하지 않는 플랜도 검토되었다.거기에 따라, 256-bit 명령을 짜넣는 대신에, 동일한 정도의 die size(반도체 본체의 면적)로 CPU 코어수를 줄이는 일도 검토되었다.

 Nehalem 가 타겟으로 하는 시장에 대해서는, 서버와 모바일(노트북)에 포커스 했다.뜻밖의 일로, 데스크탑 PC의 우선도는 떨어졌다.Nehalem이 현재의 설계에 도달한 것은, 서버와 모바일에 유리하다고 판단되었기 때문이었다.데스크탑&서버와 모바일 각각 다른 2 종류의 CPU 마이크로 아키텍쳐를 제공하는 것을 멈춘 것은, 코드의 최적화를 심플하게 하기 위해서였다.

 Nehalem를 개발한 팀은, 현재, 2013년의 차기 마이크로 아키텍쳐의 개발을 행하고 있다(「Haswell」라고 볼 수 있다).

 Intel는, 이러한 Nehalem 개발에 관련되는 비화를 공개하고 있다.




●5년 걸린 CPU 개발을 2년으로 단축

  금년(2010년) 2월에 미 스탠포드 대학의 공개 강의 EE380로, Intel의 아키텍트 Glenn J. Hinton씨(Intel Fellow, Intel Architecture Group, Director, IA-32 Microarchitecture Development, Intel)는「Key Nehalem Choices」라고 제목을 붙인 강연을 행했다.Webcast 된 동강의에서는, Intel의 CPU 개발의 비하인드스토리를 엿볼 수 있다.

 Intel 는 몇년전부터, 2년 사이클로 신마이크로 아키텍쳐 CPU를 투입하는「틱 탁(Tick Tock)」모델을 주창하고 있다.2년에 반도체 프로세스 기술을 혁신(Tick), 그 중간의 2년에 CPU 마이크로 아키텍쳐를 쇄신(Tock) 하는 개발 모델이다.지금까지의 4년간, 이 모델은 지켜져 왔다.

2006년에 신마이크로 아키텍쳐의「Merom(메롬:Core Microarchitecture)」을 투입(탁), 
2007년에는 Merom의 45nm프로세스판인「Penryn(펜린)」을 릴리스(틱), 
2008년에는 신마이크로 아키텍쳐의 Nehalem를(탁), 
2010 신년에는 Nehalem의 32nm프로세스판「Westmere(웨스트미어)」을 투입(틱)했다.

 Intel 는, 게다가 2011년에 신마이크로 아키텍쳐의「Sandy Bridge(샌디 브릿지)」을(탁), 
2012년경에는 Sandy Bridge의 22nm프로세스판(틱)을 투입할 것을 밝히고 있다. 여기에 오고, Hinton씨에 의해서 2013년에는 차기 마이크로 아키텍쳐의 CPU가 도입(탁)되는 것도 명확하게 되었다.

  틱 탁 모델이 그 이전의 개발 모델과 다른 점은, 아키텍쳐 개발의 스피드다. PC를 위한 CPU의 개발에는, 4~5년이라고 한 긴 시간이 걸린다. 예를 들면, '95년의 Pentium Pro(P6)로부터 다음의 2000년의 NetBurst(Pentium 4)까지는 5년 비어 있다. 데스크탑으로의 다음의 마이크로 아키텍쳐 Merom는 2007년이므로, 7년 걸리고 있다.그것이 틱 탁 모델에서는 2년 사이클에 단축되었다.


●어둠속으로 사라진 초기계획의 Nehalem

 5~ 7년이나 걸리고 있던 신마이크로 아키텍쳐의 투입을 2년에 단축할 수 있던 이유의 하나는, 잘 알려져 있는 대로, 2개의 개발 팀이 오버랩 해 CPU를 개발하는 체제로 바꾼것 때문이다. Merom와 Sandy Bridge는 이스라엘 북부의 하이파(Haifa)에 있는 개발 센터에서 개발, Nehalem와 Haswell는 미국 오리건주 힐즈 고물(Hillsboro)의 개발 센터에서 개발하고 있다. Hinton씨는 힐즈 고물측의 리더다.

 2년 사이클이라고 해도, 2팀이 오버랩 하고 있기 때문에, 실제로는 각 CPU 마이크로 아키텍쳐의 개발에는 각각 5년을 걸치고 있다. 
Merom(멜론)는 2001년에 개발이 스타트해 제품이 릴리스 된 것은 2006년.
Nehalem는 2003년에 스타트하고 제품이 출시된 것은 2008년의 마지막.
Sandy Bridge는 2005년에 스타트해 2011 신년의 예정이다.거의 5년의 지연시간이다.

  덧붙여서, Intel는 2001년부터 Nehalem라고 하는 코드네임의 CPU의 개발을 스타트시켰지만, 이 초대 Nehalem는, 2003년경에 일단 다시 결말을 내기가 되고 있다.Intel의 아키텍트 Doug Carmean씨가, Intel의 사내 인터뷰 기사 중(안)에서 2002년에「2001년은 Nehalem의 아키텍쳐 정의에 소비했다」라고 말하고 있었다.그러나, Intel가 CPU 개발의 방향을 멀티 코어화로 크게 전환하는 가운데, 이 초대 Nehalem의 플랜은 캔슬이 되었다.

  그 때문에, 현재의 Nehalem의 개발이 스타트한 것은, 어디까지나 2003년이다.Hinton씨는, 이 Pre Nehalem에 대해서는, 2003년에 개발이 스타트하기 전에도 리서치가 행해졌다고 언급하고 있다.덧붙여서, Carmean씨는 현재는, 매니코어 CPU「Larrabee(라라비)」의 수석엔지니어이다.




●2013년의 CPU는 오리건에서 개발중

 5년의 개발 사이클을 보다 자세하게 보면, 아키텍쳐 정의로 1년 정도, 개발에 3년, 바리데이션 등에 1년에 합계 5년 걸리고 있는 것을 알 수 있다. Nehalem에 대해 말하면, 대부분의 마이크로 아키텍쳐의 결정은 2004년의 중반까지 되었다고 한다.그러나, 실제의 엔지니어링에, 2005에서 2007년의 3년간을 걸칠 필요가 있었다.2007년에 tape out 하고 나서 후의 1년은 바리데이션 작업이 중심이 된다.그 단계에서는, 아키텍트진은 시간이 나므로, 다음의 마이크로 아키텍쳐에 착수할 수 있다.그러니까, 아키텍트에 있어서는 4년 사이클로, 그것이 2 팀이니까 2년 사이클 인것이다.


 Hinton 씨에 의하면, 이 태세는 2011년 이후도 계속 되는 것 같다.「Sandy Bridge가 2011년으로, 새로운 것이 2013년에 나온다」(Hinton씨).2013년의 CPU는 Hinton씨의 팀이 담당하고 있다고 한다.이것이, 코드네임「Haswell(하스 웰)」이라고 추정된다.코드네임 자체는 변경 되거나 할 가능성이 있으므로 애매하지만, 2013년의 신마이크로 아키텍쳐가 있는 것은 확실하다.

  또, Hinton씨는"신마이크로 아키텍쳐"의 정의도 이전과는 다르다고 설명하고 있다.현재의 Intel에서는, 신마이크로 아키텍쳐는 반드시「백지상태」을 의미 하고 있지는 않다.틱 탁 모델의 리스트에 줄선 신마이크로 아키텍쳐는, 모두 기본적으로는 P6(Pentium Pro/II/III) 파이프라인의 확장판이라고 말한다.베이스의 파이프라인은, 과거의 아키텍쳐를 답습, 그것을 확장하는 것으로 개발 시간과 노력을 삭감하고 있다.이 수법도, 복잡하게 된 x86계 CPU의 개발 시간을 짧게 하는 것에 도움이 되고 있다.


●소프트웨어 최적화를 위해서 마이크로 아키텍쳐를 일원화

 Intel 는, 한때는 데스크탑&서버를 위한 CPU와 모바일을 위한 CPU의 아키텍쳐를 바꾸고 있었다.데스크탑의 Pentium 4로 모바일의 Pentium M가 병렬하고 있었을 때다.원래, 이스라엘의 개발 팀은 모바일을 위한 CPU의 개발 팀이었다.그러나, 틱 탁 모델을 취하게 되고 나서는, CPU의 마이크로 아키텍쳐를 일원화.1개의 아키텍쳐로, 데스크탑&서버와 모바일의 양쪽 모두를 커버하게 되었다.

 Hinton 씨는, 그 이유에 대해서, 소프트웨어측의 최적화를 심플하게 하기 위한것이라고 설명했다.Pentium 4로 Pentium M가 병렬하고 있었을 때는, 이것이 큰 문제가 되었다고 한다.데스크탑&서버와 모바일로, 다른 컴파일이 요구되는 것은 어려웠다고 한다.

  현재는 마이크로 아키텍쳐의 일원화에 의해서, 서버로부터 모바일까지 같은 베이스 코어를 사용하고 있다.그 때문에, 소프트웨어의 최적화라고 하는 면에서는, 심플하게 되어 있다.공통 아키텍쳐화에 의해서 헛됨이 생겨도, 소프트웨어 측에와는, 그 쪽이 최종적으로 이익이 된다고 보고 있는 것 같다.

 그러나, 그 때문에(위해), Intel는 CPU 개발에 대해 서버로부터 모바일까지 다른 시장 요구를 채우는 필요를 느끼고 있다.문제는 각각의 요구가 크게 달라, 트레이드 오프가 있는 점이다.

 모바일 시장에서는 전력이 최대중요로, 특히 평균 소비 전력을 내릴 필요가 있다.퍼포먼스에서는 싱글스 레드를 중시해, 또 코스트도 중요해진다.

 데스크탑 시장에서는 미디어 프로세싱의 성능이 중요하고, 이쪽도 싱글스 레드 성능을 중시한다.또, Low cost로부터 하이 퍼포먼스까지의 스케이라비리티가 필요하다.

  서버 시장에서는 multi-thread 성능이 중요해지기 위해, Hyper-Threading와 같은 SMT(Simultaneous Multithreading) 기술이 유용이 된다.multi-thread 성능을 올리기 위해서, CPU 코어수를 늘리려면 , CPU 코어 당의 전력을 내릴 필요가 있다.그 때문에 노트 PC와 같게 동적인 전원 관리가 중요해진다.또, 보다 넓은 메모리어드레스 공간이나, 신뢰성과 대용량 캐쉬, 가상화, 대메모리 용량 대응 등, PC와는 다른 특별(사양)이 중요하게 된다.



●서버와 모바일에 촛점을 맞춘 Nehalem

 Intel가 2003년에 Nehalem의 마이크로 아키텍쳐를 정의하는에 해당되고, 우선 직면한 문제는, 서버로부터 모바일까지의 범위에서, 포커스를 어디에 두는가 하는 점이었다고 한다.

  결론으로부터 말하면, Nehalem는 서버와 모바일을 우선했다.그 이유는 명료하다.Nehalem의 개발이 스타트한 2003~2004년은, Intel가 AMD의 Opteron에 의해서 서버 시장에서 도전을 받기 시작했을 무렵이다.Intel가 경쟁에 직면하고 있었기 때문에, Nehalem에는, 우선 서버로 경쟁하는 것이 구할 수 있었다.또, 요즘부터 PC시장은 노트북 경쟁이 시작하고있다.「그 때문에, 서버와 랩탑에 높은 우선 순위가 놓여졌다」(Hinton씨)이라고 한다.

  이 결정의 결과, 몇개의 아키텍쳐가 나타났다.
노트북에 적합하도록, 싱글 쓰레드로 고퍼포먼스로, 한편 듀얼 코어로 저비용 저소비전력. 
서버에 적합 가능한 많은 CPU 코어수의 스케일라비리티를 가진다. 또, 서버 전용의 멀티 코어에서는, 낮은 전력과 코스트로, 높은 처리량을 실현할 수 있다. 
게다가, 개발에 걸리는 엔지니어링 비용문제를 최소로 억제하지 않으면 안되기 때문이다.




반응형

댓글