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

[고전 2004.11.15] 시리얼이 되는 FSB와 메모리. CTO Gelsinger 인터뷰 2/2부

tware 2005. 12. 11. 07:00

 

Intel의 연구 부문을 총괄하는 Patrick P. Gelsinger (팻 · P · 겔싱어) CTO 겸 수석 부사장 (CTO & Senior Vice President)에게 향후 CPU 개발의 방향성을 듣는 인터뷰의 2번째. 10월의 일본 방문시 인터뷰를 베이스로, 9월의 Intel Developer Forum (IDF)시의 내용도 약간 추가되어 있다.

 

Patrick P. Gelsinger 씨

 

모든 인터페이스는 시리얼로

[Q] CPU의 멀티 코어화는 메모리 대역폭과 FSB (Front Side Bus)의 확장을 요구하는 것이다. 멀티 코어화를 통해 무어의 법칙을 넘어 CPU가 고성능화 하면 메모리와 FSB도 급격히 가속화 해야 한다고 예측하고 있다.

[Gelsinger] 그 관점은 같다. 향후 프로세서에 메모리 대역은 매우 중요한 부분이다. feed the beast 부터다. 테라 플롭 프로세서에 1GB/sec 메모리 대역으로 (명령어와 데이터를) 제공 할 수 없다. 프로세서의 공급을 위해, 더 넓은 메모리 대역이 필요하게 된다.

 그러나 대역이 필요한 것은 외부 메모리 대역만이 아니다. 많은 요소가 얽혀있다. 예를 들어, 메모리 대역 문제는 더 온다이 캐시를 올려 완화 할 수 있지만, 여기에서도 다양한 요소가 있다. 캐시를 코어마다 올려 놓든가 여러 코어간에 공유 캐시하거나 캐시 아키텍처를 어떻게 할 것인가.

 멀티 코어의 경우 칩에 CPU 코어끼리의 상호 연결을 어떻게 할 것인가도 중요하다. 하나의 코어가 데이터를 캐시하는 경우 코어끼리의 (캐쉬 coherency를 위한) 연결을 제어 할 필요가 있다. 또한 (공유) 메모리 시스템의 대역폭을 여러 코어 사이에 예약 하는 것도 중요하다. 런타임에 맞춰 데이터를 가지고 오게하도록 예측하고 예약 할 필요가 있다. 이 분야에서는 다양한 연구와 조사가 진행되고 있다. 모든 요소가 대역의 측면에서 중요하다.

[Q] 오프 칩 인터페이스의 속도는 직렬 기술의 도입으로 실현되는 것인가. 현재 DRAM 메모리와 FSB는 아직 병렬 인터페이스인 채이지만, 이것도 직렬로 바뀌는지?

[Gelsinger] 물론이다. 우리는 중요한 때에 함께 지점간 직렬 인터페이스로 전환시켜 나간다. 다만 I / O 버스를 PCI Express로 전환시킨 것과 같이 메모리도 마찬가지로 직렬로 이행한다. 직렬화하여 메모리 대역은 도약 메모리 채널도 쉽게 늘릴 수 있게 된다. FSB뿐만 아니라, 병렬 인터페이스에서 지점간 직렬 인터페이스로 전환한다.

 시간이 지나면서 병렬 인터페이스는 끝 모든 인터페이스가 시리얼이 된다.

[Q] Intel은 PCI Express의 발표를 했을 때, 1GHz 전후가 병렬 인터페이스의 한계로 더 이상의 전송 속도는 직렬 인터페이스가 필요하게 된다고 설명했다. 병렬 연결은 1GHz 정도로 그쳐 거기에서 앞으로 직렬이 되는지? 좀 더 갈 것 같은 생각도 들지만.

[Gelsinger] 그때의 설명 배경에는 1GHz 전후의 전송 속도가 멀티 드롭 접속의 한계라는 기술 조사 결과가 있다. 우리는 1,066 MHz (FSB를) 제공하고 있으며, 대부분의 사람들은 우리가 1,266 MHz까지 간다고 생각하고 있다. 물론, 우리는 1GHz를 초과해 가고 있는 것이지만, 그렇게 크게 초과 할 수 없다. 1.2GHz는 가능 하겠지만, 5GHz 할 수 없다고 생각하고 있다. 이 점에서 우리는 조금 신중하다.

 


DRAM은 2단계로 직렬화

[Q] 메모리는 Intel 추진 FB-DIMM이 직렬 인터페이스를 채택한다. 메모리 내용은 다른 직렬화로 시작하는 것 같은데.

[Gelsinger] 그대로 FB-DIMM은 메모리의 직렬화의 첫 걸음이다. FB-DIMM 아키텍처는 DRAM은 병렬 인터페이스 버퍼 칩에 액세스 버퍼가 고속 직렬 인터페이스로 변환한다. 허브를 사이에 두고, DRAM 측의 인터페이스는 넓은 병렬 연결, CPU 측 좁고 빠른 직렬 연결된다. 실질적으로 메모리 인터페이스를 직렬 기술로 한다.

[Q] FB-DIMM은 허브 칩을 사용하는 솔루션이기 때문에 클라이언트 PC에 도입하기 어렵다.

[Gelsinger] 확실히 FB-DIMM 아키텍처는 서버용이다. 서버에서는 원래 메모리 용량 확보를 위해 버퍼 칩을 올린 Registered DIMM을 사용하고 있기 때문이다. 그래서 우리는 단순히 버퍼 칩을 고기능화 하는 것을 제안했다. 버퍼링뿐만 아니라 버퍼링 및 직렬 변환 기능을 갖도록. 이 방법은 업계에 받아 들여졌다.

 그러나 데스크톱 PC에서는 사정이 다르다. PC에서는 원래 버퍼 칩이 없는 Unbuffered DIMM을 사용하고 있다. PC 메모리 인터페이스 컨트롤러는 메모리 칩에 직접 통합하는 것이 요구된다. 따라서 데스크톱은 조금 전환에 시간이 걸린다.

[Q] 그렇다면 미래에는 DRAM 칩 자체가 시리얼 인터페이스를 탑재한다고 생각 하죠?

[Gelsinger] 그것에 대해 이야기는 좀 더 복잡하고 어려움이 있다. 첫째, 공정 기술의 문제가 있다. 우리와 같이 고성능 로직 회로를 제작하고 있으면 직렬화는 용이하다. 고속이 요구되는 차세대 I / O는 고속 로직 회로에 부합하기 때문이다.

 대조적 메모리는 DRAM 셀 밀도를 최적화 해왔다. "우리는 bit 당 단가를 낮추는 방향으로 온, 트랜지스터의 성능은 아니다"라고 그들은 말한다. 따라서 대부분의 메모리 용 트랜지스터의 구동 특성은 논리 회로 용에 비해 3세대 정도 늦어지고 있다. 즉, 오늘의 DRAM 기술은 트랜지스터의 구동 특성은 90nm가 아닌 250nm 수준에 그친다. 그래서 DRAM에 고성능 인터페이스의 탑재는 지금 매우 어렵다.

 하지만 반드시 일어난다. 약속하자.

 

 

[Q] Intel은 구리 기반 직렬 인터페이스의 한계는 12GHz 정도로 그 이후는 광 인터페이스가 된다고 설명했다.

[Gelsinger] 우리는 PCI Express에서 2.5GHz를 실현, 더욱 5GHz, 7.5GHz, 10GHz 늘려 가려고 하고있다. 직렬 인터페이스의 한계는 아마도 10GHz, 12GHz, 15GHz, 그 근처일 것이다. 업계의 연구로 10GHz 정도라고 하고 있지만, 어쩌면, 15GHz 또는 20GHz까지 갈 수 있을지도 모른다. 그러나 100GHz는 아니다. 그 근처 어딘가에서 우리는 광 인터페이스로 이행하는 것이다.

 병렬에서 직렬로의 전환은 핀 당 전송 속도를 높이기 위해서 였다. 빛의 마이그레이션은 중요한 것은 아마 비용이 된다. 예를 들어, 구리 배선에서 10GHz의 때 빛 40GHz를 달성 할 수 있다고 하자. 이 경우 광 인터페이스의 핀 당 비용이 구리의 4배 이하가되면 빛이 더 저렴 마이그레이션 할 수있게 된다. 비용 효과가 있는 것이 중요한 요소이다.

 따라서 Intel은 광 인터페이스 비용을 낮추는 연구에 주력하고 있다. 실리콘 포토닉스로 광 인터페이스를 직접 실리콘에 통합하려고 하고 있다. 이것이 실현되면 빛의 비용을 드라마틱 하게 낮출 수 있다. 그러나 모든 것은 아직 연구 단계다.

 

(본래 썬더볼트가 광을 생각하고 만들어진 것이라,썬볼트도 계속 된다면 광으로 바뀌겠죠)

 

[분석정보] Research @ Intel 2013 Direct Compressed Execution 등을 시현


런타임 환경으로의 전환을 전제로 한 CPU 개발

 

 

"Microprocessor Research Forum"에 제출된 런타임 환경으로 마이그레이션.

 

[Q] 2년 전, Intel은 중국에서 "Microprocessor Research Forum"을 개최했다. 프레젠테이션은 매우 흥미로웠다. 예를 들어, Intel은 미래의 프로그래밍 모델을 런타임 환경 중심으로 변화하는 것을 전제로, 런타임 환경에 최적화 된 CPU 하드웨어나 소프트웨어 계층을 연구하고 있음을 보여주고 있었다. 이 운동에 대해 설명했으면 좋겠다.

