GENERAL PURPOSE COMPUTING ON GRAPHICS PROCESSING UNITS (GPGPU) FOR SSA GROUND DATA SYSTEMS (G618-013GR)
7, decembrie 2015

ESA Open Invitation To Tender AO8478
Open Date: 26/11/2015
Closing Date: 15/01/2016

Status: ISSUED
Reference Nr.: 15.112.02
Prog. Ref.: GSTP Period 6 E1 PRJ
Budget Ref.: E/0904-611 – GSTP Period 6 E1 PRJ
Special Prov.: DE+NO
Tender Type: C
Price Range: 200-500 KEURO
Establishment: ESOC
Directorate: Directorate Human Spaceflight & Operatio
Department: Ground Systems Engineering Department
Division: Mission Data Systems Division
Contract Officer: Hurtz, Anne Maria
Last Update Date: 03/12/2015
Update Reason: Loaded a new Clarification(English version)

Graphics Processing Units (GPUs) are high-performance many-core processors capable of very high computation and data throughput. Once specially designed for computer graphics and difficult to program, today’s GPUs are general-purpose parallel processors. The emergence of new programming tools and relatively lowcost hardware is aiding in these efforts, and is introducing many-core computing toa broader range of developments. Application porting to GPUs often achieves speedups of orders of magnitude versus optimized CPU implementations. Given the raw power provided by 100s of cores, various data parallel applications could now take advantage of this massively parallel hardware. Problems in domains like Weather forecast, computational finance, Life-Sciences, are being moved from super computers and computing grids to GPGPU based solutions. Even with the evolution of multi-core CPUs such problems could not be addressed in real-time or practical durations. Due to the inherent data parallel nature of domains below, they fit very well to the GPU architecture, thus resulting into performance gains. Many key ESA domains of activity provide an opportunity for the application of this technology. Virtually any parallel code that uses floating-point arithmetic can benefit from savings in time, improvements in accuracy, savings on cost, space and power. In general experience gained with this technology can be applied to any Ground Data System characterised by this parallel processing (example: calculation of engineering data based on raw data …). In the SSA programme, all three segments can benefit from GPGPU deployment, namely: – NEO Detection – Conjunction Prediction Analysis – Re-entry Prediction – Fragmentation Analysis – Catalogue Correlation and Orbit Determination – Space Weather nowcasting/forecasting – Space Weathersimulations While GPGPU utilisation could be considered as a generic research activity, its applicability to a given field is dependent on the type of the problem being tackled. Experienced gained as part of previous activity demonstrated that GPU parallelisation pays off when: – All threads in a warp (a set of identical operations) execute the same instruction at the same time. – Simple algorithm follows a branchless, floating point computational schema. – The dataset used in the computation is small compared to the processing needs Therefore, it is not possible to define a generic problem where GPUs will bring benefits without narrowing down the scope of the problem. In the case of NEO, the utilisation of GPUs provides an excellent computational framework for the detection of objects. More specifically this problem could benefit from the deployment of GPUs to stack images in 360 different directions with hundreds of different angular velocities to increase the SNR of moving objects hiding in the data. Additionally, the particular casesof ESA’s SSA/SST Conjunction Prediction Service (CPS) and Re-entry Prediction Services, there is a requirement for the repetitive application of the same processing algorithm against a data set of manmade space objects. As previously described, the nature of these problems represent a perfect fit for GPU constraints. GPUs with its hundreds of cores can be considered to provide off-the-shelf custom hardware for this specific problem. Based on acquired knowledge on GPGPU and SSA algorithms, this proposal focuses on SSA problem areas preliminary considered to be compatible with the aforementioned GPGPU characteristics. Tasks to be performed: – Use Casesidentification: this task shall determine those algorithms currently used in SSA that show the highest potential for GPGPU optimisation. – Architecture Blueprint: this task shall evaluate available architectures for GPGPU Computing in order to determine the optimal solution for the identified Use Cases – Analysis: this task shall perform a profiling of the current solutions in order to determine bottlenecks and areas to be migrated to the GPPGPU – Design and Implementation: this task shall carry out the implementation of software prototypes – Validation: this task shall evaluate performance and accuracy of the GPGPU-enabled solution in order to determine the improvements achieved by the deployment of the technology. – Final Report: this task shall aim at delivering the final report recording the experience gathered during the execution of the project (solution, PROS and CONS, lessons learnt, conclusions and recommendations for future work)

If you wish to access the documents related to the Invitation to Tender, you have to log in to the ESA Portal.