Skip to main content
Top
Published in: International Journal of Parallel Programming 3/2016

01-06-2016

GridFOR: A Domain Specific Language for Parallel Grid-Based Applications

Authors: Ye Wang, Zhiyuan Li

Published in: International Journal of Parallel Programming | Issue 3/2016

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

To ease the programming burden and to make parallel programs more maintainable, computational scientists and engineers currently have the options to use software libraries, templates, and general purpose language extensions to compose their application programs. These existing options, unfortunately, have considerable limitations with compatibility, expressive power and delivered performance. To address these issues, we design a domain specific language, GridFOR, for computational problems defined over regular geometric grids. This language allows the programmer to first implement an algorithm on simple data structures, as commonly illustrated in textbooks or papers. The programmer then specifies transformations to extend the algorithm for complex data structures required by the target applications. We build a compiler to automatically translate a GridFOR program to a parallel Fortran version with Message Passing Interface calls. Several optimization techniques are implemented in our compiler to enhance the program speed.

Dont have a licence yet? Then find out more about our products and how to get one now:

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

Literature
2.
go back to reference Anderson, E., Bai, Z., Dongarra, J., Greenbaum, A., McKenney, A., Du Croz, J., Hammerling, S., Demmel, J., Bischof, C., and Sorensen, D.: LAPACK: A portable linear algebra library for high-performance computers. In: Supercomputing ’90: Proceedings of the 1990 ACM/IEEE Conference on Supercomputing, pp. 2–11 (1990) Anderson, E., Bai, Z., Dongarra, J., Greenbaum, A., McKenney, A., Du Croz, J., Hammerling, S., Demmel, J., Bischof, C., and Sorensen, D.: LAPACK: A portable linear algebra library for high-performance computers. In: Supercomputing ’90: Proceedings of the 1990 ACM/IEEE Conference on Supercomputing, pp. 2–11 (1990)
3.
go back to reference Bogey, C., de Cacqueray, N., Bailly, C.: Finite differences for coarse azimuthal discretization and for reduction of effective resolution near origin of cylindrical flow equations. J. Comput. Phys. 230, 1134–1146 (2011)MathSciNetCrossRefMATH Bogey, C., de Cacqueray, N., Bailly, C.: Finite differences for coarse azimuthal discretization and for reduction of effective resolution near origin of cylindrical flow equations. J. Comput. Phys. 230, 1134–1146 (2011)MathSciNetCrossRefMATH
4.
go back to reference Brickner, R.G., George, W., Johnsson, S.L., Ruttenberg, A.: A stencil compiler for the connection machine models CM-2/200. In: Proceedings of the Fourth Workshop on Compilers for Parallel Computers (1993) Brickner, R.G., George, W., Johnsson, S.L., Ruttenberg, A.: A stencil compiler for the connection machine models CM-2/200. In: Proceedings of the Fourth Workshop on Compilers for Parallel Computers (1993)
5.
go back to reference Christen, M., Schenk, O., and Burkhart, H.: Patus: A code generation and auto-tuning framework for parallel stencil computations. In: Proceedings of IPDPS 2011 (2011) Christen, M., Schenk, O., and Burkhart, H.: Patus: A code generation and auto-tuning framework for parallel stencil computations. In: Proceedings of IPDPS 2011 (2011)
6.
go back to reference Cole, M.: Algorithmic Skeletons: Structured Management of Parallel Computation. MIT Press, Cambridge (1991)MATH Cole, M.: Algorithmic Skeletons: Structured Management of Parallel Computation. MIT Press, Cambridge (1991)MATH
7.
go back to reference DeVito, Z., Joubert, N., Palacios, S.O.F., Medina, M., Barrientos, M., Elsen, E., Ham, F., Aiken, A., Duraisamy, K., Darve, E., Alonso, J., Hanrahan, P.: Liszt: a domain specific language for building portable mesh-based pde solvers. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (2011) DeVito, Z., Joubert, N., Palacios, S.O.F., Medina, M., Barrientos, M., Elsen, E., Ham, F., Aiken, A., Duraisamy, K., Darve, E., Alonso, J., Hanrahan, P.: Liszt: a domain specific language for building portable mesh-based pde solvers. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (2011)
8.
go back to reference Frigo, M., and Johnson, S.G.: FFTW: An adaptive software architecture for the FFT. In: Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, volume 3, pp. 1381–1384 (1998) Frigo, M., and Johnson, S.G.: FFTW: An adaptive software architecture for the FFT. In: Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, volume 3, pp. 1381–1384 (1998)
9.
go back to reference González-Vélez, H., Leyton, M.: A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers. Softw. Pract. Exp. 40(12), 1135–1160 (2010)CrossRef González-Vélez, H., Leyton, M.: A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers. Softw. Pract. Exp. 40(12), 1135–1160 (2010)CrossRef
10.
go back to reference Grelck, C.: Single Assignment c (sac) High Productivity Meets High Performance. In: Central European Functional Programming School, pp. 207–278. Springer, Berlin (2012)CrossRef Grelck, C.: Single Assignment c (sac) High Productivity Meets High Performance. In: Central European Functional Programming School, pp. 207–278. Springer, Berlin (2012)CrossRef
11.
go back to reference Grelck, C., and Penczek, F.: Design and implementation of CAOS: an implicitly parallel language for the high-performance simulation of cellular automata. In: Salcido, A. (ed.) Cellular Automata: Simplicity Behind Complexity, pp. 545–566 (2011) Grelck, C., and Penczek, F.: Design and implementation of CAOS: an implicitly parallel language for the high-performance simulation of cellular automata. In: Salcido, A. (ed.) Cellular Automata: Simplicity Behind Complexity, pp. 545–566 (2011)
12.
go back to reference Hasert, M., Klimach, H., and Roller, S.: Caf versus mpi—applicability of coarray fortran to a flow solver. In: Proceedings of the 18th European MPI Users’ Group conference on Recent advances in the message passing interface, EuroMPI’11, pp. 228–236 (2011) Hasert, M., Klimach, H., and Roller, S.: Caf versus mpi—applicability of coarray fortran to a flow solver. In: Proceedings of the 18th European MPI Users’ Group conference on Recent advances in the message passing interface, EuroMPI’11, pp. 228–236 (2011)
13.
go back to reference Loveman, D.B.: High performance fortran. Parallel & Distrib. Technol. Syst. & Appl. IEEE 1, 25–42 (1993)CrossRef Loveman, D.B.: High performance fortran. Parallel & Distrib. Technol. Syst. & Appl. IEEE 1, 25–42 (1993)CrossRef
14.
go back to reference Martha, C.S.: Toward high-fidelity subsonic jet noise prediction using petascale supercomputers. Ph.D. dissertation, School of Aeronautics and Astronautics, Purdue University (2013) Martha, C.S.: Toward high-fidelity subsonic jet noise prediction using petascale supercomputers. Ph.D. dissertation, School of Aeronautics and Astronautics, Purdue University (2013)
15.
go back to reference Maruyama, N., Nomura, T., Sato, K., Matsuoka, S.: Physis: An implicitly paralell programming model for stencil computations on large-scale gpu-accelerated supercomputers. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (2011) Maruyama, N., Nomura, T., Sato, K., Matsuoka, S.: Physis: An implicitly paralell programming model for stencil computations on large-scale gpu-accelerated supercomputers. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (2011)
16.
go back to reference Murai, H., and Sato, M.: An efficient implementation of stencil communication for the xcalablemp pgas parallel programming language. In: 7th International Conference on PGAS Programming Models, pp. 142 (2013) Murai, H., and Sato, M.: An efficient implementation of stencil communication for the xcalablemp pgas parallel programming language. In: 7th International Conference on PGAS Programming Models, pp. 142 (2013)
17.
go back to reference Numrich, R.W., Reid, J.: Co-array fortran for parallel programming. ACM Sigplan Fortran Forum 17(2), 1–31 (1998)CrossRef Numrich, R.W., Reid, J.: Co-array fortran for parallel programming. ACM Sigplan Fortran Forum 17(2), 1–31 (1998)CrossRef
18.
go back to reference Orchard, D. A., Bolingbroke, M., and Mycroft, A.: Ypnos: Declarative, parallel structured grid programming. In: DAMP’10: Proceedings of the 5th ACM Sigplan workshop on Declarative aspects of multicore programming, pp. 15–24 Orchard, D. A., Bolingbroke, M., and Mycroft, A.: Ypnos: Declarative, parallel structured grid programming. In: DAMP’10: Proceedings of the 5th ACM Sigplan workshop on Declarative aspects of multicore programming, pp. 15–24
19.
go back to reference Parr, T.J., Quong, R.W.: Antlr: a predicated-ll(k) parser generator. Softw. Pract. Exp. 25(7), 789–810 (1995)CrossRef Parr, T.J., Quong, R.W.: Antlr: a predicated-ll(k) parser generator. Softw. Pract. Exp. 25(7), 789–810 (1995)CrossRef
20.
go back to reference Polizzi, E., Sameh, A.H.: A parallel hybrid banded system solver : the spike algorithm. Parallel Comput. 32(2), 177–194 (2006)MathSciNetCrossRef Polizzi, E., Sameh, A.H.: A parallel hybrid banded system solver : the spike algorithm. Parallel Comput. 32(2), 177–194 (2006)MathSciNetCrossRef
21.
go back to reference Puschel, M., Moura, J.M., Johnson, J.R., Padua, D., Veloso, M.M., Singer, B.W., Xiong, J., Franchetti, F., Gacic, A., Voronenko, Y., et al.: Spiral: code generation for dsp transforms. Proceedings of the IEEE 93(2), pp. 232–275 (2005) Puschel, M., Moura, J.M., Johnson, J.R., Padua, D., Veloso, M.M., Singer, B.W., Xiong, J., Franchetti, F., Gacic, A., Voronenko, Y., et al.: Spiral: code generation for dsp transforms. Proceedings of the IEEE 93(2), pp. 232–275 (2005)
22.
go back to reference Roth, G., Mellor-Crummey, J., Kennedy, K., and Brickner, R.G.: Compiling stencils in high performance fortran. In: Proceedings of the International Conference on Supercomputing (1997) Roth, G., Mellor-Crummey, J., Kennedy, K., and Brickner, R.G.: Compiling stencils in high performance fortran. In: Proceedings of the International Conference on Supercomputing (1997)
23.
go back to reference Seinstra, F.J., Koelma, D., Bagdanov, A.D.: Finite state machine-based optimization of data parallel regular domain problems applied in low-level image processing. Parallel Distrib. Syst. IEEE Trans. on 15(10), 865–877 (2004)CrossRef Seinstra, F.J., Koelma, D., Bagdanov, A.D.: Finite state machine-based optimization of data parallel regular domain problems applied in low-level image processing. Parallel Distrib. Syst. IEEE Trans. on 15(10), 865–877 (2004)CrossRef
24.
go back to reference Situ, Y., Liu, L., Martha, C., Louis, M., Li, Z., Sameh, A.H., Blasidell, G.A., and Lyrintzis, A.S.: Reducing communication overhead in large eddy simulation for jet engine noise. In: Cluster Computing, 2010 IEEE International Conference, pp. 255–264 (2010) Situ, Y., Liu, L., Martha, C., Louis, M., Li, Z., Sameh, A.H., Blasidell, G.A., and Lyrintzis, A.S.: Reducing communication overhead in large eddy simulation for jet engine noise. In: Cluster Computing, 2010 IEEE International Conference, pp. 255–264 (2010)
25.
go back to reference Situ, Y., Wang, Y., and Li, Z.: Automated rapid prototyping of regular grid-based numerical applications using generalized elemental subroutines. In: IEEE 27th International Symposium on Parallel & Distributed Processing (2013) Situ, Y., Wang, Y., and Li, Z.: Automated rapid prototyping of regular grid-based numerical applications using generalized elemental subroutines. In: IEEE 27th International Symposium on Parallel & Distributed Processing (2013)
26.
go back to reference Tang, Y., Chowdhury, R., Kuszmaul, B., Luk, C., and Leiserson, C.: The pochoir stencil compiler. In: Proceedings of the 23rd ACM symposium on Parallelism in algorithms and architectures, pp. 117–128 (2011) Tang, Y., Chowdhury, R., Kuszmaul, B., Luk, C., and Leiserson, C.: The pochoir stencil compiler. In: Proceedings of the 23rd ACM symposium on Parallelism in algorithms and architectures, pp. 117–128 (2011)
27.
go back to reference Unat, D., Cai, X., and Baden, S.B.: Mint: realizing cuda performance in 3d stencil methods with annotated c. In: Proceedings of the International Conference on Supercomputing (2011) Unat, D., Cai, X., and Baden, S.B.: Mint: realizing cuda performance in 3d stencil methods with annotated c. In: Proceedings of the International Conference on Supercomputing (2011)
Metadata
Title
GridFOR: A Domain Specific Language for Parallel Grid-Based Applications
Authors
Ye Wang
Zhiyuan Li
Publication date
01-06-2016
Publisher
Springer US
Published in
International Journal of Parallel Programming / Issue 3/2016
Print ISSN: 0885-7458
Electronic ISSN: 1573-7640
DOI
https://doi.org/10.1007/s10766-014-0348-z

Other articles of this Issue 3/2016

International Journal of Parallel Programming 3/2016 Go to the issue

Premium Partner