As the number of cores in computer system are increasing, memory system becomes more important. So, most of system propose intelligent memory scheduling to exploit bank level parallelism and row access locality. By the benefit of intelligent memory scheduling, we can solve bottleneck of memory system, and can achieve better performance. We have one observation that buffers already existed in the memory controller are not fully utilized. In this situation, we plan to reduce the size of memory controller buffer to save leakage power and area. We also propose In-Network Memory Scheduling to compensate for some performance degraded applications caused by buffer shrinking. In-Network Memory Scheduling considers not only memory controller buffer but also router buffer to carry out memory scheduling. This work is unique as it combines the impact of both the core and the on-chip network with memory scheduling in a manycore accelerators. By applying In-Network Memory Scheduling, the performance is within 96% of the baseline and can significantly reduce power and area.
최근 컴퓨터 시스템에서 코어의 수가 증가함에 따라, 메모리 시스템이 점점 더 중요해지고 있습니다. 그래서 대부분의 시스템에서는 뱅크 수준 병렬성과 행 접근 지역성을 살리기 위해서 똑똑한 메모리 스케쥴링 기법을 제안하고 있습니다. 똑똑한 메모리 스케쥴링을 사용함으로써 메모리 시스템의 병목현상을 해결할 수 있으며 그 결과 더 나은 성능을 얻을 수 있습니다. 우리는 이미 존재하는 메모리 컨트롤러 버퍼가 충분히 활용되지 않고 있다는 것을 발견했습니다. 이런 상황에서 우리는 누설 전력 및 영역을 줄이기 위해 메모리 컨트롤러 버퍼 크기를 줄이도록 합니다. 또한 버퍼 축소로 인해 일부 어플리케이션에서 성능이 저하되는데, 이것을 해결하기 위해 인-네트워크 메모리 스케쥴링을 제안합니다. 인-네트워크 메모리 스케쥴링은 메모리 스케쥴링을 수행하기 위해서 메모리 컨트롤러 버퍼뿐만 아니라 라우터 버퍼까지 고려하고 있습니다. 다중코어 가속기에서 메모리 스케쥴링을 할 때, 코어 그리고 온칩 네크워크를 고려했다는 점에서 이 연구는 고유한 가치가 있습니다. 인-네트워크 메모리 스케쥴링을 적용함으로써 베이스라인 대비 96%의 성능을 얻을 수 있었고, 동시에 전력과 영역을 줄일 수 있었습니다.