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

    tware 2012. 7. 26. 17:00


    왜 ARM과 PowerVR이 이기종 컴퓨팅인가


     ARM을 비롯한 모바일 프로세서 IP 벤더는 왜 이기종 컴퓨팅으로 급선회하기 시작한 것인가? ARM이나 Imagination Technologies (PowerVR), Texas Instruments 등 각사는 AMD의 이기종 컴퓨팅 프레임 워크 "HSA (Heterogeneous System Architecture)"에 타는 것을 지난달 발표했다. 그들이 헤테로지니어스 컴퓨팅으로 가는 것은 모바일 SOC (System on a Chip) 앞에 "다크 실리콘" 문제가 가로막고 있기 때문이다.


    AMD Fusion Developer Summit (AFDS)의 단상에 모인 ARM과 Imagination Technologies 등 HSA 찬동 기업의 멤버


     다크 실리콘은, 소비 전력의 제약으로 부터, 실리콘 칩에 전력을 공급시켜 켤 수 없는 영역을 나타낸다. 실질적으로 CPU와 동시에 켤 수없는 영역이며, 아무것도 하지 않으면 사용할 수 없는 쓸데없는 영역이 되어 버린다. 앞으로 공정의 미세화가 진행되면 다크 실리콘 영역이 다이 (반도체 본체)에 생기고, 한층 미세화와 함께 그 면적이 늘어간다.


     이유는 칩상 회로의 전력 소비가 공정의 미세화만큼 스케일 다운되지 않기 때문이다. 미세화와 함께 CPU 코어가 작아져 가도, 전력은 그것에 맞게 작아지지 않는다. 그 때문에 칩에 올릴 수 있는 CPU 코어 수가 점점 줄어간다. 이것이 다크 실리콘 문제로, 이 문제를 회피하기 위해 이기종 컴퓨팅으로 가야하는 상황이 되었다. 적어도 ARM은 그리 설명하고 있다.


     다크 실리콘라는 말은 최근 반도체 업계의 유행어 중 하나다. 우주 물리학의 "암흑 물질 (dark matter)"을 연상 시키지만, 다크인 것은 전력면에서 얘기다. 근 1년 정도는 프로세서나 반도체 학회와 프로세서 벤더 컨퍼런스에 참가하면 반드시 이 용어를 들었다. NVIDIA의 설계자도, 잡담시 다크실리콘을 여러 번 입에 올렸다. 이 단어가 프로세서 관계자의 관심 대상이 되어있는 것을 알 수 있다. 그러나 단어로서 유행하기 시작한 것은 비교적 최근이다.


     ARM은 몇 년 전부터 다크 실리콘이라는 용어를 사용하고 있다. 2010년의 프로세서 컨퍼런스 "Hot Chips"에서 University of California San Diego가 "GreenDroid "칩을 발표했을 때 이 용어를 사용했다. 널리 쓰이게 된 것은 지난해 (2011년)의 컴퓨터 아키텍처 심포지엄 "International Symposium on Computer Architecture (ISCA'11)"에 "Dark Silicon and the End of Multicore Scaling "이라는 제목의 논문이 나오고 부터인 것이다. 올해 (2012년)의 ISCA12 에서는 이 문제를 다룬 워크숍 "Dark Silicon Workshop 2012"가 병설되어 있었다. 워크숍 킥오프 강연은 GreenDroid 연구자가 진행했다.


     ISCA 논문의 제목에서 알 수 있듯이, 다크 실리콘은 멀티 코어 스케일링 앞을 가로막고 있다. 즉, 다크 실리콘 문제로 인해서, 멀티 코어에서 CPU 코어 수를 늘릴 수 없게 된다. 적어도 대칭형 멀티 코어 시대의 종말을 초래한다. 고성능 PC와 서버용 CPU는 코어 수를 점점 늘려 왔지만, 그 시대가 끝나가려 한다. 그리고 모바일 SoC는 한발 앞서 그 문제에 직면한다.



    CMOS 스케일링의 둔화가 낳은 다크 실리콘


     다크 실리콘 문제의 근원은 무어의 법칙과 CMOS 스케일링의 괴리에 있다. 무어의 법칙은 12 ~ 18 개월에 같은 면적에 올려지는 반도체 장치 집적도가 2 배가 된다. 실제로는, 과거 십수년간의 CMOS는, 2년마다 공정 노드가 선형으로 0.7 배로 축소되어 집적도가 2배에 이르는 페이스로 추이가 있었다. 그리고 무어의 법칙과 함께 CMOS 스케일링으로 장치의 크기뿐만 아니라, 구동 전압이나 게이트 산화막 두께 등의 요소도 축소해 왔다. 아래의 슬라이드는 2006년 Hot Chips에서 IBM의 키 노트 스피치인 것으로, 왼쪽의 그림이 전통적인 스케일링을 나타내고 있다.


    지금까지의 CMOS 스케일링


    이 CMOS 스케일링은 DRAM의 발명가로 유명한 IBM의 Robert H. Dennard 씨가 제창하기 시작했기 때문에 "Dennard 스케일링" 라고도 부른다.


     기존의 CMOS 스케일링 (Dennard 스케일링)에서는 트랜지스터가 미세화되어 게이트 길이가 원래의 70%로 줄어들 때 구동 전압 (Vdd)도 70%로 낮아지고 정전용량도 70%로 감소, 게이트 산화막 두께 (Oxide Thickness : Tox)도 마찬가지로 얇아졌다. 게이트 산화막이 얇아지면 트랜지스터의 스위칭이 빨라져, 트랜지스터가 1.4 배의 고속 동작이 가능하게 된다.


     전통적 CMOS 스케일링은 동작 주파수가 1.4배가 되어서 늘어나는 전력은, 정전 용량이 70% 줄어드는 것으로 상쇄 할 수 있다. 그리고 면적당 트랜지스터 수가 2배로 증가하는 것으로 늘어나는 전력은, 전압이 70%가 되는 것으로 상쇄 할 수 있다. 전력은 전압의 제곱에 비례하기 때문이다. 따라서 전력을 늘리지 않고, 트랜지스터 수를 두 배로, 주파수를 1.4 배로 하는, 무료 점심을 누릴 수 있었다. 아래의 Dark Silicon Workshop 2012 "Is Dark Silicon Useful?"슬라이드는 그 관계를 잘 도식화 한다.



     그러나 130nm 이후는 실제 Vdd가 전통적인 스케일링으로 부터 괴리가 시작되고, 이어 Tox도 괴리됐다. 즉, 게이트 산화막 두께는 얇게지지 못하고, 전압은 떨어지지 않게 되었다. 바꿔 말하면, 트랜지스터의 고속화와, 소비 전력의 저감이 부쩍 둔화 된 것이다. 그 결과, 미세화에 의해 트랜지스터 밀도가 높아지면 면적당 전력이 오르게 되었다 (전력 밀도의 상승은 온도의 상승. 발열량이 같아도 밀도가 높아지면 온도는 상승. 돋보기를 생각하면 이해가 쉬움. 돋보기를 통과하는 열량은 동일하지만, 촛점을 맞춰서 밀도를 높이면 온도가 상승.). IBM은 2004년경부터 이 현상을 전통적인 CMOS 스케일링의 종말로서, 향후 칩 설계의 큰 벽이 될 것이라고 설명했다.




    공정이 미세화 될수록 증가하는 다크 실리콘


    전통적인 CMOS 스케일링의 종말은 현재 프로세서의 "가동율의 벽 (Utilization Wall)"이 되기 시작했다. 이것이 다크 실리콘의 문제이다. 아래는 UCSD의 Hot Chips 22에서 GreenDroid의 프레젠테이션이다.

    가동률의 벽


     예를 들어, 전압이 전혀 내려 가지 않는 이론상 어떻게 될까. 아래의 슬라이드가 그것을 보여주고있다. 65nm에서 4 코어를 올리는 것이 가능한 칩 면적은, 32nm로 미세화하면 이론상으로 동일한 아키텍처의 프로세서를 16 코어 올릴 수 있다. 그런데 65nm 4 코어 때와 동일한 전력을 유지하려면, 16코어 중 4 코어를 활성화하면 나머지 12 코어 분의 영역은 다크가 된다. 가동률은 1/4이다. 또는 8 코어를 낮은 주파수로 작동시키는 흐릿한(DIm) 상태로 해서 가동률을 1/2로 올릴 수 밖에 없다.



     이와 거의 같은 것을 ARM도 지난해 AMD의 컨퍼런스 "AMD Fusion Developer Summit (AFDS)"의 키 노트 스피치에서 말했다. 아래는 그 때의 슬라이드로 아래 열의 칩 (사각형 부분)의 어두운 영역이 다크 실리콘이다. 공정이 미세화 됨과 함께, 다크 실리콘 부분이 늘어간다.


    AMD Fusion Developer Summit 키 노트 부분


    전력 스케일링 문제가 시스템의 제약으로


     지난해 ISCA의 Dark Silicon and the End of Multicore Scaling은, 이 문제를 ITRS 로드맵의 수치 등을 기반으로 실제 프로세서의 성능 효율에서 모델화 해서 추측했다. 그것에 의하면 22nm 공정에서도 21%가 다크 실리콘으로 되어 버리다. 그 결과 성능은 5 공정 세대 후인 8nm 공정에서도, 45nm 공정 때의 7.9배 밖에 향상되지 않는다고 예측했다. ARM은 "사람에 따라 숫자의 차이가 있어도, 다크 실리콘 면적이 늘어가는 것이 반도체 업계의 공통 인식이다" 라고 설명했다.



    터보 모드도 다크 실리콘 문제에서


     CPU 코어를 풀로 가동 시키면 전력이 방열 범위 (TDP : Thermal Design Power : 열 설계  전력)를 넘어 버린다. 전력을 공급하지 않는 다크 실리콘 또는 전력 소비가 적은 딤 실리콘 부분을 늘리지 않으면 프로세서가 성립되지 않는다. 이 문제는 현재의 프로세서에 공통된 문제다.


     Intel이나 AMD의 PC&서버용 CPU에서는 이 문제에 어떻게 대처하고 있는가? 대응작의 하나는 터보 모드이다. 동작 주파수를 공정 세대마다 올리는 것이 아니라, 방열 범위에 여유가 있을 때만, 각 CPU 코어 주파수를 개별적으로 올리도록 한다. 본래라면, 전 코어를 4GHz로 동작시킬 세대에서, 베이스 주파수를 3.4GHz로 두고, 터보시에만 4GHz에 올린다. 트랜지스터 딜레이의 단축에서 본래 기대되는 동작 주파수보다, 베이스 주파수를 낮추는 것으로 전력 범위에 넣는다. PC의 부하의 경우는 모든 코어가 풀 가동하는 기회는 그다지 많지 않기 때문에 이것으로 충분히 성립된다.


     이 수법에서는 실질적으로는 동작 주파수를 평면 (또는 평면에 가까운)에 억제하는 것으로 전력을 억제하고 있다. 그러나 업체들은 그 반대로 "터보 주파수를 올리고 있다"고 선전하는 것으로써 긍정적인 이미지로 전환했다. 보기에 따라서는 마케팅의 마법이다. 물론 이것만으로는 근본 해결은 되어 있지 않기에, Intel도 AMD도 이기종 컴퓨팅으로 향하고 있다.



    다크 실리콘을 어떻게 채우는가가 과제


     공정 미세화에 따라, 늘어가는 다크 실리콘. 이 문제에 대한 대책으로, 우선 다크 실리콘 부분을 사용하지 않고 칩을 작게하는 방법이 있다. 그러나 I / O 패드 영역은 축소하지 않으며 전력 밀도가 올라간다는 문제도 있다. 실제로, 모바일 SoC (System on a Chip)에서는 전력 밀도가 큰 걸림돌로 이 방법은 절대 취할 수 없다.


     다른 접근 방식으로 칩의 동작 주파수를 낮추는 방법도 있다. NVIDIA의 Kepler가 채택한 것이 이 방법이다. 그러나 각 프로세서 벤더가 가장 힘을 쏟는 것은 이기종 멀티 코어 화의 길이다. 직렬 태스크에 최적화 된 대형 CPU 코어와 병렬 태스크에 최적화 된 GPU와 같은 소형 고 스루풋 코어를 조합한다.


     ISCA'11의 논문 "Dark Silicon and the End of Multicore Scaling"에서는 이 수법을 Dynamic Multicore라고 불렀다. 이것은 CPU 코어와 GPU 코어는 각각이 동시에 피크 부하가 되는 워크로드가 적다는 전제로 세웠다. CPU 코어가 풀로 작동하고 있을 때는, GPU 코어를 종료하고 반대로 GPU 코어가 고 부하 때는 CPU 코어를 종료한다. 실제로는, 동적으로 주파수와 전압을 제어하면 유연한 부하 분산도 가능하게 된다.


     이것은 어찌 보면 다크 실리콘 부분을 GPU 코어로 채우는 것이다. 실제 현재 다크 실리콘에 대한 논의는 다크 실리콘 부분을 어떻게 좋은 수로 쓰는가 라는 포인트로 움직이고 있다. 문제 제기는 끝나고, 다크 실리콘 활용 쪽으로 진행되었다. 전력 밀도의 문제로 칩 사이즈를 작게 할 수 없는 이상, 다크 실리콘을 사용할 수 밖에 없기 때문이다.


     참고로, G​​PU 코어의 앞으로는, 한층 더 특정 용도용의 회로라는 길이 있다. 특정 용도 나 특정 로직용 회로를 하드 와이어화 하면, 전력 효율이 한층 높아진다. 특정 가속기 (액셀레이터)로 다크 실리콘을 채우는 것으로. 보다 효율을 높인다고 한다. GreenDroid가 그러한 아키텍처를 제안했다.


    다크 실리콘 대책


    특정 용도 회로를 구현



    GPU 아키텍쳐라면 닌텐도 3DS에 채용된 DMP의 쉐이더 가속기를, 쉐이더 프로세서와 조합하면 바로 이 방법이다. 최단 거리에 있는 것은 DMP 일지도 모른다.



    이기종 컴퓨팅으로 서두를 필요가 있는 ARM


     다크 실리콘 문제와 이기종 멀티 코어의 관계를 쉽게 도식화 한 것이 아래의 그림이다. 포인트는 다크 실리콘 부분을 어떻게 채울 것인가 라는 점이다. 현재로서의 해결책은 이기종 구성에 있다고 생각하는 사람이 많고, 많은 메이커가 그 방향으로 향하고 있다.


    다크 실리콘 문제와 이기종 멀티 코어


    ARM은 다크 실리콘 부분을, 지금까지와는 다른 사용법이 없게 된다면, 그 해답은 이기종 컴퓨팅이라고 명확하게 결론을 내렸다. 모바일 SoC는 PC용 프로세서와 비교하면, TDP (Thermal Design Power : 열 설계 전력)의 테두리가 낮고, 전력 밀도도 큰 문제가 있기 때문에 다급하다. AMD와 연합해서 HSA (Heterogeneous System Architecture) 소프트웨어 스택에 대응하려 하는 것은 이기종 컴퓨팅을 빨리 일으킬 필요가 있기 때문이다.


    ARM이 생각하는 대책


    GPU가 해답의 하나


    GPU의 과제


     NVIDIA가 Tegra의 GPU 코어를 범용인 CUDA 코어로 하려는 것도 같은 이유다. Tegra3에서는 쿼드 코어 (물리적으로 4코어)의 구성을 취했지만, 향후는 CUDA 코어를 올려서 그곳을 늘리는 방향으로 향한다. 이것도 다크 실리콘 문제가 다가오고 있기 때문이라고 생각된다. CPU나 GPU는 지금 다크 실리콘 문제를 중심으로 움직이고 있다.


    2012년 7월 26일 기사



    [분석정보] 실행 모델을 변경한 Skylake의 GPU 코어, 보다 일반적인 GPU 컴퓨팅으로 향한 설계



    [분석정보] 인텔의 차세대 마이크로 아키텍처 스카이레이크



    [분석정보] 인텔 데스크탑 eDRAM 버전을 포함한 브로드웰 패밀리 설명



    [분석정보] Haswell 절전 기능의 열쇠 "FIVR" 과 그 이후



    [분석정보] IDF 13 IDF에서 Intel이 14nm 공정 세대 Broadwell 을 공개



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



    [고전 2002.09.19] Intel, 3 차원 구조의 "트라이 게이트 트랜지스터 ' 발표



    [분석정보] 결정된 헤테로지니어스 멀티코어에 대한 기류



    [분석정보] AMD와 ATI 프로세서는 하나로 융합한다



    [분석정보] AMD가 Hot Chips에서 Richland에서 확장한 전력 제어 장치 등을 발표



    [분석정보] 왜 인텔은 샌디브릿지에 AVX를 구현하는가?



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



    [분석정보] 2010년 이후의 Intel CPU가 보이는 Larrabee 신 명령



    [분석정보] SSE4 명령어와 가속기에서 보이는 Intel CPU의 방향성