# HPC Performance Engineer

**Company**: NVIDIA
**Work arrangement**: remote
**Experience**: senior
**Job type**: full-time
**Category**: Engineering
**Industry**: Technology

**Apply**: https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/UK-Remote/HPC-Performance-Engineer_JR2021820?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply
**Canonical**: https://yubhub.co/jobs/job_b6c6a5dc-293

## Description

NVIDIA is seeking a HPC Performance Engineer in its NVHPC compilers & tools group.

The successful candidate will analyze High Performance Computing (HPC) applications to improve performance by driving compiler optimizations and library enhancements.

**Responsibilities:**

- Analyze the effect of different compilers and compiler optimizations on HPC application performance.

- Evaluate whether and how the compiler and runtime can improve the performance of key HPC applications on CPU and CPU/GPU platforms.

- Communicate limits of compiler capabilities with application engineering to guide the best path forward towards improving performance.

- Port HPC applications to different platforms and programming models.

- Evaluate the impact of NVHPC package components, device driver, and system configuration on application performance.

**Requirements:**

- BS/MS or equivalent experience in Computer Science or a related engineering field.

- 5+ years of programming experience.

- Solid understanding of Fortran, C, C++, and programming techniques, especially for parallel architectures, preferably for compilers.

- Experience with OpenACC, OpenMP, MPI, CUDA and Standard Language Parallelism.

- Strong skills in performance analysis and tuning, as well as a broad understanding of parallel applications development tools and runtime environments.

- Strong mathematical fundamentals, including linear algebra and numerical methods.

- Understand performance considerations, tradeoffs, and impact.

- Expert interpersonal skills, a logical approach to problem-solving, good time management, and task prioritization skills. Excellent written and verbal communication skills, along with the ability to work in a dynamic development team.

**Nice to Have:**

- Deep understanding of machine architectures and micro-architectures.

- Experience with debugging and porting as well as assembly language programming.

## Skills

### Required
- Fortran
- C
- C++
- OpenACC
- OpenMP
- MPI
- CUDA
- performance analysis
- parallel architectures
- linear algebra
- numerical methods

### Nice to have
- machine architectures
- micro-architectures
- debugging
- porting
- assembly language programming

---

Source: [Apply at nvidia.wd5.myworkdayjobs.com](https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/UK-Remote/HPC-Performance-Engineer_JR2021820?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply)
