ACM Home Page
Please provide us with feedback. Feedback
Implementing database operations using SIMD instructions
Full text PdfPdf (1.39 MB)
Source International Conference on Management of Data archive
Proceedings of the 2002 ACM SIGMOD international conference on Management of data table of contents
Madison, Wisconsin
SESSION: Research sessions: implementation techniques table of contents
Pages: 145 - 156  
Year of Publication: 2002
ISBN:1-58113-497-5
Authors
Jingren Zhou  Columbia University
Kenneth A. Ross  Columbia University
Sponsor
SIGMOD: ACM Special Interest Group on Management of Data
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 79,   Citation Count: 11
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/564691.564709
What is a DOI?

ABSTRACT

Modern CPUs have instructions that allow basic operations to be performed on several data elements in parallel. These instructions are called SIMD instructions, since they apply a single instruction to multiple data elements. SIMD technology was initially built into commodity processors in order to accelerate the performance of multimedia applications. SIMD instructions provide new opportunities for database engine design and implementation. We study various kinds of operations in a database context, and show how the inner loop of the operations can be accelerated using SIMD instructions. The use of SIMD instructions has two immediate performance benefits: It allows a degree of parallelism, so that many operands can be processed at once. It also often leads to the elimination of conditional branch instructions, reducing branch mispredictions.We consider the most important database operations, including sequential scans, aggregation, index operations, and joins. We present techniques for implementing these using SIMD instructions. We show that there are significant benefits in redesigning traditional query processing algorithms so that they can make better use of SIMD technology. Our study shows that using a SIMD parallelism of four, the CPU time for the new algorithms is from 10% to more than four times less than for the traditional algorithms. Superlinear speedups are obtained as a result of the elimination of branch misprediction effects.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Sybase IQ. http://www.sybase.com/products/archivedproducts/sybaseiq.
 
3
 
4
 
5
6
7
 
8
 
9
 
10
R. Finkel and J. Bentley. Quad trees: A data structure for retrieval on composite keys. Acta Informatica, 4:1-9, 1974.
 
11
12
 
13
InfoCharger Engine. Optimization for decision support solutions. 1998. (available from http://www.tandem.com/prod_des/ifchegpd/ifchegpd.htm).
 
14
Intel Inc. Intel architecture software developer's manual. 2001.
 
15
Intel Inc. Intel C++ compiler user's manual. 2001.
 
16
Intel Inc. Intel IA64 architecture software developer's manual. 2001.
17
 
18
19
 
20
 
21
22
23
24
 
25
26
 
27
SUN Microsystem Inc. VIS instruction set user's manual. 2000.
 
28
Times Ten Performance Software Inc. TimesTen 4.3 and Front-Tier 2.3 product descriptions, 2002. Available at http://www.timesten.com.

CITED BY  11
 
 

Collaborative Colleagues:
Jingren Zhou: colleagues
Kenneth A. Ross: colleagues

Peer to Peer - Readers of this Article have also read: