These are the case studies for the Adept project: real-life computing problems from HPC and Embedded that are used to verify and validate our approach. More details on each of the Case Studies are given below:

Rodinia Applications Benchmark Suite (HPC)

The Rodinia Applications Benchmark Suite is a collection of benchmark codes from the University of Virginia. These benchmarks are designed to test heterogeneous multi-core systems, including both CPU cores and accelerators.

The benchmarks represent several compute-intensive domains. These include image processing and bioinformatics, as well as graph traversal and data mining workloads. The benchmarks are available in several different parallel implementations such as OpenMP, CUDA and OpenCL. This makes them a good example for use in Adept's case studies as they can be run on many different systems. This means we can assess trade-offs between CPU and accelerator architectures, and how architecture choices affect performance and efficiency. Some of the applications span both the Embedded and HPC domains, making them especially relevant to Adept.


Radio Base Station - eNode-B (Embedded)

The radio access point in an LTE (Long Term Evolution) mobile network, called an e-NodeB or Radio Base Station (RBS) is very much a high performance, Embedded platform. The system is a heterogeneous platform consisting of general-purpose CPUs, high performance DSPs, and hardware accelerators. From a software parallelism point of view it covers highly complex data parallelism in the user plane domain as well as massive task based concurrency in the control plane domain. It is common to use many different programming models and even virtualisation scenarios in engineering the system and software in order to satisfy the diverse properties and characteristics of the system.


Digital Down Conversion (Embedded)

Increases in digital parallel processing performance over the past two decades mean many tasks which previously could only use analogue electronics, can now use Digital Signal Processing. This has the advantages of lower susceptibility to noise and higher component tolerances. Initially, the component of choice was the DSP (Digital Signal Processor). This is a microprocessor optimised for fixed-point data processing, and with optimised instructions for multiply-accumulation. DSPs continue to be the processor of choice in low-power audio and video. However, the digital hardware needed for radio frequency applications has become highly parallel.


Modelling Seismic Wave Propagation for Oil and Gas Exploration (SEISMO) (HPC)

The SEISMO code is used for modelling seismic wave propagation through different ground conditions. The algorithm is based on the principle of linear elasticity - how objects move and deform under stress. This is useful in the field of oil and gas exploration, as shockwave behaviour changes when passing through cavities compared to solid ground. Understanding and being able to model wave propagation can therefore assist in finding these cavities, which may contain extractable hydrocarbons. Additional applications for the SEISMO code include modelling the effects of earthquakes on buildings, as the code predicts how solid objects will move under stress. This means it can assist in decisions on where and how to build in earthquake-prone areas.