Job Summary:
NVIDIA is known as 'the AI computing company' and is seeking software engineers for the CUDA Tile team. The role involves working on a new tile-based programming model for GPUs, focusing on compiler transformations, performance optimization, and general software engineering tasks.
Responsibilities:
• In this role, you will be working on CUDA Tile, a new tile-based programming model for our GPUs.
• You will design and implement compiler transformations, develop MLIR-based dialects and lowering passes, and optimize the performance of tile-based kernels to ensure they execute efficiently across multiple generations of NVIDIA GPU architectures.
• The scope of these efforts includes defining public APIs, crafting and implementing compiler and optimization techniques, performance optimization, and other general software engineering work.
Qualifications:
Required:
• Bachelors, Masters or Ph.D. in Computer Science, Computer Engineering or a related field (or equivalent experience)
• 3+ years of relevant work or research experience in compiler optimization, performance analysis and IR design.
• Ability to work independently, define project goals and scope, and lead your own development effort.
• Excellent C/C++ programming and software design skills, including debugging, performance analysis, and test design.
• Strong interpersonal skills are required along with the ability to work in a dynamic product-oriented team.
Preferred:
• Knowledge of CPU and/or GPU architecture.
• CUDA or OpenCL programming experience.
• Experience with the following technologies: MLIR, LLVM, XLA, TVM and deep learning models and algorithms.
Company:
NVIDIA is a computing platform company operating at the intersection of graphics, HPC, and AI. Founded in 1993, the company is headquartered in Santa Clara, USA, with a team of 10001+ employees. The company is currently Late Stage.