Automatic Generation of Efficient Codes from Mathematical Descriptions of Stencil Computation
Programming in HPC is a tedious work. Therefore functional programming languages that generate HPC programs have been proposed. However, they are not widely used by application scientists, because of learning barrier, and lack of demonstrated application performance.
We have designed Formura which adopts application-friendly features such as typed rational array indices. Formura users can describe mathematical concepts such as operation over derivative operators using functional programming. Formura allows intuitive expression over array elements while ensuring the program is a stencil computation, so that state-of-the-art stencil optimization techniques such as temporal blocking is always applied to Formura-generated program.
We demonstrate the usefulness of Formura by implementing a preliminary below-ground biology simulation. Optimized C-code are generated from 672 bytes of Formura program. The simulation was executed on the full nodes of the K computer, with 1.184 Pflops, 11.62% floating-point-instruction efficiency, and 31.26% memory throughput efficiency.
Thu 22 SepDisplayed time zone: Osaka, Sapporo, Tokyo change
11:45 - 12:35
|Automatic Generation of Efficient Codes from Mathematical Descriptions of Stencil Computation|
Takayuki Muranushi RIKEN, Seiya Nishizawa RIKEN, Hirofumi Tomita RIKEN, Keigo Nitadori RIKEN, Masaki Iwasawa RIKEN, Yutaka Maruyama , Hisashi Yashiro RIKEN, Yoshifumi Nakamura RIKEN, Hideyuki Hotta University of Chile, Chile, Junichiro Makino Kobe University, Natsuki Hosono Kyoto University, Hikaru Inoue Fujitsu Limited
|JIT Costing Adaptive Skeletons for Performance Portability|