20160619

WDDD, Architecture 2030, OpenPiton 중에 고민하고 있었는데, 교수님께서 Architecture 2030을 추천해주셔서 이를 듣게 되었다. 오늘 열리는 것 중에 가장 큰 규모라고 한다.



1. Intro remarks (slides)
이 워크샵은 앞으로 15년간의 컴퓨터 구조 연구의 방향을 함께 잡아가기 위한 워크샵이다. 컴퓨터 구조의 전망을 전산학의 다른 분야 및 회사에 제시하는 것이 목적이다. 하드웨어 설계는 여전히 어렵고, 컴퓨팅 환경이 변화하고 있다. 기계 학습에 대한 요구가 증가하고 있으며, 수직적 통합이 증가하고 있다. 센서 데이터 또한 증가하고 있음. 오픈 소스 하드웨어가 등장하고 있다. 지금까지의 연구 흐름을 분석해서 어떤 논문들이 증가하고, 줄어드는지 분석함.

trending now research areas.PNG

eternally relevant research.PNG

2. 21st Century Computer Architecture (paper, slides)
2012년에 21st Century Computer Architecture라는 논문을 발표함. 이것이 새로운 이야기인가? 아니라고 생각할 수도 있지만, 새로운 이야기이다. 컴퓨터 구조 연구 측면에서 새로운 이야기는 아니었지만, 다른 사람들에게는 새로운 이야기였다. 그리고 다른 사람들이 중요하게 생각하는 것을 이야기해주었다. 이처럼, 우리는 다른 사람들이 새롭게 생각하는 메시지를 전달해야 한다. 다른 사람에게 중요한 것을 이야기해야 한다. 21st Century Computer Architecture 논문 이야기를 계속해보자. 정보통신 기술이 세상을 변화시켰다. 알고리즘, 어플리케이션, 프로그래밍 언어, 시스템 소프트웨어 등에서 혁신이 있었음. 하지만 무엇보다도 성능 향상에 가장 크게 기여한 것은 semiconductor technology(Moore’s Law)와 computer architecture이다. 각각이 어느 정도의 성능 향상에 기여헀나?

enablers technology + architecture.PNG

21세기에 들어 더 많은 곳에서 컴퓨팅 기술이 사용되고 있음. 데이터 중심의 개인화된 건강 관리, 과학 연구에의 컴퓨팅 기술 활용, 네트워크 분석, 그 외 다양한 분야에 쓰이고 있음. 21세기의 어플리케이션 특성은 어떤가? 사용 가능한 데이터가 늘어나고 있으며, 항상 네트워크에 연결되어 있으며, 보안성이 중요해지고 있다.

technologys challenge.PNG

여러가지 기술적인 문제가 있다. 이러한 문제들을 해결하기 위해 아키텍쳐는 어떻게 발전해야 하는가?

21st century comp architecture.PNG

3. IEEE Rebooting Computing Initiative & International Roadmap of Devices and Systems (slides)
모든 것을 처음부터 다시 생각해보자. Supercoducting computer를 사용하면 훨씬 더 적은 전력으로 같은 수준의 연산 능력을 얻을 수 있다. Roadmapping이 중요하다. 기술이 어떤 방향으로 발전할 것인지 방향을 잡고, 함께 연구하는 것이 중요하다. ITRS, IRDS. IRDS가 새로운 것인 듯? 잘 모르겠다 새롭게 roadmapping하고자 하는 것 같다.

4. Device Technologies for the N3XT 1000X Improvement in Computing Performance (paper)
어딘가 다녀옴… STT-MRAM. 빠른 읽기 / 쓰기 가능하며, 거의 무한한 endurance. RRAM은 fab friendly, easy to make. RRAM은 scalable하다. 매우 많은 용량의 메모리를 빠르게 on-chip에서 접근할 수 있게 되리라는 이야기인 듯? PCM, RRAM & CBRAM… Carbon Nanotube FET(CNFET)를 사용하면 약 10배의 EDP 이득이 있다. 이해하기는 힘들지만, 메모리 기술도 발전하고 스위치 기술도 발전하고 있다는 이야기인 것 같다. 메모리 기술이 발전해서 MRAM을 사용할 수 있고, 이를 사용하면 빠르고 많은 대역폭을 사용할 수 있다는 것, 스위치 기술이 발전해서 CNFET을 사용할 수 있고, 이는 효율적이라는 것. 자세한 내용은 energy-efficient abundant data-computing이라는 저널 내용을 보면 될 것 같다. 이러한 기술 발전을 이용해서 새롭게 아키텍쳐를 설계한 것이 N3XT인 것 같다. Nanosystem을 잘 사용하면 이를 컴퓨터에 사용해서 성능상의 이득을 얻을 수 있다. Neuromorphic hardware를 다양하게 classification한 슬라이드가 있다. neuromorphic hardware / conventional hardware, biology-based models / ? … 아주 잘 정리된 것 같다. Neuromorphic processor에서 routing이 중요하다. 매우 많은 대역폭을 사용하기 때문이다. Synapse도 다양한 방식으로 구현되고 있음 (DRAM / SRAM)… NVM도 시냅스로 사용될 수 있다. 아날로그 프로그램 가능하고, scalable하다.

