Skip to main content

2017 | OriginalPaper | Buchkapitel

3. Background

verfasst von : Felix Winterstein

Erschienen in: Separation Logic for High-level Synthesis

Verlag: Springer International Publishing

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

search-config
loading …

Abstract

Besides the basic high-level synthesis steps, resource allocation, scheduling, binding and the generation of control circuits, a high-level synthesis tool usually performs several optimisation steps and transformations of the input code. This chapter discusses a literature review of existing techniques for parallelisation and memory system optimisations related to high-level synthesis flows. It also introduces separation logic, the theoretical framework leveraged in this thesis.

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!

Literatur
9.
Zurück zum Zitat C. Pilato, F. Ferrandi, Bambu: a modular framework for the high level synthesis of memory-intensive applications, in Proceedings International Conference on Field Programmable Logic and Applications (FPL) (2013), pp. 1–4 C. Pilato, F. Ferrandi, Bambu: a modular framework for the high level synthesis of memory-intensive applications, in Proceedings International Conference on Field Programmable Logic and Applications (FPL) (2013), pp. 1–4
11.
Zurück zum Zitat Q. Huang, R. Lian, A. Canis, J. Choi, R. Xi, S. Brown, J. Anderson, The effect of compiler optimizations on high-level synthesis for FPGAs, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2013), pp. 89–96 Q. Huang, R. Lian, A. Canis, J. Choi, R. Xi, S. Brown, J. Anderson, The effect of compiler optimizations on high-level synthesis for FPGAs, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2013), pp. 89–96
12.
Zurück zum Zitat S. Cheng, M. Lin, H.J. Liu, S. Scott, J. Wawrzynek, Exploiting memory-level parallelism in reconfigurable accelerators, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (IEEE, New Jersey, 2012), pp. 157–160 S. Cheng, M. Lin, H.J. Liu, S. Scott, J. Wawrzynek, Exploiting memory-level parallelism in reconfigurable accelerators, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (IEEE, New Jersey, 2012), pp. 157–160
13.
Zurück zum Zitat A. Putnam, S. Eggers, D. Bennett, E. Dellinger, J. Mason, H. Styles, P. Sundararajan, R. Wittig, Performance and power of cache-based reconfigurable computing. ACM SIGARCH Comput. Architect. News 37(3), 395 (2009)CrossRef A. Putnam, S. Eggers, D. Bennett, E. Dellinger, J. Mason, H. Styles, P. Sundararajan, R. Wittig, Performance and power of cache-based reconfigurable computing. ACM SIGARCH Comput. Architect. News 37(3), 395 (2009)CrossRef
14.
Zurück zum Zitat H.-J. Yang, K. Fleming, M. Adler, F. Winterstein, J. Emer, Scavenger: automating the construction of application-optimized memory hierarchies, in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL) (2015), pp. 1–8 H.-J. Yang, K. Fleming, M. Adler, F. Winterstein, J. Emer, Scavenger: automating the construction of application-optimized memory hierarchies, in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL) (2015), pp. 1–8
15.
Zurück zum Zitat E. Matthews, N.C. Doyle, L. Shannon, Design space exploration of L1 data caches for FPGA-based multiprocessor systems, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) (2015), pp. 156–159 E. Matthews, N.C. Doyle, L. Shannon, Design space exploration of L1 data caches for FPGA-based multiprocessor systems, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) (2015), pp. 156–159
16.
Zurück zum Zitat J. Choi, K. Nam, A. Canis, J. Anderson, S. Brown, T. Czajkowski, Impact of cache architecture and interface on performance and area of FPGA-based processor/parallel-accelerator systems, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2012), pp. 17–24 J. Choi, K. Nam, A. Canis, J. Anderson, S. Brown, T. Czajkowski, Impact of cache architecture and interface on performance and area of FPGA-based processor/parallel-accelerator systems, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2012), pp. 17–24
17.
Zurück zum Zitat J.G. Wingbermuehle, R.K. Cytron, R.D. Chamberlain, Superoptimized memory subsystems for streaming applications, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) (2015), pp. 126–135 J.G. Wingbermuehle, R.K. Cytron, R.D. Chamberlain, Superoptimized memory subsystems for streaming applications, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA) (2015), pp. 126–135
18.
Zurück zum Zitat P. Feautrier, Dataflow analysis of array and scalar references. Int. J. Parallel Program. 20(1), 23–53 (1991)CrossRefMATH P. Feautrier, Dataflow analysis of array and scalar references. Int. J. Parallel Program. 20(1), 23–53 (1991)CrossRefMATH
19.
Zurück zum Zitat C. Bastoul, Code generation in the polyhedral model is easier than you think, in Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (2004), pp. 7–16 C. Bastoul, Code generation in the polyhedral model is easier than you think, in Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (2004), pp. 7–16
20.
Zurück zum Zitat Q. Liu, G.A. Constantinides, K. Masselos, P.Y. Cheung, Automatic on-chip memory minimization for data reuse, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (IEEE, New Jersey, 2007), pp. 251–260 Q. Liu, G.A. Constantinides, K. Masselos, P.Y. Cheung, Automatic on-chip memory minimization for data reuse, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (IEEE, New Jersey, 2007), pp. 251–260
21.
Zurück zum Zitat H. Devos, K. Beyls, M. Christiaens, J. Van Campenhout, E.H. D‘Hollander, D. Stroobandt, Finding and applying loop transformations for generating optimized fpga implementations. Trans. High Perform. Embed. Architect. Compil. I 4050, 159–178 (2007) H. Devos, K. Beyls, M. Christiaens, J. Van Campenhout, E.H. D‘Hollander, D. Stroobandt, Finding and applying loop transformations for generating optimized fpga implementations. Trans. High Perform. Embed. Architect. Compil. I 4050, 159–178 (2007)
22.
Zurück zum Zitat S. Bayliss, G. Constantinides, Optimizing SDRAM bandwidth for custom FPGA loop accelerators, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (ACM Press, 2012), pp. 195–204 S. Bayliss, G. Constantinides, Optimizing SDRAM bandwidth for custom FPGA loop accelerators, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (ACM Press, 2012), pp. 195–204
23.
Zurück zum Zitat J. Cong, W. Jiang, B. Liu, Y. Zou, Automatic memory partitioning and scheduling for throughput and power optimization. ACM Trans. Des. Autom. Electron. Syst. 16(2), 1–25 (2011)CrossRef J. Cong, W. Jiang, B. Liu, Y. Zou, Automatic memory partitioning and scheduling for throughput and power optimization. ACM Trans. Des. Autom. Electron. Syst. 16(2), 1–25 (2011)CrossRef
24.
Zurück zum Zitat U. Bondhugula, A. Hartono, J. Ramanujam, P. Sadayappan, A practical automatic polyhedral parallelizer and locality optimizer. SIGPLAN Notices 43(6), 101–113 (2008)CrossRef U. Bondhugula, A. Hartono, J. Ramanujam, P. Sadayappan, A practical automatic polyhedral parallelizer and locality optimizer. SIGPLAN Notices 43(6), 101–113 (2008)CrossRef
25.
Zurück zum Zitat L.-N. Pouchet, P. Zhang, P. Sadayappan, J. Cong, Polyhedral-based data reuse optimization for configurable computing, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (ACM, 2013), pp. 29–38 L.-N. Pouchet, P. Zhang, P. Sadayappan, J. Cong, Polyhedral-based data reuse optimization for configurable computing, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (ACM, 2013), pp. 29–38
26.
Zurück zum Zitat M. Benabderrahmane, L. Pouchet, A. Cohen, C. Bastoul, The polyhedral model is more widely applicable than you think, in Proceedings of the International Conference on Compiler Construction (2010), pp. 283–303 M. Benabderrahmane, L. Pouchet, A. Cohen, C. Bastoul, The polyhedral model is more widely applicable than you think, in Proceedings of the International Conference on Compiler Construction (2010), pp. 283–303
28.
Zurück zum Zitat G. Weisz, J. Melber, Y. Wang, K. Fleming, E. Nurvitadhi, J.C. Hoe, A study of pointer-chasing performance on shared-memory processor-FPGA systems, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (2016), pp. 264–273 G. Weisz, J. Melber, Y. Wang, K. Fleming, E. Nurvitadhi, J.C. Hoe, A study of pointer-chasing performance on shared-memory processor-FPGA systems, in Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (2016), pp. 264–273
35.
Zurück zum Zitat R. Nane, V.M. Sima, B. Olivier, R. Meeuws, Y. Yankova, K. Bertels, DWARV 2.0: a CoSy-based C-to-VHDL hardware compiler, in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL) (2012), pp. 619–622 R. Nane, V.M. Sima, B. Olivier, R. Meeuws, Y. Yankova, K. Bertels, DWARV 2.0: a CoSy-based C-to-VHDL hardware compiler, in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL) (2012), pp. 619–622
36.
Zurück zum Zitat J. Simsa, S. Singh, Designing hardware with dynamic memory abstraction, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (2010), pp. 69–72 J. Simsa, S. Singh, Designing hardware with dynamic memory abstraction, in Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA) (2010), pp. 69–72
37.
Zurück zum Zitat B. Cook, A. Gupta, S. Magill, A. Rybalchenko, J. Simsa, S. Singh, V. Vafeiadis, Finding Heap-Bounds for Hardware Synthesis, in Formal Methods in Computer-Aided Design (IEEE, New York, 2009), pp. 205–212 B. Cook, A. Gupta, S. Magill, A. Rybalchenko, J. Simsa, S. Singh, V. Vafeiadis, Finding Heap-Bounds for Hardware Synthesis, in Formal Methods in Computer-Aided Design (IEEE, New York, 2009), pp. 205–212
38.
Zurück zum Zitat W. Landi, B.G. Ryder, A safe approximate algorithm for interprocedural aliasing, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (1992), pp. 235–248 W. Landi, B.G. Ryder, A safe approximate algorithm for interprocedural aliasing, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (1992), pp. 235–248
39.
Zurück zum Zitat J.-D. Choi, M. Burke, P. Carini, Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects, in Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (1993), pp. 232–245 J.-D. Choi, M. Burke, P. Carini, Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects, in Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (1993), pp. 232–245
40.
Zurück zum Zitat M. Emami, R. Ghiya, L.J. Hendren, Context-sensitive interprocedural points-to analysis in the presence of function pointers, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (1994), pp. 242–256 M. Emami, R. Ghiya, L.J. Hendren, Context-sensitive interprocedural points-to analysis in the presence of function pointers, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (1994), pp. 242–256
41.
Zurück zum Zitat A. Deutsch, Interprocedural May-alias analysis for pointers: beyond K-limiting. SIGPLAN Notices 29(6), 230–241 (1994)CrossRef A. Deutsch, Interprocedural May-alias analysis for pointers: beyond K-limiting. SIGPLAN Notices 29(6), 230–241 (1994)CrossRef
42.
Zurück zum Zitat M. Burke, P. Carini, J.-D. Choi, M. Hind, Proceedings of the International Workshop on Languages and Compilers for Parallel Computing, 1994, pp. 234–250 (Springer, Berlin, 1995). (ch. Flow-Insensitive Interprocedural Alias Analysis in the Presence of Pointers) M. Burke, P. Carini, J.-D. Choi, M. Hind, Proceedings of the International Workshop on Languages and Compilers for Parallel Computing, 1994, pp. 234–250 (Springer, Berlin, 1995). (ch. Flow-Insensitive Interprocedural Alias Analysis in the Presence of Pointers)
43.
Zurück zum Zitat R.P. Wilson, M.S. Lam, Efficient context-sensitive pointer analysis for C programs, in Proceedings of the International Conference on Programming Language Design and Implementation (ACM, 1995), pp. 1–12 R.P. Wilson, M.S. Lam, Efficient context-sensitive pointer analysis for C programs, in Proceedings of the International Conference on Programming Language Design and Implementation (ACM, 1995), pp. 1–12
44.
Zurück zum Zitat L.O. Andersen, Program Analysis and Specialization for the C Programming Language, Ph.D. dissertation (1994) L.O. Andersen, Program Analysis and Specialization for the C Programming Language, Ph.D. dissertation (1994)
45.
Zurück zum Zitat B. Steensgaard, Points-to analysis by type inference of programs with structures and unions, in Proceedings of the International Conference on Compiler Construction (1996), pp. 136–150 B. Steensgaard, Points-to analysis by type inference of programs with structures and unions, in Proceedings of the International Conference on Compiler Construction (1996), pp. 136–150
46.
Zurück zum Zitat R. Ghiya, L. Hendren, Y. Zhu, Detecting parallelism in C programs with recursive data structures. IEEE Trans. Parallel Distrib. Syst. 1, 35–47 (1998) R. Ghiya, L. Hendren, Y. Zhu, Detecting parallelism in C programs with recursive data structures. IEEE Trans. Parallel Distrib. Syst. 1, 35–47 (1998)
47.
Zurück zum Zitat B.-C. Cheng, W.-M.W. Hwu, Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (2000), pp. 57–69 B.-C. Cheng, W.-M.W. Hwu, Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation, in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (2000), pp. 57–69
48.
Zurück zum Zitat J. Zhu, S. Calman, Symbolic pointer analysis revisited. SIGPLAN Notices 39(6), 145–157 (2004)CrossRef J. Zhu, S. Calman, Symbolic pointer analysis revisited. SIGPLAN Notices 39(6), 145–157 (2004)CrossRef
49.
Zurück zum Zitat B. Guo, N. Vachharajani, D.I. August, Shape analysis with inductive recursion synthesis. ACM SIGPLAN Notices 42(6), 256 (2007)CrossRef B. Guo, N. Vachharajani, D.I. August, Shape analysis with inductive recursion synthesis. ACM SIGPLAN Notices 42(6), 256 (2007)CrossRef
50.
Zurück zum Zitat L. Séméria, K. Sato, G. De Micheli, Resolution of dynamic memory allocation and pointers for the behavioral synthesis from C, in Proceedings of the Design, Automation and Test Conference in Europe (ACM, 2000), pp. 312–319 L. Séméria, K. Sato, G. De Micheli, Resolution of dynamic memory allocation and pointers for the behavioral synthesis from C, in Proceedings of the Design, Automation and Test Conference in Europe (ACM, 2000), pp. 312–319
51.
Zurück zum Zitat J. Babb, M. Rinard, A. Moritz, W. Lee, M. Frank, R. Barua, S. Amarasinghe, Parallelizing applications into silicon, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (IEEE, New Jersey, 1999), pp. 70–80 J. Babb, M. Rinard, A. Moritz, W. Lee, M. Frank, R. Barua, S. Amarasinghe, Parallelizing applications into silicon, in Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM) (IEEE, New Jersey, 1999), pp. 70–80
52.
Zurück zum Zitat P. O’Hearn, J. Reynolds, H. Yang, Local reasoning about programs that alter data structures, in Computer Science Logic, ed. by L. Fribourg, Lecture Notes Series, in Computer Science, vol. 2142, (Springer, Heidelberg, 2001), pp. 1–19 P. O’Hearn, J. Reynolds, H. Yang, Local reasoning about programs that alter data structures, in Computer Science Logic, ed. by L. Fribourg, Lecture Notes Series, in Computer Science, vol. 2142, (Springer, Heidelberg, 2001), pp. 1–19
53.
Zurück zum Zitat G. Winskel, The Formal Semantics of Programming Languages: An Introduction (MIT Press, Cambridge, MA, USA, 1993)MATH G. Winskel, The Formal Semantics of Programming Languages: An Introduction (MIT Press, Cambridge, MA, USA, 1993)MATH
54.
Zurück zum Zitat M. Raza, C. Calcagno, P. Gardner, Automatic parallelization with separation logic, in Programming Languages and Systems (2009), pp. 348–362 M. Raza, C. Calcagno, P. Gardner, Automatic parallelization with separation logic, in Programming Languages and Systems (2009), pp. 348–362
55.
Zurück zum Zitat M. Botinčan, D. Distefano, M. Dodds, R. Grigore, M.J. Parkinson, coreStar: the core of jStar. Boogie 65–77 (2011) M. Botinčan, D. Distefano, M. Dodds, R. Grigore, M.J. Parkinson, coreStar: the core of jStar. Boogie 65–77 (2011)
56.
Zurück zum Zitat C. Calcagno, D. Distefano, Infer: an automatic program verifier for memory safety of C programs, in Proceedings of the International Conference on NASA Formal Methods (Springer, Heidelberg, 2011), pp. 459–465 C. Calcagno, D. Distefano, Infer: an automatic program verifier for memory safety of C programs, in Proceedings of the International Conference on NASA Formal Methods (Springer, Heidelberg, 2011), pp. 459–465
57.
Zurück zum Zitat J. Berdine, C. Calcagno, P. O’Hearn, Symbolic execution with separation logic, in Proceedings of the Asian Conference on Programming Languages and Systems (APLAS) (2005), pp. 52–68 J. Berdine, C. Calcagno, P. O’Hearn, Symbolic execution with separation logic, in Proceedings of the Asian Conference on Programming Languages and Systems (APLAS) (2005), pp. 52–68
58.
Zurück zum Zitat S. Magill, A. Nanevski, E. Clarke, P. Lee, Inferring invariants in separation logic for imperative list-processing programs, in Proceedings of the Workshop on Semantics, Program Analysis, and Computing Environments for Memory Management (SPACE) (2006), pp. 47–60 S. Magill, A. Nanevski, E. Clarke, P. Lee, Inferring invariants in separation logic for imperative list-processing programs, in Proceedings of the Workshop on Semantics, Program Analysis, and Computing Environments for Memory Management (SPACE) (2006), pp. 47–60
60.
Zurück zum Zitat M. Botinčan, M. Dodds, S. Jagannathan, Proof-directed parallelization synthesis by separation logic. ACM Trans. Program. Lang. Syst. 35(2), 1–60 (2013)CrossRef M. Botinčan, M. Dodds, S. Jagannathan, Proof-directed parallelization synthesis by separation logic. ACM Trans. Program. Lang. Syst. 35(2), 1–60 (2013)CrossRef
Metadaten
Titel
Background
verfasst von
Felix Winterstein
Copyright-Jahr
2017
DOI
https://doi.org/10.1007/978-3-319-53222-6_3

Neuer Inhalt