11월 4일 Meeting

Lab.work 2009. 11. 4. 19:12
다음주 월요일까지 할일 List

@ Phoenix

1) 일단 Ideal과 Mesh의 performance 차이가 얼마나 나는지 알아보기.
즉, Network bottleneck이 얼마나 있는지 알아보기

2) 각 phase에서의 miss rate알아보기

3) 각 Node별, Message와 Data traffic이 시간에 따라 어떻게 변하는지 10,000 cycle 단위로 plot

@ Booksim

0) injection voq 구현 ㅠㅠ

1) A New Scalable and Cost-Effective Congestion Management Strategy for Lossless Multistage Interconnection Networks  (HPCA 05)
논문을 재구현 할수 있는가?

2) 64 node에서 test 
test1: 8x8 mesh, 64 ring, 4ary 3 fly (buf=16)

3) hotspot이 다른 node에 있을때는 얼마나 다를까?
16 node에서 5번 node에 hotspot일때는 0번 노드에 hotspot이 있을때 보다 congestion이 더 많음!

@ Other

1) 논문 읽기!
Achieving Predictable Performance Through Better Memory Controller Placement in Many-Core CMPs (ISCA 09)

2) Garnet 코드 완벽 공부!ㅠㅠ
GARNET: A Detailed On-Chip Network Model inside a Full-System Simulator

다음주 화요일 sigMP 전까지

@ 논문 읽기

1) Design and Evaluation of Hierarchical On-Chip Network Topologies for next generation CMPs (HPCA 2009)

How different is the topology from a CMESH topology?
How is the "global bus" different from a concentration implementation?
hybrid: concentration degree=8, wide bus 사용. router의 개수는 node의 개수 + 추가적인 hardware 필요
cmesh: concentration degree=4, router를 sharing 한다. router의 개수는 nodes/4 + cmesh에 맞는 router 사용.
그래서 각각의 delay가 다를 수 있다는거? locally 연결된 node간의 latency도 다르다.

Why is something like "XShare" needed? (i.e. what created the need for something like XShare?) When does FBFLY topology make sense?
channel slicing과 비슷한 개념으로 생각된다.
하나의 channel을 여러개가 공유하게 되므로 하나가 다 잡아먹고 있는것을 방지하기 위해서 사용하는 것인듯 하다.

What is the impact of "locality" on NoC performance?
What would be a worst-case traffic pattern for the proposed topology in this work?
local traffic은 거의 없이 global traffic이 많은 경우 (with high injection rate)

other issues
실제 application에서는 local traffic이 얼마나 생기는지 궁금.
cmesh와 비교할려면 8-degree cmesh와 비교해야 하는게 아닌가?

2) Express virtual channel Flow Control (ISCA 2007)

What is an "ideal" on-chip network latency?
network contention 없이 router hop count + channel latency만 고려한 latency.

Compared to a conventional 2D mesh network, what makes EVC more complex?
Do you think it is a good idea to implement flow control such as EVC to improve performance, or it is better to change to a different topology?
EVCs를 사용할 경우 router가 복잡해지고, static EVCs를 사용한다면 topology와 차이가 없고, 오히려 topology 형태가 더 좋은 performance를 낼 수 있다고 생각된다. dynamic EVCs를 사용하면 static의 문제점은 해결할 수 있을것으로 보이나, traffic에 따라 매우 다른 결과를 보일 것으로 판단된다.

Most NoC evaluation use "even number" network - for example, 16, 64 nodes, etc..  Why do you think the authors use a 7x7 network in their evaluation?
EVC network를 대칭으로 만들기 위해서 odd number를 사용.

What would be a worst-case traffic pattern using static EVCs?
What is the advantage/disadvantage of using dynamic EVCs?
neighbor node간의 traffic이 많은 경우에는 EVCs를 사용하는것이 conventional mesh 보다 더 안좋을 수 있음.

other issues
위에서 언급한 것처럼, 비슷한 topology 형태를 적용했을때 performance는 어떻게 될지 궁금.
torus topology가 아니기 때문에 양 끝의 node들을 bypass할수는 없다. 
node 수가 많아지게 되면, 즉 하나의 bypass channel 사이에 여러개의 node가 들어가게 되면 starvation문제가 더 심각해 질것으로 예상된다. 

'Lab.work' 카테고리의 다른 글

11월 11일 Meeting  (0) 2009.11.11
Weekly Report (11/9)  (0) 2009.11.10
Weekly Report  (0) 2009.11.04
10월 28일 Meeting  (0) 2009.10.28
Weekly Report (10/27)  (0) 2009.10.28
블로그 이미지

민둥

,

Weekly Report

