Periodic Reporting for period 2 - OPTIMA (Optimizing Industrial Applications for Heterogeneous HPC systems)
Periodo di rendicontazione: 2022-09-01 al 2023-11-30
The main advantage of those devices is that they can be reconfigured at run-time to implement tailor-made application accelerators, achieving energy efficiency and/or performance that in most of cases is much higher compared to those of CPUs and GPUs. However, due to management and difficulty in programming and efficiently use the FPGA resources, the FPGA technology is not so widely accepted in the HPC community.
Thus, the project aims at providing guidelines to ease future development of FPGA applications on HPC systems. The goal of the OPTIMA project is to take advantage of FPGA-based High Performance Computing (HPC) systems to optimize academic and industrial software and applications.
The main project objective is the development of demonstrators that will prove the usefulness of deploying applications on HPC FPGA-based systems compared to other classical CPU + GPU HPC or cloud systems. Towards this end, OPTIMA targets to use, tune and evaluate FPGA-based platforms and their programming environments in order to optimize the implementation process of industrial and academic applications. Also, one more objective is the implementation of a set of libraries that are heavily utilized in industry, targeting FPGA-based platforms.
The most important impact on society is that OPTIMA proposes technologies that support the creation of new innovative applications, which will have more features than today’s solutions. OPTIMA will prove that the computing power and development tools required to create the next-gen HPC applications, such as futuristic scenarios for personalized medical treatments or vigilance in near-real-time, can be built around FPGA devices. Based on the OPTIMA outcomes, it will further be demonstrated that we can build HPC systems utilizing FPGAs that are much more energy efficient than current conventional CPU/GPU-based HPC systems while, at the same time, they offer more computational power for certain applications.
WP2 includes the driving tasks for the remaining work of the project, providing the specifications for the applications and the selected open-source libraries based on the unique characteristics of the OPTIMA programming environments and Hardware platforms. Using the application analysis of Task 2.1 the features and specifications of the two OPTIMA programming environments and the end platforms, the OPTIMA applications were matched to the development environments and HPC platforms. Finally, the the evaluation criteria of the final implementations were defined.
WP3 is one of the major technical work packages during the first reporting period. The three applications and the first version of the open source (Optima OPen Source - OOPS) library were ported to the OPTIMA hardware prototypes. WP3 focused on the initial porting and functional verification, whereas the final tuning will be performed in WP5. Several difficulties were faced and addressed during this porting, as explained in the corresponding deliverables, in order to have all the applications running on the OPTIMA prototypes.
WP4 (still in progress) is responsible for the optimization of the OPTIMA framework based on the evaluation results of the 1st version of the applications. The platforms were optimized by updating the firmware and new communication protocols. Also a new prototype platform is under development based on the newest ALVEO accelerator cards. Finally, for the needs of the robotics simulation application, a GPU was installed on the Jumax prototype.
WP6 is responsible for the evaluation of the demonstrator applications and the OOPS library. The evaluation results of the 1st version of the applications are provided in D6.1.
The most important impact on society is that OPTIMA proposes technologies that support the creation of new innovative applications, which will have more features than today’s solutions. OPTIMA targets to prove that the computing power and development tools required to create the next-gen HPC applications, such as futuristic scenarios for personalized medical treatments or vigilance in near-real-time, can be built around FPGA devices. Moreover, OPTIMA will enable the development of novel applications that require fast computation at a certain power budget.
Deploying deep machine learning for robotics simulations on FPGAs is something new and generally unknown to many research and development labs. During the first phase of investigation, we demonstrated the actual feasibility and performance gain of this approach, compared to classical CPU+GPU HPC/cloud approaches and how it could scale and connect with robotics simulations. This research opens the door to the deployment of larger scale research and industrial exploitation of FPGA in HPC to develop new robotics control systems relying on state-of-the-art machine learning technologies.
Execution of HPC application on FPGA-based systems can speed-up the convergence of machine learning algorithms and hence the exploration of solutions by several orders of magnitude. Such a new technology is likely to become an enabler for the development of new systems, which are on the way to revolutionize our societies with products like autonomous cars, trucks, lawn mowers, vacuum cleaners, drones, agriculture.