Automated benchmarking and reporting of a cutting-edge heterogeneous computing platform
Future computing systems will be highly heterogeneous, consisting of various processor architectures and network solutions. Benchmarking of such hardware (that is, running many targeted small test programs) is important for both monitoring a smooth operation and, more importantly, identifying a potential lack of performance due to improper usage. Because of the hardware complexities involved and some dynamic features, manual benchmarking (running tests one-by-one) is tedious and error-prone. Automation of the benchmarking and reporting process will thus be needed.
The candidate will start with surveying the state of the art on hardware benchmarking and thus create a collection of small and goal-oriented benchmark programs. Based on this, the candidate will design and implement programs that allow automated hardware benchmarking and reporting. (The latter will be in form of human readable tables, figures, and summaries.) Apart from achieving automation, effort will also be spent on verification and securing reproducibility.
The candidate will become an expert on various benchmarking techniques for cutting-edge processor architectures and interconnect systems. In addition, the candidate will gain substantial knowledge of parallel programming and high-performance computing. Particularly, the candidate will specialise her/himself in designing and implementing scripts that will enable automated benchmarking and reporting of heterogeneous computing systems. All these knowledge and skills are deemed as an important component of the expertise needed by the future workforce of scientific/technical computing.
The candidate is expected to be skilful in technical programming (experience with parallel programming is not required, but preferred). Very important: The candidate must be hard-working and eager to learn and explorer new skills and knowledge.
- Xing Cai
- Are Magnus Bruaset