Lab.work 2009. 11. 4. 19:05
@ phoenix

Network traffic patterns that I showed you last week are wrong, because my code had the garnet error.
I ran it again, and the number of message is much more than before, but the pattern is still similar.

I am also counting the packets every 1,000,000 cycle to get the average injection rate each cycle.
It may take 2 or more day to finish.

@ Booksim

I implemented the injection queue using voq.
And tested using bufsize=16 and # of vcs=16, packets were counted only between 3000~6000 cycle.
The packets are randomly selected from the injection queue, if the queue is not empty.
The result file is attached.

'Lab.work' 카테고리의 다른 글

Weekly Report (11/9)  (0) 2009.11.10
11월 4일 Meeting  (0) 2009.11.04
10월 28일 Meeting  (0) 2009.10.28
Weekly Report (10/27)  (0) 2009.10.28
Booksim VOQ 문제 해결  (0) 2009.10.27
블로그 이미지

민둥

,

10월 28일 Meeting

Lab.work 2009. 10. 28. 20:19
@ Phoenix

L2 cache size, Memory size
Data는 Memory에 어떤식으로 분배되어 있는지
그리고 Ruby에서 뽑을 수 있는 일반적인 stat들도 같이..

전체 message / cycle => average injection rate를
각 cycle마다 어떻게 변하는지 그래프를 그려보기

@ Booksim

infinite buf를 사용하는것은 문제가 있으므로
injection queue를 voq로 구현하면 문제가 해결!
구현해봅세봅세~~~

@ ICN Project

mesh에서 특정 request에 대한 delay를 0으로 주면 그 성능이 어떻게 되는가..
queuing delay를 0으로 바꿨는데 ideal보다 더 좋은 결과를 얻었음-_- 뭐지-_-

'Lab.work' 카테고리의 다른 글

11월 4일 Meeting  (0) 2009.11.04
Weekly Report  (0) 2009.11.04
Weekly Report (10/27)  (0) 2009.10.28
Booksim VOQ 문제 해결  (0) 2009.10.27
Booksim Accepted Throughput  (0) 2009.10.21
블로그 이미지

민둥

,

Weekly Report (10/27)

Lab.work 2009. 10. 28. 18:30
@ phoenix

Last Thursday, I made the phoenix presentation and we discussed about that.

And I printed out the network traffic of phoenix (wordcount) on 16 CMP mesh topology using garnet network.
In the attached graph (network_traffic.pdf), the horizontal axis represents the source nodes and the vertical axis represents the destinations. 
the result is the amount of traffic from beginning to end of the program, and it does not show specific pattern.

I think I should use magic breaks and find the traffic patterns of map/reduce/merge phase.

@ Booksim

As I mentioned earlier, voq result finally gets better as we expected.

I only counted the accepted packets between 3000 and 6000 cycle. and then, calculated the throughput. (warm-up takes 3000 cycles)
I also used the infinite buffer (1,000,000,000 buffer).
because if the buffer size is small, the first packet in the injection queue will be blocked and voq cannot process other packets.

(3000cycle_infinite_buf.xlsx)
I tested more using UR traffic and UR+50%hotspot traffic,
If more portion of packet goes to the hotspot node, voq performs much better than novoq, of course.
But when I use UR traffic without hotspot, voq is not always better.

Thanks.
minjeong

'Lab.work' 카테고리의 다른 글

Weekly Report  (0) 2009.11.04
10월 28일 Meeting  (0) 2009.10.28
Booksim VOQ 문제 해결  (0) 2009.10.27
Booksim Accepted Throughput  (0) 2009.10.21
Weekly Report (10/20)  (0) 2009.10.21
블로그 이미지

민둥

,

Booksim VOQ 문제 해결

Lab.work 2009. 10. 27. 00:16
Voq result finally gets better as we expected. 

I only counted the accepted packets between 3000 and 6000 cycle. 
 And then, calculated the throughput. (warm-up takes 3000 cycles) 

I also used the infinite buffer (1,000,000,000 buffer). 
because if the buffer size is small, 
the first packet in the injection queue will be blocked and voq cannot process other packets.

결국 제한된 cycle에서의 accepted packet,
무한 사이즈의 buffer를 사용했을때, 우리가 원하는 결과를 뽑아낼 수 있었음.

'Lab.work' 카테고리의 다른 글

10월 28일 Meeting  (0) 2009.10.28
Weekly Report (10/27)  (0) 2009.10.28
Booksim Accepted Throughput  (0) 2009.10.21
Weekly Report (10/20)  (0) 2009.10.21
Weekly Report (10/12)  (0) 2009.10.12
블로그 이미지

민둥

,