Publications

Detailed Information

Design of High-Performance and Low-Power Memory Systems for Multi-Threaded Architectures

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

최효진

Advisor
성원용
Major
전기·컴퓨터공학부
Issue Date
2012-02
Publisher
서울대학교 대학원
Abstract
Advances in computer architecture with the VLSI technology progress have shown breakthroughs in increasing computation throughput over the past decade. Because the clock frequency increase can hardly be expected in these days, the performance improvement of a system mostly depends on exploiting parallel hardware features. The Chip Multiprocessor (CMP) approach, where a number of simple cores are integrated on a single chip, is wide-spreading even in hand-held devices. Furthermore, it evolves to Chip Multi-Threading (CMT) that combines the many- and multi-core approach with multiple threads on each core. These advances have been successful for exploiting thread- and data-level parallelism that is abundant in many applications such as scientific computation, multi-media processing, machine learning and data mining. However, the memory wall problem has been exacerbated by those advances in processor architectures. Executing many concurrent threads causes excessive data movement between processor and memory, resulting in contention in the memory system. In addition, the memory system suffers from low locality of references due to a large number of threads and cores working simultaneously. As a result, the memory system becomes a critical performance limiting factor and a significant source of energy and power consumption as well.

In this dissertation, the design of memory systems is studied for achieving high performance and low power consumption in multi-threaded architectures. First, in Chapter 3, an analytical DRAM performance model is presented to predict the DRAM access performance using DRAM timing and memory access pattern parameters.
The pattern parameters represent memory access characteristics such as the number of row-buffer misses and the number of read or write requests that hit the row-buffers. Based on the characterization of memory access streams, the model allows us to evaluate the impact of individual DRAM timing on the memory access performance in terms of the bank busy time.

Second, in Chapter 4, several DRAM power reduction strategies and their effects are explored. The techniques examined are memory channel organizations, DRAM clock frequency changes, row-buffer management policies, and the employment of on-chip last-level caches (LLCs). Especially, the use of on-chip cache memory in a multi-threaded architecture is identified as a means of reducing the amount off-chip memory traffic, rather than the memory access latency.

Focused on this aspect, in Chapter 5, a selective cache management scheme is developed to enhance the efficiency of the on-chip shared cache. A shared cache with the least-recently-used (LRU) replacement policy often does not help reducing off-chip memory accesses when the access pattern shows stream-like behavior. To overcome this limitation of the LRU replacement policy, the write-buffering and the read-bypassing techniques are proposed. With the write-buffering, the shared cache stores intermediate data between kernels in a producer-consumer relationship, and attempts to keep them as much as the cache size permits. The read-bypassing helps to retain the data directed to write-buffering in the cache until they are consumed. The proposed techniques are selectively applied to load or store instructions marked with extended cache operators. The simulation results show that the developed scheme can reduce the amount of off-chip memory traffic as much as the cache size allows, and is very effective to compensate for the widening gap between processor and memory bandwidth.

This study allows multi-threaded architectures to better utilize memory bandwidth by optimizing the DRAM architecture and the memory channel organization, and also by improving the on-chip cache efficiency.
최근 수년간, VLSI 집적 기술의 발전과 함께 컴퓨터 아키텍쳐의 발전은 비약적인 연산 능력의 향상을 보여주었다. 하나의 칩에 복수개의 코어를 집적시킨 칩 멀티프로세서(Chip Multiprocessor)는 일반 PC와 서버 뿐만 아니라, 휴대용 기기에까지 널리 적용되고 있다. 또한, 칩 멀티프로세서 방식은 하나의 코어에 복수개의 하드웨어 쓰레드를 지원하는 칩 멀티쓰레딩(Chip Multi-Threading) 방식으로 진화하고 있다. 이와 같은 프로세서 아키텍쳐는 쓰레드 레벨 및 데이터 병렬화에 적합한 구조이기 때문에, 최근 부각되고 있는 과학 연산과 멀티 미디어 신호 처리 등의 응용에서 높은 성능 향상과 낮은 전력 소모를 달성하기에 매우 효과적인 구조이다. 그러나, 이러한 프로세서 아키텍쳐의 발전은 메모리 시스템의 성능 제한 문제를 더 심화시키는 결과를 초래하였다. 높은 수준의 병렬화로 인해 프로세서와 메모리 사이의 데이터 이동이 크게 증가하고, 여러 개의 코어 또는 쓰레드가 동시에 동작하기 때문에 메모리 접근의 지역성이 낮아진다. 따라서, 메모리 시스템은 점점 더 중요한 성능 제한 요소가 될 뿐만 아니라, 전력 소모가 전체 컴퓨터 시스템에서 차지하는 비중이 증가하고 있는 실정이다.
본 논문에서는 멀티쓰레디드 아키텍쳐를 위한 저전력 고성능 메모리 시스템 설계 방안을 연구하였다.

제 3장에서는 DRAM 성능 분석 모델을 제안하여 메인 메모리 접근 특성과 DRAM 타이밍에 의한 접근 성능의 변화를 체계적으로 분석할 수 있도록 한다. 분석 모델의 패턴 파라미터는 로우 버퍼(row-buffer) 미스(miss) 횟수, 로우 버퍼 히트(hit) 중 읽기 또는 쓰기 횟수와 같은 메모리 접근 특성을 나타낸다. 분석 모델은 이와 같은 메모리 접근 특성에 따라 각 DRAM 타이밍들이 접근 성능에 주는 영향을 분석할 수 있도록 한다.

제 4장에서는 DRAM 전력 소모 감소 기법을 연구하였다. 시뮬레이션을 통해, 메모리 채널의 구성과, DRAM 클럭 주파수의 변화, 로우 버퍼 관리 방식, 온 칩 캐쉬의 사용에 따른 DRAM 전력 소모 감소 효과를 분석하였다. 특히, 멀티쓰레디드 아키텍쳐에서 온 칩 캐쉬의 역할은 외부 메모리 접근량 감소와 이에 따른 전력 소모 감소에 있음을 확인하였다. 이것은 기존의 단일 코어, 단일 쓰레드 방식의 프로세서 아키텍쳐에서 온 칩 캐쉬의 사용 목적이 메모리 접근 지연 시간 감소를 통한 성능 향상인 것과는 차이가 있다.

제 5장에서는 캐쉬 메모리의 효율을 극대화하기 위한 캐쉬 관리 정책을 제안하였다. 스트리밍(streaming) 형태의 메모리 접근이 이루어 질 때, 최저 사용빈도 (Least Recently Used) 정책을 사용하는 온 칩 캐쉬가 외부 메모리 접근 횟수를 줄이지 못 하는 경우가 빈번히 발생한다. 이러한 문제를 해결하기 위해, 쓰기 버퍼링 (write-buffer) 과 읽기 우회 (read-bypassing) 방식을 제안하였다. 쓰기 버퍼링은 쓰레드 블럭간 통신을 위한 데이터를 캐쉬에 임시로 저장하며, 읽기 우회 방식은 각 쓰레드 블럭 또는 코어에서 개별적으로 사용하는 데이터에 대해서 공유 캐쉬를 사용하지 않도록 한다. 두 정책은 프로그램의 각 외부 메모리 접근 명령어에 대해 선택적으로 적용 여부를 결정할 수 있다. 시뮬레이션을 통해 외부 메모리 접근량 감소 효과를 LRU 방식과 비교하고 프로세서와 메모리 속도 차이가 증가하는 상황에서 성능 향상 효과를 분석하였다.

본 연구에서 다룬 DRAM 구조 및 메모리 채널 구성의 최적화와 온 칩 캐쉬 관리 정책은 멀티쓰레디드 아키텍쳐에서 메모리 대역폭을 보다 효율적으로 사용할 수 있게 한다.
Language
eng
URI
https://hdl.handle.net/10371/156598

http://dcollection.snu.ac.kr:80/jsp/common/DcLoOrgPer.jsp?sItemId=000000001438
Files in This Item:
There are no files associated with this item.
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share