Multi-tiered Coarray Programming for HPC Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current compute infrastructure for High Performance Computing (HPC) and enterprise environments differ significantly, making it challenging to deploy HPC applications in multi-tiered enterprise storage environments, where interdependent parallel processes require efficient inter-process communication and memory sharing.
Innovation Solution
The development of multi-tiered coarray programming techniques that extend the Coarray Fortran model to include indices for storage tiers, allowing for memory element access through path names, object names, or key values, and employing file or object interfaces for remote storage tiers, using MPI communications and libraries to support multi-tiered storage architectures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If HPC applications are deployed in multi-tiered enterprise storage environments, then storage capacity and cost-efficiency are improved, but access speed and performance deteriorate due to the inherent latency of remote storage tiers
Solution Approach 1:
The patent segments the storage access model by introducing storage tier indices into the coarray addressing system. This allows different portions of the memory array to be mapped to different storage tiers (e.g., tier 0 for local memory, tier 1 for remote storage), enabling selective access patterns that balance capacity and speed requirements across different data elements
Solution Approach 2:
The patent adds a new dimension to the coarray addressing system by incorporating storage tier indices. The traditional one-dimensional or two-dimensional array indices are extended to include a tier dimension, creating a multi-dimensional addressing space that can map logical array elements to physical locations across multiple storage tiers with different performance characteristics
2Adaptability or versatility
If coarray Fortran is extended to support multi-tiered storage, then adaptability to enterprise storage environments is improved, but programming model complexity increases
Solution Approach 1:
The patent creates a universal coarray programming model that can operate across multiple storage tiers. The extended coarray syntax and indexing mechanism provide a unified interface that works for both traditional shared-memory HPC systems and multi-tiered enterprise storage environments, eliminating the need for separate programming models for different storage architectures
Solution Approach 2:
The patent introduces an intermediary layer in the form of extended coarray indexing and a software function that translates logical coarray accesses into physical storage tier accesses. This intermediary handles the complexity of multi-tiered storage mapping, allowing programmers to use simplified coarray syntax while the system manages the underlying storage complexity
Data Source
AI summary
Techniques are provided for multi-tiered coarray programming. An exemplary coarray programming method comprises obtaining an index address identifying a memory element in a memory array in a multi-tiered storage environment, wherein the index address comprises an identifier of a storage tier within the multi-tiered storage environment where the memory element is stored; and converting the index address to one or more of a path name, an object name and a key value based on the identified storage tier to access the memory element. Exemplary aspects of the invention extend a coarray programming model to employ one or more of a file interface and an object interface for remote storage tiers.


