Programming method of dimensional array types and high performance FFT implementation. (Chinese. English summary) Zbl 1349.65734
Summary: Because a heterogeneous cluster relies on a heterogeneous storage system, the data needs to be divided in a multidimensionally manner when doing computation on it. Current cluster-level programming languages have no unified representation mechanisms of transmission and transposition of multi-dimensional arrays. This article describes the programming method based on multi-dimensional array types and the Parray language, which can be used to represent the complex multi-dimensional data transposition on heterogeneous clusters in a clear way. A large-scale three-dimensional fast Fourier transform (FFT) implementation on Tianhe 1A based on the array type programming method and Parray is also introduced. The final code is very simple and a good performance and scalability are got at the same time.
MSC:
65T50 | Numerical methods for discrete and fast Fourier transforms |
65Y10 | Numerical algorithms for specific classes of architectures |
68N15 | Theory of programming languages |