triton-ascend-case-reduction-amin-atomic

Optimize atomic amin reduction on Ascend by mapping the reduction axis across multiple cores.

258|48|Updated Jun 22, 2020
One-click install
npx skills add https://github.com/mindspore-ai/akg --skill triton-ascend-case-reduction-amin-atomic-mindspore-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: triton-ascend-case-reduction-amin-atomic
Source: https://github.com/mindspore-ai/akg/tree/main/akg_agents/python/akg_agents/op/resources/skills/triton-ascend/cases/triton-ascend-case-reduction-amin-atomic
Command: npx skills add https://github.com/mindspore-ai/akg --skill triton-ascend-case-reduction-amin-atomic-mindspore-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

原子操作归约优化:当非reduce轴很小时,将reduce轴映射到多核,以提升归约性能。

Core Features & Use Cases

  • 支持两种原子操作方案:在循环内进行原子操作和在循环外集中原子操作,权衡存储与竞争。
  • 通过二次切分和计算重组,在极端形态如 M<<N(如16×262144)的场景中提升性能。
  • 适用于 Triton on Ascend 的实现,并可与 Atlas A2/A3 硬件配合使用。

Quick Start

在给定的形状设置下执行 amin-atomic 内核,以观察性能提升。

Frequently Asked Questions about triton-ascend-case-reduction-amin-atomic

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I optimize atomic reduction performance for extreme shape ratios like M<<N on Ascend?

Optimize atomic reduction for extreme M<<N shapes on Ascend by mapping the reduction axis to multiple cores. This approach uses two-stage tiling and compute rearrangement to balance workload and atomic contention when the non-reduction axis is small.

Does Triton on Ascend support amin-atomic kernels for Atlas A2 hardware?

Yes, Triton on Ascend supports amin-atomic kernels for Atlas A2 and A3 hardware. The implementation includes autotuning configurations to optimize the atomic reduction operations across the supported hardware.

What is the best way to handle atomic contention during kernel optimization on Ascend?

Handle atomic contention during kernel optimization by choosing between two atomic schemes: performing atomic operations inside the loop or centralizing them outside. This balances storage requirements against competitive overhead.

When do I need to map the reduction axis to multiple cores for amin operations?

Map the reduction axis to multiple cores for amin operations when the non-reduction axis is very small, such as a 16x262144 shape. This extreme M<<N ratio benefits from multi-core mapping to improve overall reduction performance.

How do I use autotune to configure amin-atomic reductions in Triton?

Use autotune to configure amin-atomic reductions in Triton by testing various tiling and atomic operation schemes. The skill provides autotuning configurations to automatically find the best performance setup for your specific shape ratios on Ascend.