ad-heap: an Efficient Heap Data Structure for Asymmetric Multicore Processors

Weifeng Liu, Brian Vinter

Abstract

Heap is one of the most important fundamental data structures in computer science. Unfortunately, for a long time heaps did not obtain ideal performance gain from widely used throughput-oriented processors because of two reasons: (1) heap property decides that operations between any parent node and its child nodes must be executed sequentially, and (2) heaps, even d-heaps (d-ary heaps or d-way heaps), cannot supply enough wide data parallelism to these processors. Recent research proposed more versatile asymmetric multicore processors (AMPs) that consist of two types of cores (latency-oriented cores with high single-thread performance and throughput-oriented cores with wide vector processing capability), unified memory address space and faster synchronization mechanism among cores with different ISAs. To leverage the AMPs for the heap data structure, in this paper we propose ad-heap, an efficient heap data structure that introduces an implicit bridge structure and properly apportions workloads to the two types of cores. We implement a batch k-selection algorithm and conduct experiments on simulated AMP environments composed of real CPUs and GPUs. In our experiments on two representative platforms, the ad-heap obtains up to 1.5x and 3.6x speedup over the optimal AMP scheduling method that executes the fastest d-heaps on the standalone CPUs and GPUs in parallel.
Original languageEnglish
Title of host publicationProceedings of Workshop on General Purpose Processing Using GPUs : GPGPU-7
Number of pages10
Publication date2014
Pages54-63
Publication statusPublished - 2014

Fingerprint

Dive into the research topics of 'ad-heap: an Efficient Heap Data Structure for Asymmetric Multicore Processors'. Together they form a unique fingerprint.

Cite this