HamburgerMenu
hirist

Job Description

Job Title : HPC Programmer

Experience : 2+ Years (No upper limit)

Location : Bangalore

Employment Type : Full-time

About the Role :

We are seeking a skilled and motivated HPC Programmer to join our high-performance computing team. In this role, you will focus on performance analysis, optimization, and benchmarking of HPC systems and applications. You will collaborate closely with developers, researchers, and system engineers to improve computational efficiency across CPU-, GPU-, and hybrid-accelerated architectures. This position is ideal for someone passionate about low-level performance tuning, parallel programming, and cutting-edge compute technologies.

Key Responsibilities :

Performance Engineering & Optimization :

- Analyze, optimize, and debug the performance of HPC applications using MPI, OpenMP, CUDA, and other parallel programming models.

- Perform performance tuning for CPU, GPU, and multi-node systems, ensuring efficient utilization of compute resources.

- Identify performance bottlenecks through profiling, tracing, and code-level analysis.

Benchmarking & Workload Evaluation :

- Run and evaluate standard HPC benchmarks such as HPL, STREAM, OSU Micro-Benchmarks, SPEC MPI, and relevant application workloads.

- Compare performance across different architectures (CPU, GPU, accelerators), interconnect networks, and system configurations.

- Prepare detailed performance reports and recommendations for HPC clusters, workloads, and architecture choices.

Profiling & Performance Tools :

- Use advanced performance analysis tools such as Intel VTune, HPCToolkit, ARM MAP, Perf, Nsight, or similar tools for profiling and tuning.

- Apply profiling insights to drive code-level and system-level optimization.

System Collaboration & Support :

- Collaborate with software developers, system administrators, and research teams to enhance HPC efficiency and scalability.

- Assist with workload characterization, job placement strategies, and optimal resource utilization.

- Support users and internal teams in optimizing their HPC applications and workflows.

Required Skills & Qualifications :

Technical Expertise :

- Minimum 2 years of experience in HPC performance tuning, analysis, or benchmarking (no upper limit).

- Strong programming skills in C or C++ (preferred for low-level tuning); Python experience is an added advantage.

- Hands-on experience with MPI, OpenMP, and GPU programming (CUDA or OpenCL).

- Familiarity with HPC job schedulers such as SLURM, PBS, or similar batch systems.

- Solid understanding of HPC system architecture including :

1. Memory hierarchy

2. Network interconnects (InfiniBand, high-speed transport)

3. CPU/GPU architecture

4. Accelerator ecosystems (NVIDIA, AMD, Intel)

Additional Skills :

- Experience working in Linux-based HPC environments.

- Strong analytical and problem-solving skills with an ability to work independently.

- Good communication skills and ability to collaborate with cross-functional teams.

- Ability to interpret performance data and present findings clearly.

Why Join Us?

- Work on cutting-edge HPC platforms and next-generation compute architectures.

- Collaborate with a highly skilled technical team and top-tier research environments.

- Opportunity to contribute to performance improvements that impact large-scale computational workloads.

- Growth-friendly environment with exposure to advanced HPC technologies.


info-icon

Did you find something suspicious?