Skip to main content
Erschienen in: The Journal of Supercomputing 11/2019

03.07.2019

ProCTA: program characteristic-based thread partition approach

verfasst von: Yuxiang Li, Zhiyong Zhang, Lili Zhang, Danmei Niu, Changwei Zhao, Bin Song, Liuke Liang

Erschienen in: The Journal of Supercomputing | Ausgabe 11/2019

Einloggen

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

search-config
loading …

Abstract

As a thread-level automatic parallelization technique, thread-level speculation (TLS) can partition irregular serial programs into multiple threads and implement these threads in parallel on multi-core architectures to improve the performance of programs. To tackle the problem that the conventional heuristic rule-based (HR-based) thread partition approach partitions programs of different characteristics with the same scheme and several programs have bad partition results, this paper proposes a program characteristic-based thread partition approach (ProCTA), which uses a machine learning method to learn the knowledge of thread partition from TLS sample set and predicts thread partition schemes for unknown programs in accordance with programs’ characteristics and finally applies the schemes to thread partition. In Prophet compilation system, Olden benchmarks are used to evaluate ProCTA, and a comparison is made between ProCTA and conventional heuristic rules-based partition approach. The experimental results show that the proposed approach can deliver an average 18.24% speedup improvement than HR-based thread partition approach.

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

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!

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+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!

