20150430

1. 영어 기사 읽기
1) Infants Already Glued to Multiple Screens, Scientific American
2) Wayward Russian spacecraft expected to re-enter atmosphere, CNN
Wayward Russian spacecraft expected to re-enter atmosphere (wayward – 다루기 힘든)


2. Computer Architecture 청강
– GPU architecture는 쓰레드 수가 많아야 효율적이다. 따라서 프로그래밍 모델에서도 수천개의 쓰레드를 생성해야 한다. 쓰레드 하나는 매우 경량이어야 한다.
– CUDA의 device는 CPU 또는 host에게는 coprocessor이고, 각자 DRAM을 갖는다.
– SPMD이다. 모든 쓰레드는 동일한 코드를 사용하며, 서로 다른 실행 경로를 따를 수 있다. 그리고 처리하는 데이터는 모두 다르다.
– CUDA 프로그래밍 모델에서는 thread block의 개념을 제공한다. 여러 개의 thread를 묶어서 thread block을 구성한다. 같은 thread block에 있는 thread들은 동일한 streaming processor에서 실행된다. 따라서 thread block 안에 있는 thread끼리는 streaming processor의 shared memroy도 공유하게 된다. shared memroy 접근이 외부의 메모리 접근하는 것보다 훨씬 빠르다. 프로그래머가 shared memory 알고 쓸 수 있도록 thread block의 개념을 제공한다. Thread block은 추가로 atomic operation, barrier synchronization을 제공한다.
– shared memory는 메모리 사용할 때 CUDA에서 확실히 선언해주어야 한다. 그렇지 않으면 그냥 메모리를 사용한다.
– GPU에서 연산할 때에는 GPU의 메모리로 데이터를 전송하는 비용을 생각해야 한다. 데이터 전송 비용이 커널 실행 비용보다 크면, GPU로 연산하는 것이 무의미하다.
– 프로그래밍 모델에서는 thread block과 그 안에 thread의 계층을 갖지만, 하드웨어에서는 실제로 warp라는 계층이 있다. 32개의 thread를 warp로 구성하며, warp 단위로 instruction fetch가 발생한다. Warp는 스케쥴링의 단위이다.
– Sun Niagara architecture에서는 캐시 미스가 발생할 때마다 실행하는 쓰레드를 바꾼다. 이렇게 되었을 때 중요한 요인은 메모리가 발생하는 메모리 대역폭 요구를 모두 처리할 수 있느냐이다. 메모리 대역폭이 충분하지 못하면, 쓰레드가 아무리 많아도 소용이 없다.
– share memory는 일종의 scratch pad이다.
– Warp는 operand가 모두 준비되어야 실행할 수 있다.


3. gem5 simulator
gem5에서 기존에 빌드한 SPEC CPU 2006을 실행하니 glibc를 찾을 수 없다는 에러가 발생해서 glibc를 빌드하고자 했음. glibc 빌드가 복잡해 우선 SPEC CPU 2006을 재컴파일했더니 잘 되었다. wrf는 제대로 실행되지 않았다.


4. SIGOPS ([OSDI’14] End-to-end Performance Isolation Through Virtual Datacenters)
데이터 센터는 여러 사용자에 의해 공유되는데, 이로 인해 사용자간 성능의 간섭이 발생할 수 있다. 한 사용자가 read request를 생성하고, 다른 사용자가 write request를 생성하는 상황에서 read request가 경량이므로 write request보다 우선적으로 처리될 수 있다. 이와 같은 사용자간 성능 간섭을 방지하고자, 이 논문에서는 가상 데이터 센터를 통한 성능 분리를 제안한다 (Pulsar).
기존의 자원 할당 정책은 크게 두 가지 종류가 있다. 일정 비율의 자원을 할당하거나, 시간당 request 처리량을 보장할 수 있다. 각 정책의 장단점이 있는데, 이 논문에서는 토큰을 기반으로 자원을 할당하자고 주장한다. 시간당 토큰 처리량으로 자원 할당을 정의하면 모든 자원에 대해 통합적으로 관리할 수 있으며, 성능 간섭도 줄일 수 있다.

Advertisements
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

누적 방문자 수
  • 93,229 hits
%d bloggers like this: