Key Responsibilities
- Research and develop novel out-of-order execution techniques to improve IPC and energy efficiency of mobile CPUs.
- Analyse and optimise front-end pipeline stages including branch prediction, fetch, and decode.
- Investigate bottlenecks in the out-of-order backend: issue queues, register renaming, reorder buffer, and execution units.
- Develop and maintain cycle‑accurate micro‑architectural simulation models (e.g. gem5) to evaluate OOO design trade‑offs.
- Propose micro‑architectural enhancements targeting performance‑per‑watt optimisation for mobile workloads.
- Conduct workload characterisation and micro‑architectural profiling using hardware performance counters and simulation.
- Evaluate and integrate state‑of‑the‑art academic research into practical CPU design proposals.
Required
- Master/PhD degree in Computer Science/Engineering/Physics etc.
- Strong knowledge of advanced computer architectures, superscalar processor design, and compiler design principles.
- Deep understanding of speculative execution, branch prediction, and out-of-order execution.
- Strong programming skills in C, C++, Python, assembly languages (Arm64 assembly or RISC‑V assembly), and scripting languages.
- Experience with cycle‑accurate microarchitecture simulation and performance modelling.
- Understanding of instruction scheduling, register allocation, and code generation.
- Highly‑motivated and independent individual with a strong desire for knowledge acquisition.
Desired
- Strong knowledge of advanced branch predictors and prefetching mechanisms.
- Experience with gem5, Sniper, ChampSim, or other cycle‑accurate detailed microarchitecture simulators.
- Experience with LLVM backend development or custom ISA extension implementation.
- Strong knowledge of profile‑guided optimisation (PGO) and feedback‑directed optimisation.
- Experience with compiler development (LLVM, GCC) or compiler optimisation techniques.
- Experience with OS kernel development and understanding of scheduler and memory manager internals.
- Knowledge of binary translation, dynamic binary instrumentation, or JIT compilation techniques.
- Understanding of hardware‑enforced security mechanisms (CFI, PAC, BTI, MTE on Arm).
- Experience with co‑simulation frameworks integrating ISA simulators with compiler toolchains.
- Familiarity with emerging technologies: processing‑in‑memory (PIM), near‑data processing, chiplet architectures.
- Familiarity with domain‑specific architectures and accelerator‑compiler co‑design methodologies.
This job description is only an outline of the tasks, responsibilities and outcomes required of the role. The jobholder will carry out any other duties as may be reasonably required by his/her line manager. The job description and personal specification may be reviewed on an ongoing basis in accordance with the changing needs of Huawei Research and Development UK Limited.
#J-18808-Ljbffr…
