NPU System Performance Modelling Engineer in Cambridge, UKAbout NeublaAs pioneers of innovative neural computing, Neubla is transforming the future of computing by bringing the enormous potential of neural computing to the highest performance in most data-intensive applications. Neubla is made up of people with expertise and lots of experience in many different fields such as AI, semiconductor design, and compilers. At Neubla, you can work in a rapidly changing environment where your new ideas will become innovative products, services, and customer experiences, working with talented colleagues. Neubla offers a competitive package with benefits, including health insurance, a pension scheme, employee wellness support, and a variety of snacks in the office!SummaryWe're looking for an exceptional individual with a passion to learn about ground-breaking AI architectures and who is eager to build highly optimised models for performance and functional simulation.Performance and functional simulation are critical tools for architecture exploration, and it has been used to make many important decisions of various systems. In this highly visible role, you will collaborate closely with multi-site HW and SW teams to investigate and evaluate new micro-architectural ideas and design trade-offs to shape the system features of the next generation AI accelerator by developing, verifying, and using performance models for data-driven architectural exploration and validation.Job DescriptionDevelop, test, and maintain accurate performance models for system IPs, ranging from a memory subsystem to an interconnect for multiple processing elements or for die-to-die connectionCollaborate with multi-site engineering teams to make data-driven decisions on many of their current engineering issuesCollaborate with hardware design engineers to prune the design space of next generation NPU designs, understanding performance opportunities on current processors and investigate potential micro-architectural enhancementCollaborate with software engineers to enable various levels of software development at the very early stageSupport hardware design engineers to solve potential performance issues in design verification flowsDevelop systems and performance analysis tools necessary for performance correlation and verification workflowsQualificationsMasters, PhD, or equivalent experience in Computer Engineering, Electrical Engineering, or related fieldKnowledge of on-chip bus protocols such as AMBA, coherency flows, interconnects, memory subsystemsDemonstrated ability in system performance modelling, workload analysis, system performance bottleneck debug and analysisStrong problem solving and analytical skillsStrong programming skills with good understanding of object-oriented languages such as C++/PythonKnowledge of performance or functional modelling of NPUs, CPUs, or GPUsExcellent collaboration skillsOutstanding written and verbal communicationsPreferred QualificationsKnowledge of Machine Learning concepts and ML hardware acceleratorsPrior experience in simulator developmentProficiency in computer/SoC architecture and performance trade-offsKnowledge of a system modelling/simulation technology, such as SystemC, Gem5, Simics, QEMU and etcKnowledge of Verilog and/or VHDL and experience with simulators and waveform debuggingFamiliarity with RISC-V architectures and instruction setsKnowledge of script languagesThe ProcessApplication review > 1st Interview > 2nd Interview (technical) > 3rd Interview