ECOSCALE tackles the exascale challenge by providing a novel heterogeneous energy-efficient hierarchical architecture, a hybrid distributed OpenCL programming environment and a runtime system. The ECOSCALE architecture, programming model and runtime system follows a hierarchical approach where the system is partitioned into multiple autonomous Workers (i.e. compute nodes). Workers are interconnected in a tree-like structure in order to form larger Partitioned Global Address Space (PGAS) partitions. To further increase the energy efficiency of the system, the Workers employ reconfigurable accelerators that perform coherent memory accesses in the virtual address space while being programmed by OpenCL.
The novel UNILOGIC (Unified Logic) architecture, introduced within ECOSCALE, is an extension of the UNIMEM architecture. UNIMEM provides shared partitioned global address space while UNILOGIC provides shared partitioned reconfigurable resources. The UNIMEM architecture gives the user the option to move tasks and processes close to data instead of moving data around and thus it reduces significantly the data traffic and related energy consumption and delays. The proposed UNILOGIC+UNIMEM architecture partitions the design into several Worker nodes that communicate through a fat-tree communication infrastructure.
