Toolchain Development Engineer (GPU Profiler)
Location: GdanskAMD ROCm is an ecosystem of libraries and tools for developing applications that harness the processing power of AMD graphics cards. It is a series of libraries with primitives rocmCUB, rocBLAS, rocSparse, rocThrust. These are also special purpose libraries such as MIOpen which provides basic algorithms from the area of machine learning running on GPU. In addition to libraries, ROCm provides development tools, a C++ and Fortran language compiler.
- https://rocmdocs.amd.com/en/latest/
- https://github.com/ROCmSoftwarePlatform
The main programming tool is HIP. The HIP is a C++ programming interface and runtime layer for writing software to execute on AMD and NVIDIA GPUs. The HIP framework includes many components based on the LLVM infrastructure.
In Gdańsk, we are building a team of 7 people who will work on different aspects of the HIP platform. These include GPU C++ compiler, profiler, OpenMP, FORTRAN compiler. The team will be part of a larger international AMD team working on ROCm components.
Application profiling is one of the essential parts of creating high-performance applications running on the GPU. The more straightforward and more reliable the tools are, the more enjoyable the profiling process is. If you are a C++ engineer with experience in application profiling, knowledge about performance metrics, counters, CPU, and GPU architectures, then you are the person we are looking for. The right candidate will be working on a GPU profiler which is one of the toolchain components of the HIP platform.
RESPONSIBILITIES
- Propose design, defend and implement the GPU Profiler features for HIP framework on Linux operating systems
- Review code changes and design proposals from team members
- Working with on-site and offshore teams to deliver the software solutions on schedule.
- Work with opensource communities delivering patches and reviewing the solutions from the community and upstreaming as required.
- Contribute to the technical content of the compiler documentation/manuals.
- Develop a close working relationship with Compiler QA, Compiler Support and other compiler teams.
SKILLS
MUST
- Strong programming skills, mainly C++
- Linux System Programming
- Knowledge about performance counters, both hardware and software.
- GPU Pipeline architecture
- Extensive experience with parallel programming models
- Experience using version control software such as Git
- Good communication in English (both written and spoken)
- Positive attitude and integrity
NICE TO HAVE
- Experience in LLVM compiler
- Experience in one of the computing frameworks: OpenCL, CUDA, HIP
- Competitive salary
- Luxoft Training Center
- Access to e-learning Library
- Individual development plans
- Long-term cooperation with possibility to gain experience in different projects and technologies
- A significant number of professional communities (Agile Community, Tech Community, Business Analysis Community, etc.)
- Group Life Insurance
- Private healthcare insurance – LuxMed. Unlimited access to specialist consultations with Dental Care included
- Medical costs reimbursement for employees (up to certain amount per quarter)
- Travel Insurance
- Benefit Program - Cafeteria and Multisport Card
- Various communities (sport, recreation activities, trips, board games, cultural and educational activities)
- Discounts program for employees – BeLux (banking offer, car leasing offer and cafeteria program discount)
- Convenient locations in a modern offices with game rooms
- Multinational projects for clients all over the world
Check out our open roles at career.luxoft.com
and follow us on Facebook!
www.facebook.com/luxoft.poland