[Gelsinger] 반대로 제 쪽에서 질문하자. 런타임은 Intel에게 좋은 일이거나 나쁜 것인가? 당신은 어떻게 생각.

[Q] 양면이 있다고 생각한다. 중간 코드를 런타임에서 실행되는 Java와. NET CLR되면 궁극적으로는 아래의 ISA (명령어 세트 아키텍처)에 대한 의존도가 없어진다. Intel의 현재 장점은 Intel의 ISA 방대한 소프트웨어 자산인 것이지만, 그것은 사라져 버린다. 하지만 그 반면 장점도 있다고 이해하고 있다. ISA에 묶이지 않게되는 것으로, CPU 벤더는 더 급진적으로 구조를 변혁 할 수 있게 된다고 생각한다.

[Gelsinger] 당신은 3점 중 2점을 지적했다. 좋은 성적이지만, 또 하나 덧붙일 수 있다. 그것은 새로운 명령을 ISA에 추가 때 그렇다. 현재는 새로운 명령을 CPU의 ISA에 추가하면 모든 응용 프로그램 공급 업체에서 지원에 매우 시간이 걸린다. 먼저 응용 프로그램 공급 업체는 1 ~ 2 년 후 컴파일러가 지원하는 것을 기다려야 한다. 새로운 컴파일러를 사용하기 시작하더라도 그래서 컴파일 한 차세대 애플리케이션의 출시까지 시간이 걸린다. 따라서 새로운 명령이 널리 사용되기까지 일반적으로 5년이 소요된다. 매우 느리다.

 실제로 MMX와​​ SSE는 5년이 걸렸다. 경우에 따라서는 더 오래 걸릴 수도 있다. 따라서 우리는 응용 프로그램의 증식에 힘을 쏟아야 한다. 그래서 새로운 프로세서의 출시 때에는 당신들을 불러 몇 안되는 대응 응용 프로그램을 나란히 "보라!"는 것이다 (웃음). 그러면 당신들은 항상 "우리가 자주 사용하는 응용 프로그램이 지원하는 것은 언제쯤?" 이라고 물어 온다. 그럴 때 우리는 "그것은 모르겠어요. 응용 프로그램 공급 업체와 이야기 해 주었음" 이라고 대답하고 있다 (웃음).

 런타임은 그주기를 단축 할수 있는 이점이 있다. 새로운 명령에 수백 수천의 소프트웨어 벤더에 대응 해달라고 할 필요가 없어진다. 1 ~ 2 런타임에 새로운 명령을 사용하여받는 것만으로, 많은 응용 프로그램이 새로운 명령어를 사용할 수 있게된다.

 귀하의 질문으로 돌아 가면 우리는 런타임이 더 잘 작동 할 수 있는 실리콘의 연구를하고 있다. 가비지 수집, 코드 변환, 안전 데이터 유형 등에 대한 더 나은 지원, 그리고 물론 스레딩 지원. 넓은 범위에서 최적화를 목표로 하고 있다. 이들은 하드웨어 구현 만이 아니다. 일부는 마이크로 코드나 펌웨어에 구현한다.

 설명했듯이, 지금까지 최적화에는 5년 문제가 있었다. 소프트웨어 측이 거기에서 이득을 얻을 수 있게 될 때까지 5년이 걸렸다.

 그러나 런타임의 경우 5년 문제가 해결된다. 응용 프로그램은 이전 코드 그대로 재 컴파일을, 다시 최적화도 다시 릴리스도, 재 검증도 필요 없다. 곧 새 하드웨어 사양의 이점을 얻을 수 있게된다.

 그러나 OS 및 클래스 라이브러리는 여전히 ISA에 견고하게 바인딩이 계속 될 것이다. 그래서 ISA의 가치가 없어지는 것은 아니다. 그러나 많은 응용 프로그램 코드는 중간 코드로 작동하게, 그것은 런타임을 통해 가속된다.

 


컴파일러 수준에서 스레드 생성과 합작 스레드를 지원

[Q] 멀티 스레드에 소프트웨어의 대응을 촉구하기 위해 Intel 컴파일러 수준에서 스레드의 자동 생성을 지원하기 시작했다. 이러한 기술은 일반적으로 침투한다 생각하나?

[Gelsinger] 현재로서는 아직 몇 가지 문제가 있다. 첫 번째는 프로그래머가 디버깅 문제가 될 것이다. 스레드 된 프로그램은 디버깅이 어렵다. 두 번째는 성능면에서의 혜택이 적당히로 밖에 없는 것. 왜냐하면 컴파일러는 아직 초기 단계이기 때문에 매우 보수적으로 성능을 추구하고 있지 않다.

 그러나 이러한 문제도 시간이 지나면 해결 될 것이다. 현재는 과거의 벡터화 컴파일러와 비슷하다. 슈퍼 컴퓨터에서 먼저 벡터화 컴파일러가 등장했을 때, 프로그래머는 쓰고 싶지 않았다. 하지만 시간이 지나면 벡터화 컴파일러는 업계의 표준이 되었다.

