SanJoseCARecruiter Since 2001
the smart solution for San Jose jobs

C++ ML KERNEL DEVELOPER FOR RYZENAI NPU

Company: AMD
Location: San Jose
Posted on: June 11, 2024

Job Description:

WHAT YOU DO AT AMD CHANGES EVERYTHINGWe care deeply about transforming lives with AMD technology to enrich our industry, our communities, and the world. Our mission is to build great products that accelerate next-generation computing experiences - the building blocks for the data center, artificial intelligence, PCs, gaming and embedded. Underpinning our mission is the AMD culture. We push the limits of innovation to solve the world's most important challenges. We strive for execution excellence while being direct, humble, collaborative, and inclusive of diverse perspectives. -AMD together we advance_SYSTEMS DESIGN ENGINEER--- - C++ Kernel Developer for RyzenAI NPUTHE ROLE:------ -We are looking for a dynamic, energetic Lead / Senior Systems Design Engineer to join our growing team in AI (Artificial Intelligence) group. In this role, the individual will be responsible for developing AI/ML specific C/C++ kernels and dataflow schedules for AMD Ryzen Processors built on XDNA Neural Processor Units. As a C++ Kernel Developer, you will play a crucial role in designing, optimizing, and implementing machine learning kernels specifically tailored for NPUs. Your work will directly impact the efficiency, speed, and accuracy of our machine learning models, making it possible to unlock new capaTHE ROLE:------ -We are looking for a dynamic, energetic Lead / Senior Systems Design Engineer to join our growing team in AI (Artificial Intelligence) group. In this role, the individual will be responsible for developing AI/ML specific C/C++ kernels and dataflow schedules for AMD Ryzen Processors built on XDNA Neural Processor Units. As a C++ Kernel Developer, you will play a crucial role in designing, optimizing, and implementing machine learning kernels specifically tailored for vector processors. Your work will directly impact the efficiency, speed, and accuracy of our machine learning models, making it possible to unlock new capabilities in cutting-edge Gen AI models such as Llama2-7B, Stable diffusion, SDXL-Turbo etc. -KEY RESPONSIBILITIES: -Kernel Development: -Design and implement highly optimized C++ kernel library for Generative AI models. -Collaborate with the research and software teams to integrate these kernels into our existing software stack. -Vector Processor Optimization: -Work closely with hardware engineers to understand the architecture of VLIW vector core units such as MAC, GeMM, and non-linear functions. -Develop vectorized code that leverages SIMD (Single Instruction, Multiple Data) and ILP (instruction level parallelism) for maximum performance. -Performance Profiling and Tuning: -Profile and analyze the performance of existing kernels. -Identify bottlenecks and optimize critical sections for better throughput. -Graph Acceleration: -Accelerate machine learning graphs using operator fusion and linear approximations. -Explore quantization approaches (INT4, FP4, FP16) to improve performance while maintaining numerical stability and accuracy. -Testing and Validation: -Develop CPU models for the ML operators in C++/ Python to validate accuracy. -Write unit tests and integration tests to ensure correctness and reliability. -Validate kernel performance across different hardware platforms. -Documentation and Collaboration: -Document design specs for new kernels, and document performance improvements. -Follow coding guidelines, use tools like git to maintain code and create pull-requests, and documentation. -Collaborate with cross-functional teams, including machine learning researchers and software engineers. -PREFERRED EXPERIENCE:------ -Excellent C/C++ and Python coding skills -Good understanding of SIMD/Tensor/VLIW processor architecture to exploit parallelism. -Experience with vectorized programming (SIMD) and parallel computing. -Experience with CNN, LSTM, LLM, and diffusion models is necessary. -Familiarity with machine learning frameworks (e.g., TensorFlow, PyTorch) is a plus. -Knowledge of low-level hardware details (cache hierarchy, memory access patterns) is desirable. -Excellent problem-solving skills and a passion for performance optimization. -ACADEMIC CREDENTIALS: -BS/Masters/PhD degree in Computer Science, Electrical Engineering, or a related field. -#LI-RF1#LI-HYBRIDAt AMD, your base pay is one part of your total rewards package. -Your base pay will depend on where your skills, qualifications, experience, and location fit into the hiring range for the position. You may be eligible for incentives based upon your role such as either an annual bonus or sales incentive. Many AMD employees have the opportunity to own shares of AMD stock, as well as a discount when purchasing AMD stock if voluntarily participating in AMD's Employee Stock Purchase Plan. You'll also be eligible for competitive benefits described in more detailhere.AMD does not accept unsolicited resumes from headhunters, recruitment agencies, or fee-based recruitment services. AMD and its subsidiaries are equal opportunity, inclusive employers and will consider all applicants without regard to age, ancestry, color, marital status, medical condition, mental or physical disability, national origin, race, religion, political and/or third-party affiliation, sex, pregnancy, sexual orientation, gender identity, military or veteran status, or any other characteristic protected by law. - - We encourage applications from all qualified candidates and will accommodate applicants' needs under the respective laws throughout all stages of the recruitment and selection process.Job type: FULL TIMECategories: Engineering

Keywords: AMD, San Jose , C++ ML KERNEL DEVELOPER FOR RYZENAI NPU, IT / Software / Systems , San Jose, California

Click here to apply!

Didn't find what you're looking for? Search again!

I'm looking for
in category
within


Log In or Create An Account

Get the latest California jobs by following @recnetCA on Twitter!

San Jose RSS job feeds