5. The Influence of Academic Research on Industry R&D
어딘가 다녀옴… 뭔가 여러 개의 observation이 있다고 함. Field can advance quickly. 2030년에 CMOS를 대체할 기술이 새롭게 나오지는 않을 것이다. 칩보다는 시스템이 중요하게 될 것이다. Domain-specific 가속이 크게 발전할 것이다. Programmability가 중요해진다. 칩 설계는 소프트웨어 설계처럼 될 것이다. 더 많은 연구가 있을 것이다. 아키텍쳐의 중요성은 계속해서 증가할 것이다. 여전히 아키텍쳐 원리는 중요하다. 데이터 전송, 저장, 병렬성, 지역성 등이 중요하다. Scalability, domain specific acceleration이 중요한 기회가 될 것이다.

6. Open Source HW: Architecture’s Only Hope for Survival (slides)
좋은 아이디어가 있어도 Intel, AMD의 아키텍쳐는 잘 변하지 않는다.

the fate of computing today.PNG

학계에서 제안하는 아이디어들이 실험 결과에 치중하고 실제 하드웨어에서 잘 되리라는 보장이 없기 때문이다. 시뮬레이션 실험의 한계. 학계의 아이디어는 너무 급진적이다. 실제로 구현하기에는 너무 많은 어려움이 있고, 이를 해결하기 위한 노력이 필요하다. 그 외에 너무 많은 아이디어들이 나와있다.

current tech transfer pipeline.PNG

현재 연구 흐름은 아주 이상하다. C로 구현된 50KLoC가 ISCA 12페이지가 되고, 이것이 Intel unit으로 구현된다.

proposed tech transfer pipeline.PNG

미래에는 조금 더 좋은 기술 연구 프로세스를 가져보자. 우리가 프로토타입을 구현하고, 이를 이용해 논문을 쓴다. 그리고 오픈소스로 만든다면 이를 어디서든 가져다 쓸 수 있게 될 것이다. 더 많은 기업이 우리의 아이디어를 실제로 테스트해볼 수 있도록, 하드웨어 설계 또한 lean하게 만들자.

how can hardware design be more like software.PNG

Emerging open projects가 다양하게 있다. RISC-V, Roccket, Pulpino, Leon3, OpenRISC, Boom, FabScalar, MIAOW, GPLGPU, Nyuzi, OpenPiton, OpenMSP430 등.

emerging open source projects.PNG

이를 구현하기 위해서는 이상적이고, 시간이 많고, 무료로 일하는 사람이 필요하다. 누가 될 것인가? 학생.

