SHSCAP: Hardware and software solutions for the high performance computation

This project is focused to the development of techniques to deal with some of the challenges of the actual high performance architectures, including multicore and manycore systems, graphics cards (GPUs) and cloud computing. It is well known that these architectures will be widely used in a few years, because it is the only way to keep the performance growing without increasing the power consumption up to critical levels. However, there are many challenges related to the use of these systems. This project will attack some of them at three different levels, system software, application software and hardware. Hence, the objectives has been distributed into three categories: performance analysis, modelling and optimization, new techniques in image processing and simulation applications to take full advantage of the system resources, and numerical coprocessors for heteroneous systems and implementation of heterogeneous systems in FPGA.

At the system software level, the tools and techniques available in the area of performance analysis, modelling and optimization have room for large improvements. These tools can be adapted to manycore architectures and new modelling parameters can be included: (1) Incorporation of the energy efficiency as performance parameter to model and optimize, (2) new techniques to attack the performance modelling and improvement with special focus on the locality of the memory accesses, load balancing and energy efficiency, (3) scalability of the previous techniques to manycore systems.

At the application software level, we will focus in two applications requiring a large computational power: image processing and simulation of semiconductor devices. A common objective to the techniques that will be developed for image processing is a short response time or real-time, because it is critical in the applications being considered in the field of artificial vision, medical imaging, terrains processing and maritime rescue. We will focus on panchromatic 2D and 3D images, and multispectral and hyperspetral images. On other hand, the development of models for semiconductor devices that can be efficiently implemented on parallel systems is very important to carry out realistic statistical analysis to figure out which is the most appropriate design in every case. Tools, optimized to be implemented in manycore systems, will be developed as part of the project. These tools will allow to run the simulations and, after that, to gather and analyse the results as automatically as possible.

Finally, at the hardware level, the focus is in the design of heterogeneous architectures and the design of numerical coprocessors. An efficient and high performance implementation of image and video processing and artificial vision applications needs the development of heterogeneous architectures. Actually, modern FPGAs integrate general purpose processor cores with programmable logic in the same chip. These architectures will allow to obtain a reconfigurable system with a processor core and a number of processing elements arranged as a manycore architecture. On the other hand, we will focus on the design of arithmetical modules, floating—point binary and decimal operators, that can be used as numerical coprocessors in a manycore system. These coprocessors will implement functions usually not available at the hardware level in the general purpose processors.