Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 14 hours
Course Outline
Introduction to Custom Operator Development
- Rationale for building custom operators: key use cases and system constraints
- Understanding CANN runtime architecture and operator integration points
- Overview of TBE, TIK, and TVM within the Huawei AI ecosystem
Implementing Low-Level Operators with TIK
- Exploring the TIK programming model and its supported APIs
- Strategies for memory management and tiling in TIK
- Process for creating, compiling, and registering custom ops with CANN
Testing and Validation of Custom Operations
- Conducting unit and integration tests for ops within the computation graph
- Diagnosing kernel-level performance bottlenecks
- Visualizing operation execution flows and buffer behavior
Optimization and Scheduling via TVM
- Introduction to TVM as a compiler for tensor operations
- Developing schedules for custom ops using TVM
- Executing TVM tuning, benchmarking, and code generation for Ascend targets
Framework and Model Integration
- Registering custom operations for MindSpore and ONNX frameworks
- Ensuring model integrity and managing fallback behaviors
- Supporting multi-operator graphs with mixed precision capabilities
Case Studies and Specialized Optimization Techniques
- Case study: Optimizing high-efficiency convolutions for small input shapes
- Case study: Memory-aware optimization of attention operators
- Best practices for deploying custom ops across diverse devices
Summary and Future Directions
Requirements
- Deep understanding of AI model internals and operator-level computation logic.
- Proficiency in Python and Linux development environments.
- Familiarity with neural network compilers or graph-level optimization techniques.
Target Audience
- Compiler engineers specializing in AI toolchains.
- Systems developers focused on low-level AI performance optimization.
- Developers creating custom operations or targeting novel AI workloads.