7. Computing and Biometrics (slides)
파괴적인 성질의 기술을 소개하고자 함. outside the box에서 생각해보도록 하고자 함. Computing은 정보를 저장하고 연산하는 것. Biomolecules는 DNA, proteins, fluorescent molecules… 이들을 왜 사용하는 것인지? 이들을 어떻게 사용할 것인지? Biomolecules: Synthetic DNA. 두 개의 핵산을 매칭하는 것에는 규칙이 있다. Adenine – Thymine, Cytosine – Guanine. DNA는 molecular scale이다. 3.4 Angstrom spacing을 가지며, 2nm diameter를 갖는다. Biomolecules: chromophores. 광학적으로 활성화되어 있음. 분자 수준에서 biomolecules는 resonance energy transfer가 가능하다. 가까운 거리에서 극성간 에너지 전달이 가능하다. 이렇게 정보를 전달한다면 열이 발생하지 않게 된다. 왜 biomolecules를 사용하는가? Feature size가 작아서 scalable하다. Fabrication에 있어서도 scalable하다. 열 발산이 적다. 연산에 있어서 새로운 domain을 열게 된다. 물리적인 특성을 사용해서 저장, 연산, 생산을 해야 한다. Biomolecular storage 연구가 있음. ASPLOS에 DNA를 사용한 데이터 저장과 추출이 가능하다는 연구 논문이 나옴. 하지만 문제는 throughput과 비용이다. 최적화의 가능성은 여전히 있다고 함. Biomolecular computation이 가능하다. DNA 합성 과정을 활용해 게이트를 구현할 수 있다. 합성 과정이기 때문에 속도는 느리지만, throughput은 높을 수 있다. Biomolecular fabrication. 분자 수준에서 self-organize해 안정적인 구조를 생성하도록 할 수 있다. nanotube, nanorods, chromophores 등을 만들 수 있다. Self-assembly하도록 하는 것이 시스템 설계를 바꿀 수 있다. DNA Self-Assembled Parallel Processor를 만들 수도 있을 것. DNA 컴퓨팅은 매우 오랜 시간이 걸린다.

8. 100 Quadrillion Live Pixels: The Challenge of Continuously Interpreting, Organizing, and Generating the World’s Visual Information
Visual computing에는 크게 세 종류로 나뉠 수 있다. 2D/3D graphics, image proccessing / computational photography, computer vision. 이런 이미지 처리 연산은 지금까지의 연산과 다른 특성을 갖는다. 1962년에 Ivan Sutherland’s Sketchpad on MIT TX-2 있었음. 1972년에 Shoup’s SuperPaint가 있었음(640x486x8bits). 1973년에는 Xerox Alto가 있었음. 사람들이 컴퓨터를 사용함에 따라 그래픽이 더 중요해지게 됨. LucasFilm에서 1983년에 Road to Pt.Reyes를 만듦. 1995년에 비슷한 기술을 사용해 Pixar에서 Toy Story를 만듦. 1981년에 UNC Pixel Planes를 만듦. NVIDIA Titan X GPU는 7FLOPs를 보임. 다양한 병렬 컴퓨팅에 GPU를 사용하고자 하는 시도가 있었음. Visual computing의 목표는 실세계를 자세하게 모델링하는 것. 우리가 보는 모든 것을 표현하고자 할 것. Cisco는 2019년 인터넷의 80~90%가 비디오 데이터일 것으로 추정. 2014년에는 64%. 아이폰도 사진보다 비디오를 선호하도록 하고 있고, facebook에서도 facebook live를 선보임.앞으로는 기록하는 영상이 더 많아질 것이다. light field camera는 빛이 어느 방향에서 왔는지 알 수 있도록 하는 것. 이를 사용하면 원하는대로 초점을 바꿀 수 있음. VR은 고해상도를 필요로 한다. 현재 아이폰 레티나 디스플레이의 경우 326ppi이고, 57ppd이다. Full retina VR을만든다면 200Mpixel 필요. Light field display라면 더욱 어렵다. 2030 challenge: recording and analyzing the world’s visual images. Capture for computers to analyze, not humans to watch. 모든 사람이 카메라를 갖고 다니게 될 것이다. 생활에서 개인이 알고 싶은 정보들이 있고, 개인이 카메라를 갖고 다닌다면 모두 해결될 수 있음. A future digital assistant must capture and omprehend extremely subtle aspects of human social behavior (body language, eye movement…). 사람들 사이에 사회적인 관계도 파악할 수 있을 것이다. 사회적인 신호를 파악하기 위한 차원은 어느 정도인가? 엄청 크다. 500GB/sec. 얼굴 한 면 당 5million vertice X 3차원 X 500Hz X 세 명. Capturing to localize and analyze. 자동차에 컴퓨터가 들어가고 있음. 전력 공급도 문제없고, 자동 주행에 필요함. NVIDIA에서도 자동차 위한 그래픽 카드 만듦. Smart headlight를 사용하면 빛의 반사를 줄일 수 있음. 이에 아주 많은 연산이 필요함. Capturing to undestand cities. 도시 관리에는 카메라가 필요한데, 사람이 모두 확인할 수는 없음. 컴퓨터를 사용해 이를 분석해야 함. 도시를 잘 관찰한다면 도시의 효율성 그리고 안전성을 높일 수 있을 것.

