Go to main content
Formats
Format
BibTeX
MARCXML
TextMARC
MARC
DublinCore
EndNote
NLM
RefWorks
RIS

Files

Abstract

The increased size of data sets is driving the need for increased memory storage andspeed. Persistent memory, PMEM, has emerged as a new solution to the problem. It places itself in between main memory and storage in the memory hierarchy. PMEM offers the ability to increase the amount of addressable memory or the use of dynamic random access memory, DRAM, as a hardware managed cache with PMEM acting as main memory for the machine. In both cases, it becomes paramount to understand the strengths and weaknesses of PMEM. As PMEM is different hardware from DRAM, it has different performance which implies that code written for DRAM might not be optimized for PMEM. This manuscript delves into the performance metrics of PMEM to determine its effectiveness for standard graph algorithms. It also will serve as a guideline as to how to optimally use PMEM and when PMEM becomes advantageous to use. To overcome the physical storage limits of memory, solutions such as distributed computing and out-of-core computing arose. Distributed computing allows multiple nodes of a computing cluster to compute and communicate in parallel. The disadvantage of this approach becomes the communication overhead between nodes. Out-ofcore computing adds layers of slower memory closer to the node to avoid distributed computing. The additional memory typically comes in the form of hard drives or solid-state drives, SSD. Because of how programs interact with drives, code needs to be rewritten to take advantage of this approach, including accessing the memory, reordering the data in a more efficient read order, and localizing computations to minimize reading from drives. PMEM offers the first solution in which current programs can fully utilize the memory with little to no changes in code. This of-iv fers a plug-and-play solution where distributed computing and out-of-core computing cannot. This manuscript measures the performance of PMEM by running benchmarks to measure bandwidth, latency, and graph algorithm performance. Each benchmark is ran on PMEM and DRAM to compare against each other. The graphs selected for benchmarking are a combination of real-world graphs. Results shows that PMEM can be utilized to achieve performance comparable to DRAM.

Details

PDF

Statistics

from
to
Export
Download Full History