Analysing CPU performance using models, emulators and real devices to understand the bottlenecks we need to break through
Developing our understanding of the competitive landscape and identifying key missing technologies at Arm, particularly for future solutions like Computer Vision and Machine Learning
Proposing new technologies or investigations to improve our products and understanding
Supporting the implementation of new technologies for our CPUs with the CPU experts within Arm, to remain competitive in terms of performance and efficiency
Communicating your technical results with the Arm business teams.
Required Skills and Experience :
A university degree in Computer Science, Electronic Engineering, or another appropriate field
A passion to innovate, think differently, and explore new avenues
Experience developing software and/or hardware, particularly C/C++ and Arm assembly
Confident developing in Linux environments with experience in shell and Python/Perl scripting
Self-motivated and independent, curious to learn, and eager to work with others. Able to work efficiently alone and in a team that spans groups and countries
“Nice To Have” :
Experience of CPU performance analysis
Comfortable working on immature technologies and following up the latest advances in science
Working knowledge of sophisticated CPU techniques, such as branch prediction or pre-fetchers
Software optimisation experience in domains like HPC, machine learning, Android applications, Linux kernel.