Spatial programming: a truly disruptive model!
By   |  February 13, 2014

The principle of locality is well known in programming: there is temporal locality, which makes it possible to reuse previously used data and instructions, and there is spatial locality, which characterizes the likelihood of accessing data neighboring an item that has just been used. The new OpenSPL (Open Spatial Programming Language) programming model attempts to further exploit the latter principle. Born of a consortium mixing industry (Chevron, CME Group, Juniper Networks, Maxeler Technologies, etc.) with universities (Imperial College London, Stanford, Tokyo, and Tsinghua), this revolutionary approach achieves very significant performance and energy consumption gains compared to the conventional model of processor instruction execution.

Originally, OpenSPL comes from the idea that limits in terms of scalability, efficiency, and complexity of the temporal computation model of multicore processors require radical innovations in the design of systems destined for scale-up. For its conceptors, the proof lies in this simple factual observation: while the number of transistors has risen for example from 400 million (Itanium 2) to 3 billion (Xeon Phi), memory latency has only improved by a factor of 3. Based on these considerations, OpenSPL’s general principle lies in decoupling the control and data flows. The model consists of a spatial hardware representation (Spatial Computing Substrate or SPS) and three types of memory (scalar, slow, and fast memory) – the SPS being capable of executing static computation kernels linked together by data flows in a single instance and in parallel. Sounds unclear? Stay tuned: we are preparing, in collaboration with OpenSPL’s designers, a detailed overview of the language and its potentialities.

 

© HPC Today 2024 - All rights reserved.

Thank you for reading HPC Today.

Express poll

Do you use multi-screen
visualization technologies?

Industry news

Brands / Products index