Literatur
1.
Zurück zum Zitat Carlisle MC (1996) Olden: parallelizing programs with dynamic data structures on distributed-memory machines. PhD thesis, Princeton University Carlisle MC (1996) Olden: parallelizing programs with dynamic data structures on distributed-memory machines. PhD thesis, Princeton University
2.
Zurück zum Zitat Chen Z, Zhao YL, Pan XY, Dong ZY, Gao B, Zhong ZW (2009) An overview of prophet. In: International Conference on Algorithms and Architectures for Parallel Processing. Springer, pp 396–407 Chen Z, Zhao YL, Pan XY, Dong ZY, Gao B, Zhong ZW (2009) An overview of prophet. In: International Conference on Algorithms and Architectures for Parallel Processing. Springer, pp 396–407
3.
Zurück zum Zitat Codrescu L, Wills DS (1999) On dynamic speculative thread partitioning and the MEM-slicing algorithm, pp 40–46 Codrescu L, Wills DS (1999) On dynamic speculative thread partitioning and the MEM-slicing algorithm, pp 40–46
4.
Zurück zum Zitat Dong Z, Zhao Y, Wei Y, Wang X, Song S (2009) Prophet: a speculative multi-threading execution model with architectural support based on CMP. In: International Conference on Scalable Computing and Communications; Eighth International Conference on Embedded Computing. SCALCOM-EMBEDDEDCOM’09. IEEE, pp 103–108 Dong Z, Zhao Y, Wei Y, Wang X, Song S (2009) Prophet: a speculative multi-threading execution model with architectural support based on CMP. In: International Conference on Scalable Computing and Communications; Eighth International Conference on Embedded Computing. SCALCOM-EMBEDDEDCOM’09. IEEE, pp 103–108
5.
Zurück zum Zitat Franklin M (1995) Multiscalar processors. ACM Sigarch Comput Archit News 23(2):414–425CrossRef Franklin M (1995) Multiscalar processors. ACM Sigarch Comput Archit News 23(2):414–425CrossRef
6.
Zurück zum Zitat Grewe D, Wang Z, O’Boyle MFP (2011) A workload-aware mapping approach for data-parallel programs. In: Proceedings of the 6th International Conference on High Performance and Embedded Architectures and Compilers. ACM, pp 117–126 Grewe D, Wang Z, O’Boyle MFP (2011) A workload-aware mapping approach for data-parallel programs. In: Proceedings of the 6th International Conference on High Performance and Embedded Architectures and Compilers. ACM, pp 117–126
7.
Zurück zum Zitat Hammond L, Hubbert BA, Siu M, Prabhu MK (2000) The stanford hydra CMP. IEEE Micro 20(2):71–84CrossRef Hammond L, Hubbert BA, Siu M, Prabhu MK (2000) The stanford hydra CMP. IEEE Micro 20(2):71–84CrossRef
8.
Zurück zum Zitat Johnson TA, Eigenmann R, Vijaykumar TN (2004) Min-cut program decomposition for thread-level speculation. In: ACM Sigplan Notices, vol 39. ACM, pp 59–70 Johnson TA, Eigenmann R, Vijaykumar TN (2004) Min-cut program decomposition for thread-level speculation. In: ACM Sigplan Notices, vol 39. ACM, pp 59–70
9.
Zurück zum Zitat Li D-C, Lin Y-S (2006) Using virtual sample generation to build up management knowledge in the early manufacturing stages. Eur J Oper Res 175(1):413–434CrossRef Li D-C, Lin Y-S (2006) Using virtual sample generation to build up management knowledge in the early manufacturing stages. Eur J Oper Res 175(1):413–434CrossRef
10.
Zurück zum Zitat Li Y, Zhao Y, Sun L, Shen M (2017) Optimizing partition thresholds in speculative multithreading. ICIC Express Lett 11(6):1053–1061 Li Y, Zhao Y, Sun L, Shen M (2017) Optimizing partition thresholds in speculative multithreading. ICIC Express Lett 11(6):1053–1061
11.
Zurück zum Zitat Li Y, Zhao Y, Shi J (2016) A hybrid samples generation approach in speculative multithreading. In: 2016 IEEE 18th International Conference on High Performance Computing and Communications; IEEE 14th International Conference on Smart City; IEEE 2nd International Conference on Data Science and Systems (HPCC/SmartCity/DSS). IEEE, pp 35–41 Li Y, Zhao Y, Shi J (2016) A hybrid samples generation approach in speculative multithreading. In: 2016 IEEE 18th International Conference on High Performance Computing and Communications; IEEE 14th International Conference on Smart City; IEEE 2nd International Conference on Data Science and Systems (HPCC/SmartCity/DSS). IEEE, pp 35–41
12.
Zurück zum Zitat Li Y, Zhao Y, Sun L, Shen M (2017) A hybrid sample generation approach in speculative multithreading. J Supercomput 3:1–33 Li Y, Zhao Y, Sun L, Shen M (2017) A hybrid sample generation approach in speculative multithreading. J Supercomput 3:1–33
13.
Zurück zum Zitat Li Y, Zhao Y, Qiangsheng W (2017) Gba:a graph based thread partition approach in speculative multithreading. Concurr Comput Pract Exp 29(21):e4294CrossRef Li Y, Zhao Y, Qiangsheng W (2017) Gba:a graph based thread partition approach in speculative multithreading. Concurr Comput Pract Exp 29(21):e4294CrossRef
14.
Zurück zum Zitat Liu B, Zhao Y, Li M, Liu Y, Feng B (2012) A virtual sample generation approach for speculative multithreading using feature sets and abstract syntax trees. In: 2012 13th International Conference on Parallel and Distributed Computing, Applications and Technologies. IEEE, pp 39–44 Liu B, Zhao Y, Li M, Liu Y, Feng B (2012) A virtual sample generation approach for speculative multithreading using feature sets and abstract syntax trees. In: 2012 13th International Conference on Parallel and Distributed Computing, Applications and Technologies. IEEE, pp 39–44
15.
Zurück zum Zitat Liu B, Zhao Y, Li Y, Sun Y, Feng B (2014) A thread partitioning approach for speculative multithreading. J Supercomput 67(3):778–805CrossRef Liu B, Zhao Y, Li Y, Sun Y, Feng B (2014) A thread partitioning approach for speculative multithreading. J Supercomput 67(3):778–805CrossRef
16.
Zurück zum Zitat Liu B, Zhao Y, Li Y, Sun Y, Feng B (2014) A thread partitioning approach for speculative multithreading. J Supercomput 67(3):778–805CrossRef Liu B, Zhao Y, Li Y, Sun Y, Feng B (2014) A thread partitioning approach for speculative multithreading. J Supercomput 67(3):778–805CrossRef
17.
Zurück zum Zitat Liu W, Tuck J, Ceze L, Ahn W, Strauss K, Renau J, Torrellas J (2006) Posh: a TLS compiler that exploits program structure. In: Proceedings of the Eleventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. ACM, pp 158–167 Liu W, Tuck J, Ceze L, Ahn W, Strauss K, Renau J, Torrellas J (2006) Posh: a TLS compiler that exploits program structure. In: Proceedings of the Eleventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. ACM, pp 158–167
18.
Zurück zum Zitat Madriles C, García-Quiñones C, Sánchez J, Marcuello P, González A, Tullsen DM, Wang H, Shen JP (2008) Mitosis: a speculative multithreaded processor based on precomputation slices. IEEE Trans Parallel Distrib Syst 19(7):914–925CrossRef Madriles C, García-Quiñones C, Sánchez J, Marcuello P, González A, Tullsen DM, Wang H, Shen JP (2008) Mitosis: a speculative multithreaded processor based on precomputation slices. IEEE Trans Parallel Distrib Syst 19(7):914–925CrossRef
19.
Zurück zum Zitat Ohsawa T, Takagi M, Kawahara S, Matsushita S (2005) Pinot: speculative multi-threading processor architecture exploiting parallelism over a wide range of granularities. In: Proceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE Computer Society, pp 81–92 Ohsawa T, Takagi M, Kawahara S, Matsushita S (2005) Pinot: speculative multi-threading processor architecture exploiting parallelism over a wide range of granularities. In: Proceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE Computer Society, pp 81–92
20.
Zurück zum Zitat Prabhu MK, Olukotun K (2005) Exposing speculative thread parallelism in spec2000. In: Proceedings of the Tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. ACM, pp 142–152 Prabhu MK, Olukotun K (2005) Exposing speculative thread parallelism in spec2000. In: Proceedings of the Tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. ACM, pp 142–152
21.
Zurück zum Zitat Quinones CG, Madriles C, Sanchez J, Marcuello P, Gonzalez A, Tullsen DM (2005) Mitosis compiler: an infrastructure for speculative threading based on pre-computation slices. In: ACM Sigplan Notices, vol 40. ACM, pp 269–279 Quinones CG, Madriles C, Sanchez J, Marcuello P, Gonzalez A, Tullsen DM (2005) Mitosis compiler: an infrastructure for speculative threading based on pre-computation slices. In: ACM Sigplan Notices, vol 40. ACM, pp 269–279
22.
Zurück zum Zitat Quinones CG, Madriles C, Sanchez J, Marcuello P, Gonzalez A, Tullsen DM (2005) Mitosis compiler: an infrastructure for speculative threading based on pre-computation slices. In: ACM Sigplan Conference on Programming Language Design & Implementation Quinones CG, Madriles C, Sanchez J, Marcuello P, Gonzalez A, Tullsen DM (2005) Mitosis compiler: an infrastructure for speculative threading based on pre-computation slices. In: ACM Sigplan Conference on Programming Language Design & Implementation
23.
Zurück zum Zitat Rogers A, Carlisle MC, Reppy JH, Hendren LJ (1995) Supporting dynamic data structures on distributed-memory machines. ACM Trans Program Lang Syst 17(2):233–263CrossRef Rogers A, Carlisle MC, Reppy JH, Hendren LJ (1995) Supporting dynamic data structures on distributed-memory machines. ACM Trans Program Lang Syst 17(2):233–263CrossRef
24.
Zurück zum Zitat Song S, Zhao Y, Feng B, Wei Y, Wang X, Zhao H (2010) Prophet+: an extended multicore simulator for speculative multithreading. J Xian Jiaotong Univ 44(10):13–15 Song S, Zhao Y, Feng B, Wei Y, Wang X, Zhao H (2010) Prophet+: an extended multicore simulator for speculative multithreading. J Xian Jiaotong Univ 44(10):13–15
25.
Zurück zum Zitat Steffan JG, Colohan C, Zhai A, Mowry TC (2005) The stampede approach to thread-level speculation. ACM Trans Comput Syst 23(3):253–300CrossRef Steffan JG, Colohan C, Zhai A, Mowry TC (2005) The stampede approach to thread-level speculation. ACM Trans Comput Syst 23(3):253–300CrossRef
26.
Zurück zum Zitat Wang Z, Zhao Y, Liu Y, Chen Z, Lv C, Li Y (2017) A speculative parallel decompression algorithm on apache spark. J Supercomput 73(9):1–30CrossRef Wang Z, Zhao Y, Liu Y, Chen Z, Lv C, Li Y (2017) A speculative parallel decompression algorithm on apache spark. J Supercomput 73(9):1–30CrossRef
27.
Zurück zum Zitat Wang Z, Zhao Y, Liu Y, Lv C (2018) A speculative parallel simulated annealing algorithm based on apache spark. Concurr Comput Pract Exp 1:e4429CrossRef Wang Z, Zhao Y, Liu Y, Lv C (2018) A speculative parallel simulated annealing algorithm based on apache spark. Concurr Comput Pract Exp 1:e4429CrossRef
28.
Zurück zum Zitat Wilson RP, French RS, Wilson CS, Amarasinghe SP, Anderson JM, Tjiang SWK, Liao S-W, Tseng C-W, Hall MW, Lam MS et al (1994) SUIF: an infrastructure for research on parallelizing and optimizing compilers. ACM Sigplan Notices 29(12):31–37CrossRef Wilson RP, French RS, Wilson CS, Amarasinghe SP, Anderson JM, Tjiang SWK, Liao S-W, Tseng C-W, Hall MW, Lam MS et al (1994) SUIF: an infrastructure for research on parallelizing and optimizing compilers. ACM Sigplan Notices 29(12):31–37CrossRef
Metadaten
Titel
ProCTA: program characteristic-based thread partition approach
verfasst von
Yuxiang Li
Zhiyong Zhang
Lili Zhang
Danmei Niu
Changwei Zhao
Bin Song
Liuke Liang
Publikationsdatum
03.07.2019
Verlag
Springer US
Erschienen in
The Journal of Supercomputing / Ausgabe 11/2019
Print ISSN: 0920-8542
Elektronische ISSN: 1573-0484
DOI
https://doi.org/10.1007/s11227-019-02943-1

Weitere Artikel der Ausgabe 11/2019

The Journal of Supercomputing 11/2019 Zur Ausgabe

Premium Partner