Communications of the ACM
ACM Transactions on Programming Languages and Systems (TOPLAS)
A message passing standard for MPP and workstations
Communications of the ACM
Global arrays: a nonuniform memory access programming model for high-performance computers
The Journal of Supercomputing
Co-array Fortran for parallel programming
ACM SIGPLAN Fortran Forum
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communication and Concurrency
PI-Calculus: A Theory of Mobile Processes
PI-Calculus: A Theory of Mobile Processes
The design and implementation of a parallel array operator for the arbitrary remapping of data
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
X10: an object-oriented approach to non-uniform cluster computing
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Programming for parallelism and locality with hierarchically tiled arrays
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Priority and abstraction in process algebra
Information and Computation
Parallel Programmability and the Chapel Language
International Journal of High Performance Computing Applications
A portable runtime interface for multi-level memory hierarchies
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
Large-scale FFT on GPU clusters
Proceedings of the 24th ACM International Conference on Supercomputing
Regular, shape-polymorphic, parallel arrays in Haskell
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Matrices as arrows!: a biproduct approach to typed linear algebra
MPC'10 Proceedings of the 10th international conference on Mathematics of program construction
Accelerating Haskell array codes with multicore GPUs
Proceedings of the sixth workshop on Declarative aspects of multicore programming
A domain-specific approach to heterogeneous parallelism
Proceedings of the 16th ACM symposium on Principles and practice of parallel programming
PARRAY: a unifying array representation for heterogeneous parallelism
Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming
Hi-index | 0.00 |
The competition for higher performance/price ratio is pushing processor chip design into the manycore age. Existing multicore technologies such as caching no longer scale up to dozens of processor cores. Even moderate level of performance optimisation requires direct handling of data locality and distribution. Such architectural complexity inevitably introduces challenges to programming. A better approach for abstraction than completely relying on compiler optimization is to expose some performance-critical features of the system and expect the programmer to handle them explicitly. This paper studies an algebra-semantic programming theory for a performance-transparent level of parallel programming of array-based data layout, distribution, transfer and their affinity with threads. The programming model contributes to the simplification of system-level complexities and the answering of crucial engineering questions through rigorous reasoning.