Database Scan Variants on Modern CPUs: A Performance Study. Broneske, D., Breß, S., & Saake, G. In In Memory Data Management and Analysis, of Lecture Notes in Computer Science, pages 97–111. Springer International Publishing, 2015.
abstract   bibtex   
Main-memory databases rely on highly tuned database operations to achieve peak performance. Recently, it has been shown that different code optimizations for database operations favor different processors. However, it is still not clear how the combination of code optimizations (e.g., loop unrolling and vectorization) will affect the performance of database algorithms on different processors. In this paper, we extend prior studies by an in-depth performance analysis of different variants of the scan operator. We find that the performance of the scan operator for different processors gets even harder to predict when multiple code optimizations are combined. Since the scan is the most simple database operator, we expect the same effects for more complex operators such as joins. Based on these results, we identify practical problems for a query processor and discuss how we can counter these challenges in future work.
@incollection{Broneske2015-xy,
  abstract = {Main-memory databases rely on highly tuned database operations
               to achieve peak performance. Recently, it has been shown that
               different code optimizations for database operations favor
               different processors. However, it is still not clear how the
               combination of code optimizations (e.g., loop unrolling and
               vectorization) will affect the performance of database
               algorithms on different processors. In this paper, we extend
               prior studies by an in-depth performance analysis of different
               variants of the scan operator. We find that the performance of
               the scan operator for different processors gets even harder to
               predict when multiple code optimizations are combined. Since the
               scan is the most simple database operator, we expect the same
               effects for more complex operators such as joins. Based on these
               results, we identify practical problems for a query processor
               and discuss how we can counter these challenges in future work.},
  added-at = {2015-04-10T18:02:47.000+0200},
  author = {Broneske, David and Bre\ss{}, Sebastian and Saake, Gunter},
  biburl = {https://www.bibsonomy.org/bibtex/253b22759ffc8fde8b7d7825ef282e6c4/christophv},
  booktitle = {In Memory Data Management and Analysis},
  interhash = {631224ee49d4e191aca73454a247b03a},
  intrahash = {53b22759ffc8fde8b7d7825ef282e6c4},
  keywords = {Predication CPU Loop_unrolling Scan Expose Branching Vectorization},
  pages = {97--111},
  publisher = {Springer International Publishing},
  series = {Lecture Notes in Computer Science},
  timestamp = {2016-01-04T14:22:08.000+0100},
  title = {Database Scan Variants on Modern {CPUs}: A Performance Study},
  year = 2015
}

Downloads: 0