We are the CPU Technology team, part of Arm Central Technology Group. This diverse engineering-centric group invents, defines, and architects Technologies to be deployed in tomorrow's IP solutions from Arm.
The CPU Technology team tackles next-generation Arm CPUs, inventing new concepts that will fuel billions of devices worldwide!
Responsibilities:
Analyse benchmarks and workloads to identify software and hardware optimization opportunities, analyse CPU performance and understand limitations we need to break through.
Collaborate with various software teams, compiler, OS, applications to implement improvements.
Collaborate with CPU design teams to identify bottlenecks.
Write/Extract performance tests out of existing SW applications and run it on C/C++ models, emulators or real devices (Laptops, Smartphones, Servers…) on various operating systems.
Work alongside modelling engineers, CPU design teams and Arm Architecture group.
Drive technical activities.
Collaborate with Business teams and partners to present technical results.
Required Skills and Experience:
You graduated from a university or Engineering School, in Computer Science, Mathematics, Electronic / Electrical Engineering, or other related science.
You have a bare minimum of several years of either software, hardware, or mathematic experience.
You have some proven experience in SW programming alongside with technical management.
You have a passion to innovate, think differently, and explore new avenues.
You can work efficiently alone as well as in a team environment.
“Nice To Have” Skills and Experience:
Having strong SW development experience in one or several domains like HPC, machine learning, distributed applications, web technologies, mobile applications, databases, multi-media.
Having strong development skills in one or more high-level programming languages (C, C++, Java, Rust).
Have SW performance analysis experience in platforms like Android (big/LITTLE systems), Windows, Linux, and operating system settings impact (power management, frequency governor), single-threaded vs multi-threaded.
Having working experience in CPU performance analysis, methodology (PMU-based, TDA), tools (linux perf, Intel Vtune, android simpleperf/perfetto), aarch64 assembly language programming.
Having knowledge on CPU architecture and micro-architecture performance techniques (branch prediction, prefetchers).
You are used to develop and adapt some experimental application code to test new architectures.
You demonstrate passion, drive, and diligence.
You have good written and verbal communication skills.
In Return:
We work directly with engineers across the company to drive next-generation hardware. Your work will have a direct impact on our bottom line and the ability to deliver improvements for our customers. You will be part of a growing and fast-paced initiative within a team with varied strengths and give direction to your own work.