[Q] 자동 스레드 생성과 합작 멀티 스레드 등도 동적 컴파일러에 소개된다는 것인가?

[Gelsinger] 물론이다. 우리가 정적 컴파일러에서 제공하는 기능은 미래의 동적 컴파일러에서도 볼 수있게 될 것이다. 무엇보다, Intel은 런타임을 제공한다. 동적 컴파일러를 제공하는 것은 Sun Microsystems와 IBM, Microsoft 등이다. 그러나 Intel Compiler는 업계에서 높이 평가되고 있다. 따라서 Intel Compiler에서 채용한 기술은 정적 컴파일러에서도 프로파일 가이드 최적화 및 동적 환경에서도 점점 인기를 끌고 간다.

[Q] 당신은 이전 "LaGrande '와'Vanderpool"이 같은 기초 메커니즘을 사용한다 설명했다. "RING -1 '이라 새로운 수준의 가상화 및 세분화를 지원 한다고.

(라그란데 인텔 TXT, 밴더플 VT)

[Gelsinger] 우리는 LaGrande과 Vanderpool 에 대해 로드맵을 가지고 있다. 우리가 가상화 레이어라고 부르는 부분에서 지원하는 기능은 장기적으로 점점 부자가 되어가는 것이다.

 먼저 가상 머신 소프트웨어 하드웨어 가상화를 촉진하는 기능을 하드에 구현한다. 그러나 첫 번째 세대는 전체 RING -1이라고 부를 기능이 있는 것은 아니다. 시간이 지나면 더 풍부한 기능을 추가하여 더욱 풀 RING -1과 같은 기능을 갖추게 될 것이다. 페이지 테이블 및 I / O, 인터럽트, 메모리 엑서 큐션 가상화 등으로 더욱 기능을 제공한다.

[Q] GPU를 범용 컴퓨팅에 사용하려는 움직임이 있다. 범용 GPU라고 하는 움직임으로, 올 상반기 이 화제가 크게 달아 올랐다. Intel은 CPU 제조 업체로서, 이러한 움직임을 어떻게 보고 있는가.

[Gelsinger] 확실히 그래픽 파이프 라인은 매우 고성능 부동 소수점 유닛을 갖추고 있다. 그래서 사람들이 그것을 이용하는 것에 관심을 갖는 것은 놀라운 일이 아니다. 그러나 이러한 파이프 라인을 프로그램하는 것은 매우 어렵다. 왜냐하면 인터럽트 및 메모리 액세스의 일반적인 모델을 가지고 있지 않기 때문이다. 흥미로운 연구는 진행되고 있지만, 실제로 그래픽 프로세서를 사용하는 응용 프로그램은 매우 적다고 생각한다.

 일반적으로 말해서, GPU를 더 범용으로 하려면, 즉 GPU 안에 CPU를 생성하는 일도 할 수 밖에 없을 것이다. 왜냐하면 CPU는 고도로 프로그램에서 뛰어난 컴파일러의 지원이 있고 장기간 (프로그램을) 조정되어왔다. NVIDIA 등이 말하는 범용 컴퓨팅에 대한 비전은 즐겁기는 하지만, 다양한 애플리케이션을 지원한다고는 생각하지 않는다. 또한, 우리는 또한 멀티 코어, 매니 코어 (Many-Core)로 향해 성능을 높인다. 그리고 CPU는 항상 프로그램 효율이 좋다.

 

2004년 11월 15일 기사 입니다.

 

 

[분석정보] Many-Core CPU로 향하는 Intel. CTO Gelsinger 인터뷰 1/2부

 

 

[분석정보] 부드러운 데이터 센터를 만드는 Intel의 Software Defined Infrastructure

 

 

[분석정보] 전환기를 맞이한 2014년 인텔의 서버 프로세서

 

 

[분석정보] IDF13 San Francisco에서 보는 2014년의 서버용 프로세서

 

 

[분석정보] Intel, 14nm SoC 버전 Broadwell / Denverton 절전 서버 출시

 

 

[분석정보] IDF 2013 베이징 Intel 프로세서에서 가능한 것은 Windows 만이 아니다

 

 

[아키텍처] Intel의 차기 CPU "Nehalem"의 설계 개념은 "1 for 1"

 

 

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

 

 

[정보분석] Penryn의 1.5 배 CPU 코어를 가지는 차세대 CPU "Nehalem"