# Operator Performance Comparison Skill Configuration
# Default benchmark parameters
benchmark:
iterations: 100
dtypes:
- float32
- float16
- bfloat16
input_mode: "random" # random or file
# msprof configuration
msprof:
# msprof command (use full path if not in PATH)
command: "msprof"
# Output directory for profiling results
output_dir: "./profiling_results"
# Additional msprof arguments
args:
- "--aic-metrics=ai_core_utilization,memory_usage"
- "--system-metrics=cpu_usage,memory_usage"
# Timeout for msprof execution (seconds)
timeout: 300
# Performance metrics to collect
metrics:
- execution_time_ms
- npu_utilization_percent
- memory_usage_mb
- throughput_ops_per_sec
- power_consumption_w # if supported
# Operator discovery
discovery:
# Directories to search for operators
directories:
aclnn: "mindspeed_ops/api/aclnn"
tilelang: "mindspeed_ops/api/tilelang"
triton: "mindspeed_ops/api/triton"
# File patterns to match
patterns:
- "*.py"
- "*_op.py"
- "op_*.py"
# Optional parameters defaults
optional_params:
# Default parameters for each implementation
aclnn: {}
triton: {}
tilelang: {}
# Report generation
report:
# Default output format
default_format: "text"
# Available output formats
formats:
- text
- json
- table
# Report templates
templates:
text: "templates/report.txt.j2"
json: "templates/report.json.j2"
# Visualization
visualization:
# Enable/disable charts
enabled: true
# Chart types
charts:
- bar
- line
- scatter
# Chart style
style: "seaborn"
# Output format for charts
output_format: "png"
# Chart dimensions
width: 12
height: 8
# Error handling
error_handling:
# Continue on error
continue_on_error: false
# Log level
log_level: "INFO"
# Maximum retries
max_retries: 3
# Retry delay (seconds)
retry_delay: 5
# Cache configuration
cache:
# Enable caching
enabled: true
# Cache directory
directory: "./.operator_performance_cache"
# Cache expiration (seconds)
expiration: 3600 # 1 hour
# Testing
testing:
# Test shapes for validation
test_shapes:
small: [32, 32]
medium: [256, 256]
large: [1024, 1024]
# Test operators
test_operators:
- add
- matmul
- conv2d
# Test data types
test_dtypes:
- float32
- float16
# Integration
integration:
# CI/CD integration
ci:
enabled: false
output_file: "performance_report.json"
fail_threshold_ms: 1000 # Fail if any operator takes > 1000ms
# Jupyter notebook integration
jupyter:
enabled: true
widgets: true
# API server
api:
enabled: false
host: "localhost"
port: 8080
# Advanced settings
advanced:
# GPU synchronization
sync_gpu: true
# Memory pinning
pin_memory: false
# Benchmark mode
benchmark_mode: "wall_time" # wall_time, cpu_time, cuda_time
# Precision
precision: "high" # high, medium, low
# Random seed
random_seed: 42