把自然语言性能问题转换为安全 SQL,查询 Ascend PyTorch Profiler / msprof 数据库中的算子、通信与调度耗时。
文档
huawei-cloud-msot-msopprof-operator-profiler
试用Collect operator-level performance data on Ascend NPU using msopprof tool. Supports both device mode and simulator mode, generates performance analysis repor...
它能做什么
Collect operator-level performance data on Ascend NPU using msopprof tool. Supports both device mode and simulator mode, generates performance analysis reports. Use this skill when the user wants to: (1) profile operator performance on Ascend NPU, (2) collect performance data for analysis, (3) identify performance bottlenecks through operator execution characteristics. Trigger: user mentions "msopprof", "profiler", "performance profiling", "operator profiling", "Ascend", "NPU", "profile data", "性能采集", "算子性能", "性能剖析", "算子耗时采集"
技能文档
Huawei Cloud msOT msopprof Operator Profiler
Overview
This skill provides operator-level performance profiling capabilities for Ascend NPU.
Architecture: Profiling Configuration → Data Collection → Report Generation → Analysis
Related Skills:
huawei-cloud-ascend-profiler-db-explorer- Profiling database analysis and queryhuawei-cloud-ascend-small-model-migrate- Migration workflow that uses performance data
Architecture Components
This skill involves the following cloud services and components:
- msopprof: Huawei Cloud operator profiling tool for Ascend NPU
- CANN: AI Computing Platform for NPU runtime support
- Ascend NPU: Target hardware for performance profiling
- Profiling Database: Storage for collected performance data
Architecture Diagram:
┌─────────────────────────────────────────────────────────────┐
│ msOT msopprof Operator Profiler Skill │
├─────────────────────────────────────────────────────────────┤
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Profiling │───▶│ Data │───▶│ Report │ │
│ │ Config │ │ Collection │ │ Generation │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Mode │ │ Operator │ │ Data │ │
│ │ Selection │ │ Execution │ │ Export │ │
│ │ (Device/Sim)│ │ Monitoring │ │ │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────┘
Use Cases
Typical Problem Scenarios:
- Collecting operator-level performance data on Ascend NPU
- Profiling model inference performance
- Identifying performance bottlenecks through operator execution
- Comparing operator performance between device and simulator modes
- Generating performance analysis reports for model optimization
Typical User Phrases:
- "Profile operator performance on Ascend NPU"
- "Collect performance data using msopprof"
- "Generate performance analysis report"
- "Compare device vs simulator profiling"
- "Identify performance bottlenecks"
- "AscendCollectionOperatorPerformanceData"
- "msopprofPerformance"
- "PerformanceAnalysisReport"
Scope
Supported:
- Operator performance data collection
- Device mode profiling
- Simulator mode profiling
- Report generation
Not supported:
- System-level profiling
- Non-Ascend platforms
Core Workflow
1. Profiling Configuration
- Set up profiling parameters
- Configure collection mode (device/simulator)
2. Data Collection
- Execute profiling on target model
- Collect operator performance data
3. Report Generation
- Generate profiling reports
- Output performance metrics
4. Data Export
- Export data to profiling database
- Prepare for further analysis
Enhanced Features
Best Practices Knowledge Base
This skill integrates a searchable knowledge base containing migration success stories and optimization patterns:
Features:
- Case Study Repository: Searchable database of migration success stories for common model architectures
- Operator Optimization Recipes: Proven optimization patterns with code snippets for common operators
- Similarity Matching: Recommends proven solutions based on model architecture similarity
- Performance Patterns: Collection of known performance patterns and anti-patterns
- Expert Recommendations: Curated tips from Ascend optimization experts
Knowledge Base Structure:
- Case Studies: YOLO, ResNet, UNet migration success stories
- Operator Recipes: Conv2D, MatMul, Attention optimization patterns
- Performance Patterns: Common bottleneck patterns and solutions
- Expert Tips: Optimization best practices from field experts
YOLOv8 Migration Success Story
Model Information
- Model: YOLOv8s
- Input: 640x640
- Target: Ascend 910B
Challenges Encountered
-
Issue: NMS operator fallback to CPU
- Solution: Implemented AscendC NMS operator
- Gain: 30% latency reduction
-
Issue: Memory bandwidth bottleneck
- Solution: Optimized data layout and batch processing
- Gain: 15% throughput improvement
-
Issue: Custom activation function
- Solution: Replaced with supported operators
- Gain: Stable NPU execution
Final Results
- Latency: 8.2 ms → 5.1 ms (-37.8%)
- Throughput: 122 FPS → 196 FPS (+60.7%)
- Accuracy: 60.2% → 60.4% (+0.2%)
Key Takeaways
- Always check operator coverage before migration
- Implement custom operators for critical path
- Optimize memory access patterns
Operator Optimization Recipes
- Conv2D: Padding overhead → Use native NPU padding (5-10% gain)
- MatMul: Memory layout → Optimal tiling config (10-15% gain)
- Attention: FlashAttention → Enable NPU FlashAttention (20-30% gain)
- NMS: CPU fallback → AscendC implementation (25-35% gain)
Reference Documents
- Acceptance Criteria - Functional acceptance criteria
- Verification Method - Verification approach
- Troubleshooting - Common issues and solutions
Prerequisites
- msopprof >= 1.0.0 installed
- CANN >= 7.0.0 installed
- Ascend NPU driver installed
- Operator code to be analyzed
Core Commands
# Collect operator performance data
msopprof --output=/path/to/output \
--mode=device \
./my_operator
# Analyze performance report
python3 scripts/analyze_profile.py --data /path/to/output
Parameter Confirmation
- output: Performance data output path (Required)
- mode: Collection mode (device/simulator) (Optional)
- operator: Operator executable file path (Required)
相关技能
Develop and optimize custom operators using AscendC programming language. Analyze operator performance bottlenecks and conduct optimization validation. Based...
Calculate MFU (Machine FLOP Utilization) for operators like matmul/GEMM/FlashAttention on Ascend NPU, providing clear formulas and derivation process Use thi...
用自然语言控制华为昇腾 NPU,本地或 SSH 远程执行 npu-smi 命令。
SSH 远程连接华为云昇腾设备,支持 NPU 监控、磁盘与容器运维,凭据仅驻留内存。
Migrate vision/detection/segmentation small models to Ascend NPU, covering the full workflow: model structure analysis, migration verification, performance p...
huaweicloud-skills-team 的更多技能
浏览全部技能用自然语言控制华为昇腾 NPU,本地或 SSH 远程执行 npu-smi 命令。
在华为云昇腾 910B DevServer 上按单机或双机(16 卡)拓扑部署并测试 LLM、VL、Embedding、Rerank 模型。
面向华为云资源的只读查询能力,用于资源清点、核对与参数发现。
通过本地 Python SDK 只读查询华为云 IAM 资源(用户、用户组、策略、委托、AK/SK、MFA、安全设置)。
在华为云 Flexus L 实例上一键部署 OpenClaw AI Agent 平台,并完成模型与通道配置。
在华为云 Flexus L 实例上一键部署 Hermes AI Agent 平台,并完成大模型与机器人通道配置。