20150701

1. 영어 기사 읽기
1) Bird Literally Weighs Its Food Options, Scientific American
– To find out how the jays do it, researchers fiddled with their feed. (fiddle – 만지작거리다)
2) Greece defaults on $1.7 billion IMF payment, CNN


2. 컴퓨터 구조 복습
CPU 발전의 역사와 OoO에 대해 계속 잊어서, 이에 대해 다시 공부함.
– Computer Architecture 청강한 것 중 OoO core에 관련된 기록 모음
[1] 2015/04/07, https://gumdaeng.com/2015/04/07/20150407/
[2] 2015/04/09, https://gumdaeng.com/2015/04/09/20150409/
[3] 2015/04/14, https://gumdaeng.com/2015/04/14/20150414/
[4] 2015/04/16, https://gumdaeng.com/2015/04/16/20150416/
– Tomasulo algorithm은 분산된 hazard detection을 제공하고, register renaming을 사용해 WAW와 WAR를 제거한다. 하지만 speculative한 실행을 지원하지 않으며, 인터럽트에 정확성을 제공하지 못한다 (2015/04/09 참고)
– 하지만 그렇다고 해서, Tomasulo algorithm을 사용하면 speculative execution이 불가능한 것은 아닌 것 같다. ROB를 추가로 사용하면 speculative execution을 지원할 수 있는 듯 하다.
– Performance metric의 평균을 구할 때, latency는 산술 평균, throughput과 같은 rate은 조화 평균, speedup과 같은 ratio는 기하 평균을 사용한다. (CSE502: Computer Architecture (Spring ’13), http://compas.cs.stonybrook.edu/course/cse502-s13/lectures/cse502-L0-intro-and-review.pdf)
– 한 명령어를 파이프라이닝하면, CPI가 높아지지만 clock은 짧아진다. 한 명령어 처리에 필요한 latency는 길어지지만, throughput은 높아진다. (CSE502: Computer Architecture (Spring ’13), http://compas.cs.stonybrook.edu/course/cse502-s13/lectures/cse502-L4-pipelining.pdf)


3. 벤치마크에 대한 이야기 (교수님과의 미팅에서)
– mcf는 매우 흥미로운 특성을 갖는 워크로드이다. Cache friendly하면서도 thrashing하는 특성을 갖는다. 트리 또는 링크드 리스트에 대한 포인터 접근으로 인한 결과인 것 같다. 특히, L1 cache의 associativity를 4에서 8로 높이면 성능이 높아지는 특성을 갖는다. Intel이 mcf를 benchmark에 포함시키는 이유가, L1 associativity를 높인 장점을 보여주기 위해서라는 이야기도 있음.
– SPEC은 cache miss와 같은 CPU 특성을 잘 보여주는 장점은 있지만, single core workload라는 단점이 있다. Memory access footprint가 크지 않다.


3. 한글 이름을 영어 이름으로 변경해주는 프로그램
한글 이름을 영어 이름으로 바꿔주는 프로그램이 있었다.
babylon, http://translation.babylon.com/english/Korean+name/


4. 연구실 OpenLava 클러스터의 network congestion
17*13 = 221개 QEMU 실험을 동시에 할 때에는 괜찮았는데, 23*13 = 299개 실험을 동시에 하니 network congestion이 다소 심각해진다. NFS가 동시에 감당할 수 있는 실험의 양이 그렇게 많지 않은 것 같다. 최대 성능을 이끌어내려면 결국에는 로컬 /tmp 디렉토리에서 데이터를 읽으며 실험하는 것이 가장 좋은 듯 하다. 아니다, 지금은 다시 실험이 잘 돌고 있다.


5. Memory Bandwidth를 계산하는 방법
[HPCA’15] Heterogeneous memory architectures: A HW SW approach for mixing die-stacked and off-package memories 를 읽고 있는데, HBM의 memory bandwidth에 대한 이야기가 나왔다. HBM의 경우, 128bit 너비, 8개 채널, 1Gbps의 대역폭을 사용하므로, 한 stack 당 128GB/s의 대역폭을 갖는다. 따라서 8개의 stack을 모두 사용하면 1TB/s의 대역폭이 나온다. 이를 읽다가 태훈이 형에게 현재 DDR3의 대역폭이 궁금해 여쭤보았다. DDR3의 경우 12GB/s 정도의 대역폭을 갖는다고 하셨다. DDR3는 800MHz로 동작하는데, DDR이므로 rising edge하고 falling edge 모두에서 데이터를 가져온다. 1초당 1600 * 1024 * 1024번 데이터를 가져온다. 이 때, 한 번에 8B씩 데이터를 가져오므로, 1초에는 8 * 1600 * 1024 * 1024B를 가져올 수 있다. (=12.5GB/s)
그런데, 위키피디아에서 확인해보니 아무래도 이 방법이 아닌 것 같다. (List of device bit rates, Wikipedia, https://en.wikipedia.org/wiki/List_of_device_bit_rates) 여기에 나오는 DDR3의 대역폭은 6.4GB/s~24GB/s 정도를 보이고 있다. 값이 다른 이유가 무엇일까? 무엇이 진짜 DDR3의 대역폭인가? Transcend에서 제공하는 표에서는 DDR3가 8.5GB/s~14.9GB/s의 대역폭을 제공한다고 한다 (What is the difference between SDRAM, DDR1, DDR2, DDR3 and DDR4?, Transcend, http://kr.transcend-info.com/Support/FAQ-296)

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 )

Google+ photo

You are commenting using your Google+ 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 )

Connecting to %s

Recent Posts
누적 방문자 수
  • 142,141 hits
%d bloggers like this: