Skip to main content
Erschienen in: The VLDB Journal 6/2016

01.12.2016 | Regular Paper

SkyAlign: a portable, work-efficient skyline algorithm for multicore and GPU architectures

verfasst von: Kenneth S. Bøgh, Sean Chester, Ira Assent

Erschienen in: The VLDB Journal | Ausgabe 6/2016

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

The skyline operator determines points in a multidimensional dataset that offer some optimal trade-off. State-of-the-art CPU skyline algorithms exploit quad-tree partitioning with complex branching to minimise the number of point-to-point comparisons. Branch-phobic GPU skyline algorithms rely on compute throughput rather than partitioning, but fail to match the performance of sequential algorithms. In this paper, we introduce a new skyline algorithm, SkyAlign, that is designed for the GPU, and a GPU-friendly, grid-based tree structure upon which the algorithm relies. The search tree allows us to dramatically reduce the amount of work done by the GPU algorithm by avoiding most point-to-point comparisons at the cost of some compute throughput. This trade-off allows SkyAlign to achieve orders of magnitude faster performance than its predecessors. Moreover, a NUMA-oblivious port of SkyAlign outperforms native multicore state of the art on challenging workloads by an increasing margin as more cores and sockets are utilised.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
Without loss of generality and to simplify exposition, we assume smaller values are better, but to handle mixed preferences (e.g. Table 1) is a straightforward adaptation.
 
2
Obtained by counting low-level operations in Algorithm 1 of GGS [2] (the branch-free dominance test). Branching DTs are ill-suited to GPUs and have unpredictable, variable cost.
 
3
Hyper-threading also hides latencies, but it is not as impactful as the features that we will explicitly analyse.
 
4
We assume “large” memory to simplify the algorithm.
 
5
Manhattan norm is the sum of all attribute values.
 
6
Either via PCIe transfer from CPU (host) memory or because the previous GPU operator in the query plan completes.
 
7
Progressive skyline algorithms [17] can output solution points as they are discovered, in contrast to an algorithm that must fully complete before any solution point can be confirmed.
 
8
Strictly speaking, some warps run concurrently while others queue, and the order in which they are queued is unpredictable.
 
10
This is the number of concurrent threads on our GPU.
 
11
CUDA 7 and C++ are similar enough that converting from the former to the latter is trivial.
 
13
BSkyTree does not use the pre-filter that the other three methods use, but its pivot selection routine has a similar effect.
 
14
Up to eight instructions can be retired in a cycle if they are ready for execution, but the front-end (the instruction fetch-decode cycle) populates the queue at a slower rate.
 
Literatur
1.
Zurück zum Zitat Bartolini, I., Ciaccia, P., Patella, M.: Efficient sort-based skyline evaluation. TODS 33(4), 31:1–49 (2008)CrossRef Bartolini, I., Ciaccia, P., Patella, M.: Efficient sort-based skyline evaluation. TODS 33(4), 31:1–49 (2008)CrossRef
2.
Zurück zum Zitat Bøgh, K.S., Assent, I., Magnani, M.: Efficient GPU-based skyline computation. In: Proceedings of the DaMoN, pp. 5:1–6 (2013) Bøgh, K.S., Assent, I., Magnani, M.: Efficient GPU-based skyline computation. In: Proceedings of the DaMoN, pp. 5:1–6 (2013)
3.
Zurück zum Zitat Bøgh, K.S., Chester, S., Assent, I.: Work-efficient skyline computation for the GPU. PVLDB 8(9), 962–973 (2015) Bøgh, K.S., Chester, S., Assent, I.: Work-efficient skyline computation for the GPU. PVLDB 8(9), 962–973 (2015)
4.
Zurück zum Zitat Börzsönyi, S., Kossman, D., Stocker, K.: The skyline operator. In: Proceedings of the ICDE, pp. 421–430 (2001) Börzsönyi, S., Kossman, D., Stocker, K.: The skyline operator. In: Proceedings of the ICDE, pp. 421–430 (2001)
5.
Zurück zum Zitat Chester, S., Šidlauskas, D., Assent, I., Bøgh, K.S.: Scalable parallelization of skyline computation for multi-core processors. In: Proceedings of the ICDE (2015) Chester, S., Šidlauskas, D., Assent, I., Bøgh, K.S.: Scalable parallelization of skyline computation for multi-core processors. In: Proceedings of the ICDE (2015)
6.
Zurück zum Zitat Cho, S.R., Lee, J., Hwang, S.W., Han, H., Lee, S.W.: VSkyline: vectorization for efficient skyline computation. SIGMOD Rec. 39(2), 19–26 (2010)CrossRef Cho, S.R., Lee, J., Hwang, S.W., Han, H., Lee, S.W.: VSkyline: vectorization for efficient skyline computation. SIGMOD Rec. 39(2), 19–26 (2010)CrossRef
7.
Zurück zum Zitat Choi, W., Liu, L., Yu, B.: Multi-criteria decision making with skyline computation. In: Proceedings of the IRI, pp. 316–323 (2012) Choi, W., Liu, L., Yu, B.: Multi-criteria decision making with skyline computation. In: Proceedings of the IRI, pp. 316–323 (2012)
8.
Zurück zum Zitat Chomicki, J., Godfrey, P., Gryz, J., Liang, D.: Skyline with presorting. In: Proc of the ICDE, pp. 717–719 (2003) Chomicki, J., Godfrey, P., Gryz, J., Liang, D.: Skyline with presorting. In: Proc of the ICDE, pp. 717–719 (2003)
9.
Zurück zum Zitat He, B., Lu, M., Yang, K., Fang, R., Govindaraju, N.K., Luo, Q., Sander, P.V.: Relational query coprocessing on graphics processors. TODS 34(4), 1–39 (2009)CrossRef He, B., Lu, M., Yang, K., Fang, R., Govindaraju, N.K., Luo, Q., Sander, P.V.: Relational query coprocessing on graphics processors. TODS 34(4), 1–39 (2009)CrossRef
10.
Zurück zum Zitat He, B., Yang, K., Fang, R., Lu, M., Govindaraju, N.K., Luo, Q., Sander, P.V.: Relational joins on graphics processors. In: Proceedings of the SIGMOD, pp. 511–524 (2008) He, B., Yang, K., Fang, R., Lu, M., Govindaraju, N.K., Luo, Q., Sander, P.V.: Relational joins on graphics processors. In: Proceedings of the SIGMOD, pp. 511–524 (2008)
11.
Zurück zum Zitat Hose, K., Vlachou, A.: A survey of skyline processing in highly distributed environments. VLDB J. 21(3), 359–384 (2012)CrossRef Hose, K., Vlachou, A.: A survey of skyline processing in highly distributed environments. VLDB J. 21(3), 359–384 (2012)CrossRef
12.
Zurück zum Zitat Im, H., Park, J., Park, S.: Parallel skyline computation on multicore architectures. Inf. Syst. 36(4), 808–823 (2011)MathSciNetCrossRef Im, H., Park, J., Park, S.: Parallel skyline computation on multicore architectures. Inf. Syst. 36(4), 808–823 (2011)MathSciNetCrossRef
13.
Zurück zum Zitat Kaldewey, T., Lohman, G., Mueller, R., Volk, P.: GPU join processing revisited. In: Proceedings of the DaMoN, pp. 55–62 (2012) Kaldewey, T., Lohman, G., Mueller, R., Volk, P.: GPU join processing revisited. In: Proceedings of the DaMoN, pp. 55–62 (2012)
14.
Zurück zum Zitat Lee, J., Hwang, S.W.: Scalable skyline computation using a balanced pivot selection technique. Inf. Syst. 39, 1–24 (2014)MathSciNetCrossRef Lee, J., Hwang, S.W.: Scalable skyline computation using a balanced pivot selection technique. Inf. Syst. 39, 1–24 (2014)MathSciNetCrossRef
15.
Zurück zum Zitat Lee, K.C.K., Zheng, B., Li, H., Lee, W.C.: Approaching the skyline in Z order. In: Proceedings of the VLDB, pp. 279–290 (2007) Lee, K.C.K., Zheng, B., Li, H., Lee, W.C.: Approaching the skyline in Z order. In: Proceedings of the VLDB, pp. 279–290 (2007)
16.
Zurück zum Zitat Mullesgaard, K., Pedersen, J.L., Lu, H., Zhou, Y.: Efficient skyline computation in MapReduce. In: Proceedings of the EDBT, pp. 37–48 (2014) Mullesgaard, K., Pedersen, J.L., Lu, H., Zhou, Y.: Efficient skyline computation in MapReduce. In: Proceedings of the EDBT, pp. 37–48 (2014)
17.
Zurück zum Zitat Papadias, D., Tao, Y., Fu, G., Seeger, B.: Progressive skyline computation in database systems. TODS 30(1), 41–82 (2005)CrossRef Papadias, D., Tao, Y., Fu, G., Seeger, B.: Progressive skyline computation in database systems. TODS 30(1), 41–82 (2005)CrossRef
18.
Zurück zum Zitat Park, Y., Min, J.K., Shim, K.: Parallel computation of skyline and reverse skyline queries using MapReduce. PVLDB 6(14), 2002–2011 (2013) Park, Y., Min, J.K., Shim, K.: Parallel computation of skyline and reverse skyline queries using MapReduce. PVLDB 6(14), 2002–2011 (2013)
19.
Zurück zum Zitat Tan, K.L., Eng, P.K., Ooi, B.C.: Efficient progressive skyline computation. In: Proceedings of the VLDB, pp. 301–310 (2001) Tan, K.L., Eng, P.K., Ooi, B.C.: Efficient progressive skyline computation. In: Proceedings of the VLDB, pp. 301–310 (2001)
20.
Zurück zum Zitat Vlachou, A., Doulkeridis, C., Kotidis, Y.: Angle-based space partitioning for efficient parallel skyline computation. In: Proceedings of the SIGMOD, pp. 227–238 (2008) Vlachou, A., Doulkeridis, C., Kotidis, Y.: Angle-based space partitioning for efficient parallel skyline computation. In: Proceedings of the SIGMOD, pp. 227–238 (2008)
21.
Zurück zum Zitat Woods, L., Alonso, G., Teubner, J.: Parallel computation of skyline queries. In: Proceedings of the FCCM, pp. 1–8 (2013) Woods, L., Alonso, G., Teubner, J.: Parallel computation of skyline queries. In: Proceedings of the FCCM, pp. 1–8 (2013)
22.
Zurück zum Zitat Zhang, K., Yang, D., Gao, H., Li, J., Wang, H., Cai, Z.: VMPSP: Efficient skyline computation using VMP-based space partitioning. In: Proceedings of the DASFAA Workshops, pp. 179–193 (2016) Zhang, K., Yang, D., Gao, H., Li, J., Wang, H., Cai, Z.: VMPSP: Efficient skyline computation using VMP-based space partitioning. In: Proceedings of the DASFAA Workshops, pp. 179–193 (2016)
23.
Zurück zum Zitat Zhang, S., Mamoulis, N., Cheung, D.W.: Scalable skyline computation using object-based space partitioning. In: Proceedings of the SIGMOD, pp. 483–494 (2009) Zhang, S., Mamoulis, N., Cheung, D.W.: Scalable skyline computation using object-based space partitioning. In: Proceedings of the SIGMOD, pp. 483–494 (2009)
Metadaten
Titel
SkyAlign: a portable, work-efficient skyline algorithm for multicore and GPU architectures
verfasst von
Kenneth S. Bøgh
Sean Chester
Ira Assent
Publikationsdatum
01.12.2016
Verlag
Springer Berlin Heidelberg
Erschienen in
The VLDB Journal / Ausgabe 6/2016
Print ISSN: 1066-8888
Elektronische ISSN: 0949-877X
DOI
https://doi.org/10.1007/s00778-016-0438-1

Weitere Artikel der Ausgabe 6/2016

The VLDB Journal 6/2016 Zur Ausgabe

Premium Partner