Graphcore Logo

Graphcore

Software Engineer – ML Kernels & Runtime

Reposted 3 Hours Ago
Be an Early Applicant
Hybrid
Bristol, England
Mid level
Hybrid
Bristol, England
Mid level
Responsible for ensuring the correctness and reliability of numerical libraries, improving tests, debugging issues, and mentoring team members.
The summary above was generated by AI
About Graphcore 

At Graphcore, we’re building the future of AI compute.

We’re a team of semiconductor, software and AI experts, with deep experience in creating the complete AI compute stack - from silicon and software to infrastructure at datacenter scale.

As part of the SoftBank Group, backed by significant long-term investment, we are delivering key technology into the fast-growing SoftBank AI ecosystem.

To meet the vast and exciting AI opportunity, Graphcore is expanding its teams around the world.

We are bringing together the brightest minds to solve the toughest problems, in a place where everyone has the opportunity to make an impact on the company, our products and the future of artificial intelligence

Job Summary  

As a Software Engineer you will be responsible to safeguard the correctness, reliability, and performance of numerical libraries. You’ll design and own end-to-end test strategies across native C++ components and validating low-level kernels.

The Team 

This is an exciting opportunity to join an expanding team at Graphcore. Kernel Engineering team is responsible for delivering high performance compute library to help customers gain the maximum performance from AI hardware.

Responsibilities and Duties 
  • Own existing tests coverage and contribute towards improving it
  • Improve correctness of existent microbenchmarks, regression tests, validation techniques
  • Mentor colleagues within the team, sharing knowledge and providing guidance where appropriate
  • Actively engage in and support Agile ways of working within the team
  • Debug issues, resolve bugs and generally improve the quality and functionality of the product
Candidate Profile 

Essential: 

  • Strong C/C++ and Python coding skills and solid Linux fundamentals
  • Experience testing numerical/performance-sensitive code
  • Understanding of processor architectures and profiling on Linux
  • Hands-on with reproducibility/determinism, tolerance design, and benchmarking
  • Possess excellent written and oral communication skills, good work ethics, high sense of team-work

Desirable: 

  • Experience benchmarking and optimising algorithmic performance, with deep understanding of memory hierarchy (cache/NUMA), multithreading (synchronisation, work partitioning)
  • Experience of testing mixed-precision policies (FP32/BF16/FP16/FP8) and stochastic rounding
  • Property-based testing with tensor-shape/dtype/layout generators
  • Experience testing HPC kernels, ML runtimes/kernels, or similar
  • ABI/API stability and packaging for Linux distros, manylinux, wheels
  • Hands-on testing for ML frameworks - custom operators/extensions, seeds/determinism, and debugging dispatcher issues.
Benefits

In addition to a competitive salary, Graphcore offers flexible working, a generous annual leave policy, private medical insurance and health cash plan, a dental plan, pension (matched up to 5%), life assurance and income protection. We have a generous parental leave policy and an employee assistance programme (which includes health, mental wellbeing, and bereavement support). We offer a range of healthy food and snacks at our central Bristol office and have our own barista bar! We welcome people of different backgrounds and experiences; we’re committed to building an inclusive work environment that makes Graphcore a great home for everyone. We offer an equal opportunity process and understand that there are visible and invisible differences in all of us. We can provide a flexible approach to interview and encourage you to chat to us if you require any reasonable adjustments.

Applicants for this position must hold the right to work in the UK. Unfortunately at this time, we are unable to provide visa sponsorship or support for visa applications

Top Skills

C++
Linux
Python

Similar Jobs at Graphcore

13 Days Ago
Hybrid
Bristol, England, GBR
Entry level
Entry level
Artificial Intelligence • Semiconductor
The Graduate Software Engineer will develop high-performance ML kernels, optimize compute for AI hardware, and ensure software quality and functionality through debugging and testing.
Top Skills: C++MklMl FrameworksOpenblasPython
3 Hours Ago
Hybrid
2 Locations
Mid level
Mid level
Artificial Intelligence • Semiconductor
The Silicon Verification Engineer will be responsible for verification planning, generating tests, diagnosing failures, and ensuring functional coverage in silicon verification processes.
Top Skills: Assembly LanguagesC++GccGitHTMLJavaScriptLinuxLlvmPythonSQLSvaSystem VerilogUvmXMLXpathXslt
3 Hours Ago
Hybrid
Cambridge, Cambridgeshire, England, GBR
Entry level
Entry level
Artificial Intelligence • Semiconductor
The Logical Design Engineer produces micro-architecture specifications and RTL for Graphcore chips, ensuring communication and collaboration across teams.
Top Skills: Eda ToolsPythonSystemverilogTclVhdl

What you need to know about the Edinburgh Tech Scene

From traditional pubs and centuries-old universities to sleek shopping malls and glass-paneled office buildings, Edinburgh's architecture reflects its unique blend of history and modernity. But the fusion of past and future isn't just visible in its buildings; it's also shaping the city's economy. Named the United Kingdom's leading technology ecosystem outside of London, Edinburgh plays host to major global companies like Apple and Adobe, as well as a growing number of innovative startups in fields like cybersecurity, finance and healthcare.

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account