Job title:
HPC Software Engineer Intern (3 months)
Project: Mixed precision numerical solvers in GPU reservoir simulation
About SLB:
We are a global technology company, driving energy innovation for a balanced planet. Together, we create amazing technology that unlocks access to energy for the benefit of all.
At SLB, we recognize that our innovation, creativity, and success stem from our differences. We actively recruit people with a diverse range of backgrounds and cultivate a culture of inclusion that unlocks the benefits of our diversity. We want to ensure that everyone feels a sense of belonging here and we encourage, enable, and empower our people to foster inclusivity, build trust, and demonstrate respect for all across the organization.
Global in outlook, local in practice - and with a united, shared passion for discovering solutions, we hire talented, driven people and support them to succeed, personally and professionally.
Location:
Abingdon, Oxfordshire
Description & Scope
The Intersect Reservoir Simulator is a high-performance software application for solving multiphase fluid flow in porous media. It is used to facilitate decision making and planning for the operation of oil and gas reservoirs and carbon storage projects. To achieve this Intersect solves partial differential equations using a fully implicit finite volumes formulation with high degrees of parallelism on both CPU and GPU architectures.
Simulation on GPU poses unique challenges, an interesting one of which is dynamic precision optimization in iterative processes. The simulator is equipped with a variety of precision settings on GPU, and in theory, lower precision is faster and 2x more memory efficient per iteration, compared to higher precision settings.
However, there is a catch: reduced precision renders the simulator less effective in capturing small numerical changes, so it generally takes more iterations, convergence can be less stable, and the iterative process becomes less performative as a whole. In this internship, the candidate will learn about mixed precision methods as an optimization technique in modern computing, explore the numerical criteria that dynamically determine the optimal precision choices in iterative processes, and demonstrate the technique with existing infrastructures in the simulator.
Deliverables
* Software This may take the form of a branch from the master repository or software in the master repository for commercial release depending on project outcomes.
* Documentation A document explaining code written and how it may be developed in the future.
* A written report A document detailing work undertaken and results achieved.
* A verbal report A presentation to SLB and partner staff detailing work undertaken and results achieved.
Required Skills & Qualifications
* Master Degree - (Penultimate or Final year) in Mathematics, Computer Science or a related discipline
* Oral and written communication skills in English
* Good motivation, autonomy, teamwork, and ingenuity
* C++
We are open to flexible, hybrid working with a combination of on-site & home working days.
SLB is an equal employment opportunity employer. Qualified applicants are considered without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, or other characteristics protected by law.