9. Technology-Driven Architecture Innovations: Opportunities and Challenges
Technology and architecture interation. 1991년 당시에 크게 두 가지의 기술 트렌드가 있었다. transisotr scaling, increasing memory density. 두 개의 아키텍쳐 트렌드가 있었다. 프로세서 아키텍쳐 레벨에서는 파이프라이닝과 ILP의 향상, 메모리 레벨에서는 캐싱이 있었다. 미래의 컴퓨터 아키텍쳐 연구는 어떻게 될 것인가? 앞으로의 15년 컴퓨터 아키텍쳐 연구는 어떻게 될 것인가? ISCA 1992~2016 논문을 분석했다. 프로세서 디자인에 대한 이야기는 줄어들고 있음. 메모리 아키텍쳐에 대한 이야기는 2005년 이후로 늘어나고 있음. 프로세서보다 메모리가 더 중요해짐. 인터커넥트 아키텍쳐도 2002년 이후로 중요성을 얻고 있음. GPU 아키텍쳐는 2008년 이후로 중요해지고 있음. 가속기 아키텍쳐 또한 2008년 이후로 인기를 얻고 있음. 최적화 목적은 어떻게 바뀌었나? 성능은 여전히 중요한 문제이다. 200년에 흥미로운 일이 있었음. ISCA 2000에 Wattch와 SimplePower가 발표됨. Transient fault detection via simultaneous multithreading이 발표됨. 전력과 reliability가 2000년 이후로 중요한 문제가 됨. CMOS technology는 더이상 scale하지 않는다. 새로운 기술이 아키텍쳐 디자인에 도움이 된다. 마찬가지로 아키텍쳐가 기술 발전에 영향을 준다. 그 사례로 3D stacking이 있다. 3D stacking technology가 처음에 나왔고, 이를 사용해 아키텍쳐에 적용하자는 이야기를 학계에서 함. 이를 가지고 실제로 상품을 만들고자 하는 시도가 있었다. 어려움이 있었고, 2.5D로 옮겨가면서 기술과 아키텍쳐가 상호작용하며 발전하고 있음. ISCA의 논문들을 architecture driven / technology driven / application drive으로 분류하여 살펴봄. Architecture driven 논문은 꾸준히 나오고 있고, technology driven, application driven 논문은 요즘 들어 많이 나오고 있음. 새로운 application에는 data center, AI 등이 있음. 새로운 기술에는 STT-RAM, ReRAM, PCM, Memristor, 3D stacking 등이 있음.

10. AMD Memory Encryption Tutorial
Containers & Future Research. Hardware virtualization이 격리 메커니즘에서 중요해지고 있다. Hardware virtualization을 사용하면 훨씬 성능이 좋고, 공격 가능한 것도 적음. 가상머신 격리도 쉬워짐. 하드웨어 가상화는 중요함. 컨테이너는 프로세스 수준에서 격리한다. 오버헤드가 적고, 커널과 많은 인터페이스를 갖는다. 가상화 기술은 아님. Memory encryption (SEV)를 사용한다면 컨테이너 환경에서 보안 이점을 갖는다. 컨테이너의 메모리가 암호화되므로, 유출되어도 괜찮음. Secure launch 또한 가능하다. 컨테이너에 SEV를 어떻게 적용할 것인가? 가상화된 시스템을 여러 사용자가 공유. 각 사용자는 자신의 SEV encrypted 커널위에 여러 개의 컨테이너를 실행하는 형식. 가상화된 환경 위에 컨테이너를 실행하므로, 가상화 컨테이너라고 부름. SEV를 사용함으로써, 메모리 데이터를 직접 보는 공격을 방어할 수 있다. 클라우드에서 실행되는 워크로드 사이에 격리가 필요하다는 것이 동기이다. 이러한 요구를 충족시키고자 SEV/SME를 개발함. 워크로드의 격리를 통해 보안성을 향상한다. 특권 소프트웨어로부터 공격을 방어하고, cold boot등의 공격 또한 방어한다. SEV를 사용하면 VM의 보안 수준 향상 또한 가능하다. VM의 lifecycle 전체에 대해 보호 가능하다. 새로운 명령어를 추가하는 것은 아님. VMCB와 cpuid 명령어에 추가 정보가 들어가게 됨.

Advertisements
Tagged with: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
Posted in 1) Memo

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

누적 방문자 수
  • 96,546 hits
%d bloggers like this: