Saber: window-based hybrid stream processing for heterogeneous architectures
File(s)saber-sigmod_accepted.pdf (932.18 KB)
Accepted version
Author(s)
Type
Conference Paper
Abstract
Modern servers have become heterogeneous, often combining multicore
CPUs with many-core GPGPUs. Such heterogeneous architectures
have the potential to improve the performance of data-intensive
stream processing applications, but they are not supported by current
relational stream processing engines. For an engine to exploit a
heterogeneous architecture, it must execute streaming SQL queries
with sufficient data-parallelism to fully utilise all available heterogeneous
processors, and decide how to use each in the most effective
way. It must do this while respecting the semantics of streaming
SQL queries, in particular with regard to window handling.
We describe SABER, a hybrid high-performance relational stream
processing engine for CPUs and GPGPUs. SABER executes windowbased
streaming SQL queries in a data-parallel fashion using all
available CPU and GPGPU cores. Instead of statically assigning
query operators to heterogeneous processors, SABER employs a
new adaptive heterogeneous lookahead scheduling strategy, which
increases the share of queries executing on the processor that yields
the highest performance. To hide data movement costs, SABER
pipelines the transfer of stream data between different memory types
and the CPU/GPGPU. Our experimental comparison against state-ofthe-art
engines shows that SABER increases processing throughput
while maintaining low latency for a wide range of streaming SQL
queries with small and large windows sizes.
CPUs with many-core GPGPUs. Such heterogeneous architectures
have the potential to improve the performance of data-intensive
stream processing applications, but they are not supported by current
relational stream processing engines. For an engine to exploit a
heterogeneous architecture, it must execute streaming SQL queries
with sufficient data-parallelism to fully utilise all available heterogeneous
processors, and decide how to use each in the most effective
way. It must do this while respecting the semantics of streaming
SQL queries, in particular with regard to window handling.
We describe SABER, a hybrid high-performance relational stream
processing engine for CPUs and GPGPUs. SABER executes windowbased
streaming SQL queries in a data-parallel fashion using all
available CPU and GPGPU cores. Instead of statically assigning
query operators to heterogeneous processors, SABER employs a
new adaptive heterogeneous lookahead scheduling strategy, which
increases the share of queries executing on the processor that yields
the highest performance. To hide data movement costs, SABER
pipelines the transfer of stream data between different memory types
and the CPU/GPGPU. Our experimental comparison against state-ofthe-art
engines shows that SABER increases processing throughput
while maintaining low latency for a wide range of streaming SQL
queries with small and large windows sizes.
Date Issued
2016-06-14
Date Acceptance
2015-09-20
Citation
Proceedings of the ACM SIGMOD International Conference on Management of Data, 2016, pp.555-569
ISBN
9781450335317
Publisher
ACM
Start Page
555
End Page
569
Journal / Book Title
Proceedings of the ACM SIGMOD International Conference on Management of Data
Copyright Statement
© ACM, 2016. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version has not yet been published.
Sponsor
Commission of the European Communities
Grant Number
FP7 - 318521
Source
2016 ACM SIGMOD/PODS Conference
Subjects
doc-ref21
Notes
This is a dummy significance statement.
Publication Status
Published
Start Date
2016-06-26
Finish Date
2016-07-01
Coverage Spatial
San Francisco, CA, USA