Effect of memory access and caching on high performance computing
Master of Science === Department of Electrical and Computer Engineering === Dwight Day === High-performance computing is often limited by memory access. As speeds increase, processors are often waiting on data transfers to and from memory. Classic memory controllers focus on delivering sequential me...
Main Author: | |
---|---|
Language: | en_US |
Published: |
Kansas State University
2012
|
Subjects: | |
Online Access: | http://hdl.handle.net/2097/13828 |
id |
ndltd-KSU-oai-krex.k-state.edu-2097-13828 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-KSU-oai-krex.k-state.edu-2097-138282017-03-04T03:51:13Z Effect of memory access and caching on high performance computing Groening, James Cache High performance computing FPGA Memory Computer Engineering (0464) Electrical Engineering (0544) Master of Science Department of Electrical and Computer Engineering Dwight Day High-performance computing is often limited by memory access. As speeds increase, processors are often waiting on data transfers to and from memory. Classic memory controllers focus on delivering sequential memory as quickly as possible. This will increase the performance of instruction reads and sequential data reads and writes. However, many applications in high-performance computing often include random memory access which can limit the performance of the system. Techniques such as scatter/gather can improve performance by allowing nonsequential data to be written and read in a single operation. Caching can also improve performance by storing some of the data in memory local to the processor. In this project, we try to find the benefits of different cache configurations. The different configurations include different cache line sizes as well as total size of cache. Although a range of benchmarks are typically used to test performance, we focused on a conjugate gradient solver, HPCCG. The program HPCCG incorporates many of the elements of common benchmarks used in high-performance computing, and relates better to a real world problem. Results show that the performance of a cache configuration can depend on the size of the problem. Problems of smaller sizes can benefit more from a larger cache, while a smaller cache may be sufficient for larger problems. 2012-05-17T14:18:56Z 2012-05-17T14:18:56Z 2012-05-17 2012 August Thesis http://hdl.handle.net/2097/13828 en_US Kansas State University |
collection |
NDLTD |
language |
en_US |
sources |
NDLTD |
topic |
Cache High performance computing FPGA Memory Computer Engineering (0464) Electrical Engineering (0544) |
spellingShingle |
Cache High performance computing FPGA Memory Computer Engineering (0464) Electrical Engineering (0544) Groening, James Effect of memory access and caching on high performance computing |
description |
Master of Science === Department of Electrical and Computer Engineering === Dwight Day === High-performance computing is often limited by memory access. As speeds increase, processors are often waiting on data transfers to and from memory. Classic memory controllers focus on delivering sequential memory as quickly as possible. This will increase the performance of instruction reads and sequential data reads and writes. However, many applications in high-performance computing often include random memory access which can limit the performance of the system. Techniques such as scatter/gather can improve performance by allowing nonsequential data to be written and read in a single operation. Caching can also improve performance by storing some of the data in memory local to the processor.
In this project, we try to find the benefits of different cache configurations. The different configurations include different cache line sizes as well as total size of cache. Although a range of benchmarks are typically used to test performance, we focused on a conjugate gradient solver, HPCCG. The program HPCCG incorporates many of the elements of common benchmarks used in high-performance computing, and relates better to a real world problem. Results show that the performance of a cache configuration can depend on the size of the problem. Problems of smaller sizes can benefit more from a larger cache, while a smaller cache may be sufficient for larger problems. |
author |
Groening, James |
author_facet |
Groening, James |
author_sort |
Groening, James |
title |
Effect of memory access and caching on high performance computing |
title_short |
Effect of memory access and caching on high performance computing |
title_full |
Effect of memory access and caching on high performance computing |
title_fullStr |
Effect of memory access and caching on high performance computing |
title_full_unstemmed |
Effect of memory access and caching on high performance computing |
title_sort |
effect of memory access and caching on high performance computing |
publisher |
Kansas State University |
publishDate |
2012 |
url |
http://hdl.handle.net/2097/13828 |
work_keys_str_mv |
AT groeningjames effectofmemoryaccessandcachingonhighperformancecomputing |
_version_ |
1718418922544300032 |