文档

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 query
  • huawei-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

  1. Issue: NMS operator fallback to CPU

    • Solution: Implemented AscendC NMS operator
    • Gain: 30% latency reduction
  2. Issue: Memory bandwidth bottleneck

    • Solution: Optimized data layout and batch processing
    • Gain: 15% throughput improvement
  3. 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)

相关技能

把自然语言性能问题转换为安全 SQL,查询 Ascend PyTorch Profiler / msprof 数据库中的算子、通信与调度耗时。

作者 huaweicloud-skills-team6 次安装

Develop and optimize custom operators using AscendC programming language. Analyze operator performance bottlenecks and conduct optimization validation. Based...

作者 huaweicloud-skills-team1 次安装

Calculate MFU (Machine FLOP Utilization) for operators like matmul/GEMM/FlashAttention on Ascend NPU, providing clear formulas and derivation process Use thi...

作者 huaweicloud-skills-team6 次安装

用自然语言控制华为昇腾 NPU,本地或 SSH 远程执行 npu-smi 命令。

作者 huaweicloud-skills-team7 次安装

SSH 远程连接华为云昇腾设备,支持 NPU 监控、磁盘与容器运维,凭据仅驻留内存。

作者 huaweicloud-skills-team2 次安装

Migrate vision/detection/segmentation small models to Ascend NPU, covering the full workflow: model structure analysis, migration verification, performance p...

作者 huaweicloud-skills-team1 次安装

huaweicloud-skills-team 的更多技能

浏览全部技能

用自然语言控制华为昇腾 NPU,本地或 SSH 远程执行 npu-smi 命令。

作者 huaweicloud-skills-team7 次安装

在华为云昇腾 910B DevServer 上按单机或双机(16 卡)拓扑部署并测试 LLM、VL、Embedding、Rerank 模型。

作者 huaweicloud-skills-team7 次安装

面向华为云资源的只读查询能力,用于资源清点、核对与参数发现。

作者 huaweicloud-skills-team6 次安装

通过本地 Python SDK 只读查询华为云 IAM 资源(用户、用户组、策略、委托、AK/SK、MFA、安全设置)。

作者 huaweicloud-skills-team6 次安装