CANN 9.1.0 Release Notes
Version Download Address
https://www.hiascend.com/en/cann/download
Version Mapping
CANN Software Version Mapping Table
| CANN | Driver Version (Ascend HDK) |
|---|---|
| 9.1.0 | 26.0.RC1 |
Version Compatibility
CANN and Ascend HDK Version Compatibility
| CANN | Driver Version (Ascend HDK) | |||||
|---|---|---|---|---|---|---|
| 25.0.X | 25.2.X | 25.3.X | 25.5.X | 26.0.RC1/25.7.RC1 | 26.1.0 | |
| 8.5.2 | Y | Y | Y | Y | Y | Y |
| 9.0.X | Y | Y | Y | Y | Y | Y |
| 9.1.X | N | Y | Y | Y | Y | Y |
Internal Matching Relationships of CANN Software Packages
CANN Combination Compatibility
CANN 9.1.0 contains three combination packages: Toolkit, ops (the operator package), and NNAL (the acceleration library). The compatibility between the CANN combination packages and their subpackages is as follows. Six of the subpackages support independent upgrade, allowing users to install them flexibly based on their needs.
CANN ops and Toolkit Compatibility
The CANN ops package has been decoupled from Toolkit and supports independent upgrade. You can install it as needed.
Compatibility of Independently Upgradable Subpackages in the CANN ops Package
| CANN Subpackage Version | Source Code Tag | Compatible CANN Version |
|---|---|---|
| cann-ops-math 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
| cann-ops-nn 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
| cann-ops-cv 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
| cann-ops-transformer 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
| cann-hccl 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
| cann-hixl 9.1.0 | v9.1.0 | CANN 9.1.0 CANN 9.0.0 CANN 8.5.2 |
For the specific operations of independent subpackage upgrade, see Independent Subpackage Upgrade.
Key Features
Ascend 950DT now supported, providing higher bandwidth in training and decode inference tasks.For Atlas A2 products, Atlas A3 products, and
Ascend 950 products , core operators such as SMLA and Mhc are added, with adaptation of multiple open-source models including DeepSeek V4, Qwen 3.6, Kimi-K2.6, and GLM5.2.Operator development documentation is now available from basics, advanced operations, to innovation. View details
For
Ascend 950 products , SHMEM is the first to support AI Cores directly issuing MTE/UDMA/RDMA transfers, enabling UB and RoCE communication, with matching programming APIs provided. View detailsFor
Ascend 950 products , CATLASS now supports the Tile components, providing MxFP8/MxFP4 quantization templates and a sample library. View detailsThe operator precision standard is open-sourced, implementing precision determination for floating-point computation operators through mixed tolerance metrics. View details
New Features
Common Modules
CPU performance tuning:
- Toolkit adds the mindstudio-boost subpackage, which targets host-bound services and supports automatic core binding and resource isolation for key threads to tune performance (!1).
CANN adapts to different Ascend hardware products and adds OS compatibility support:
Atlas 350 accelerator cards adapt to Tlinux 3.3, Tlinux 4.4, and Anolis OS 8.9.
Atlas 950 SuperPoD and Atlas 850/850E adapt to openEuler 24.03 LTS SP4.
CANN supports Python 3.14.* and supports running CANN on later Python versions.
The new query_pkg_version.sh script allows you to query software version information of each component in one click.
Operator Libraries
ops-math
Ascend 950PR/Ascend 950DT adaptation and support:Newly adapted operators
New operator features
Performance tuning
Sorting performance tuning for the Sort operator with a small axis (!2985).
Generation performance tuning for random number operators (!3590).
Performance tuning for the TopkV2 operator, improving computation efficiency with int64 indices (!2564).
TopK operator memory and performance tuning with long sequences (!3183).
AICPU operator performance tuning, covering ClipByValueV2 (!2460), ConcatV2 (!2395), and CumSum (!2262).
Operator API migration changes:
- aclnnMatmulCompressDequant and its corresponding kernel files are migrated from the
mathrepository to thennrepository (!2728).
- aclnnMatmulCompressDequant and its corresponding kernel files are migrated from the
ops-cv
The following operators are newly adapted for
Ascend 950PR/Ascend 950DT :Newly adapted operators
GridSampler2DGrad (!847).
UpsampleNearestExact2d/3d (!851).
UpsampleNearestExactGrad (!798).
UpsampleTrilinear3d (!927).
CIoU (!833).
BlendFaceBgPartTwo (!825).
SpatialTransformer (!698).
adjust_saturation (!696).
scaleandtranslate (!693).
BoundingBoxEncode (!1049).
NMSWithMask (!560).
ExtractGlimpseV2 and UpsampleBicubic2d (!1039).
UpsampleNearestExact1d and its series of backward operators (!830 !798).
New operator features
Performance tuning
opbase
New features
Performance tuning
ops-nn
Enhances convolution operator functionality and performance, optimizing multimodal networks without degrading memory usage (!735):
dX supports splitting W with ultra-large W inputs.
dW supports enabling performance tuning for deterministic use cases.
dX supports MM conversion in stride=kernel and fmap=kernel scenarios to improve performance.
New use case support for
Ascend 950PR/Ascend 950DT :Introduces ops-tensor to optimize Cube-type operators based on a layered structure, reducing offset computation and code duplication (!5036).
Improves low-bit operators to support precision compensation and optimize whole-network precision for RmsNormDynamicMxQuant (!2894), DynamicBlockMxQuant (!1824), and DualLevelQuantBatchMatmul (!1141).
HardswishBackwardV2 (!4817) and SyncBatchNormGatherStatsWithCounts (!5973).
nn repo engineering optimization:
Enhances Cube-type operators for Atlas A2 products and Atlas A3 products, optimizing network performance and reducing memory usage in certain use cases:
aclnnTransposeBatchMatmul removes the restriction of B x K < 65536 (!4240).
Performance tuning for aclnnBatchMatmul in large-Batch small-MKN cases under the FP32 data type (!6103) (!7264).
Cube operators support configuring out_dtype (!4823) (!5481) (!5602).
Memory usage optimization for Cube operators (!5356) (!5864).
Operator API migration changes:
- aclnnMatmulCompressDequant and its corresponding kernel files are migrated from the
mathrepository to thennrepository (!4166).
- aclnnMatmulCompressDequant and its corresponding kernel files are migrated from the
ops-transformer
Attention (Attention/MLA)
Adds the SparseFlashMla (sparse FlashMLA) operator, and supports sparse attention KV merging to improve computation and memory access efficiency in long-sequence sparse attention use cases (!6526, !6429).
Adds the LightningIndexerV2 operator (!5635).
Adds the aclnnBlockSparseAttentionV2 API, and adapts to the FP8-quantized BlockSparseAttention operator. BlockSparseAttention supports performance improvements for FP8 and BSND input layout on A5. The quantized and non-quantized kernels of
Ascend 950PR/Ascend 950DT forward/inference tasks support LSE outputs, and the BlockSparseAttentionGrad backward operator is newly added (!4820, !6620, !6264, !6565, !6186).FusedInferAttentionScore supports LSE outputs, and AttentionUpdate supports sp128 on A2/A3 (!5505, !5709).
ScatterPaKvCache/GatherPaKvCache now support non-contiguous tensors on the first axis of the cache, and MlaProlog supports non-contiguous KVCache inputs (!6214, !6442).
RecurrentGatedDeltaRule supports non-contiguous first two axes of state, and SMLAG adds torch adaptation and new features (!6288, !5916).
MoE
MoeInitRoutingV3 supports DropPad in non-quantized tasks, and UnpermuteWithRoutingMap adds non-topk support for the N specification (!5826, !5353).
MegaMoe adds A2/A3 tiling, static tensor, and syncfunc functionality, and supplements A2/A3 kernels (!6574, !3608).
GMM (GroupedMatmul) quantization
GroupedMatmulFinalizeRouting adds deterministic support for W8A8 use cases on A5 (!6289).
GroupedMatmulSwigluQuantV2 adds WeightNz MxA8W4 data flow and MXFP4 weight NZ format support (!5267, !5419, !5272).
Enhances GMM and GMMAdd GlistType specifications (!4844, !3725).
MC2 (communication-computation fusion)
Adds the AllToAllMatmulV2 operator (!6062).
AllGatherMatmulV2 and AllToAllVGroupedMatmul/GroupedMatmulAllToAllV add
comm_modeto support selecting the communication engine (!5340, !6103).MatmulReduceScatterV2 adapts to AICPU communication (!5515).
Mhc The following operators are supported for the Atlas A2 products and Atlas A3 products:
Communication Libraries
Collective Communication (HCCL)
Ascend 950PR supports the allGatherV/reduceScatterV operators in CCU use cases (!303, !207).
Ascend 950PR supports integrating communication operators into graphs in GE graph mode and aclGraph mode (!183, !164, !296).
Ascend 950PR supports N-second fast recovery, improving the reliability of collective communication operations (!1126, !1609, !421).
Ascend 950PR supports maintenance and testing capabilities such as task exception and profiling, allowing you to pinpoint issues quickly (!937, !1472, !267, !332).
On Ascend 950PR, the HcclChannelAcquire API supports AIV directly issuing RoCE and URMA transfers, supporting custom development of MC2 operators (!2032).
On Atlas A2/A3 products, the multi-process-per-device capability now supports MC2 use cases (!1880).
On Atlas A2/A3 products, resource management is optimized in aclGraph use cases to support incremental refresh of communication resources (!2405, !2502).
On Atlas A2/A3 products, performance is enhanced in cross-SuperPoD use cases, and the ReduceScatter/AllGather operators support the cross-SuperPoD pipeline algorithm (!2071, !1931).
On Atlas A2/A3 products, communication is now supported for dual-machine back-to-back RoCE direct-connect models (!2642, !3433).
Atlas 350 accelerator cards support communication across PCIE SW (!1799, !707), and operators such as AllReduce, ReduceScatter, AllGather, Reduce, Scatter, Alltoall, Alltoallv, Send, and Recv support communication.
HIXL
Open underlying APIs: The Client-Server one-sided communication capabilities comprehensively improve link establishment specifications and performance. Deep optimization for batch small-buffer transfers effectively reduces on-chip memory use and communication resource overhead (!138).
HIXL network transport protocol extension: HIXL adds UBC, UBoE, and Host RoCE protocol support, fully covering D2D, D2rH, rH2D, and H2H data transfers across all use cases (!37). For the protocol support list of different product forms, visit the HIXL community.
HIXL intelligent link management upgrade: Automatic acquisition of communication resources and intelligent route selection (!181) allow for simple, on-demand link establishment (!245).
HIXL programming API enhancement: Extends APIs for asynchronous link management (!207) and batch query of transfer status (!208), speeding up upper-layer service development.
Graph Engine
Supports recovery on Ascend 950DT.
ge.autoMultistreamParallelMode adds the MainStream and LoadBalance options. Based on the Minimum Path Cover algorithm, it automatically partitions the compute nodes of a static shape model into the minimum number of logical streams to achieve multi-stream parallel acceleration.
Adds the PortableOp operator type, which provides serialization and deserialization capabilities for custom operators in offline inference tasks.
ATC and aclgrph APIs support setting the cluster configuration file path, which is used to generate offline OM models containing HCCL communication tasks, meeting the communicator configuration requirements in multi-device offline inference tasks.
Domain-specific Acceleration Libraries
Ascend Transformer Boost (ATB)
Integration of core operators on Ascend 950PR/Ascend 950DT
Realizes GELU, LayerNorm, MatmulEinSum, RmsNormQuant, SwiGluQuant (ACLNN V2), linear dequantization, and supports communication operators such as AllGather/AllReduce/ReduceScatter (!1994, !2089, !2090, !2060, !2097, !2103, !2091).
Attention/KV Cache inference enhancement
Paged Attention: Upgrades FusedInferAttention V5 on
Ascend 950 products (!2069).Paged Attention and Flash Attention now support the NORM_COMPRESS mask (!2114, !2116, !2078).
MLA decode supports Sliding Window Attention (SWA).
ReshapeAndCache supports single-input single-output on
Ascend 950 products (!2065).
Independent compilation and ABI system of torch_atb
torch_atb is decoupled from the main library for independent compilation, and the default output package ABI is switched to
cxx_abi_1(!2021).Supports wheel naming convention and automatic torch detection/installation for the installation script. The installation and deployment pipeline is fully connected (!2086, !2118).
Ascend Signal Processing Boost (SiP)
The following operators are newly adapted on
Ascend 950PR/Ascend 950DT :
Runtime
Supports stream specification expansion for AclGraph on Ascend 950DT to resolve issues such as insufficient resources for AI models (!2976).
Operator Programming
Key Features
Debugging
The Ascend C framework basic APIs support NPU Check (!1557, !1467), enhancing runtime validation for operators.
printf and reg dump printing are supported in SIMD VF (!1605), providing debug printing and register data dumps.
Ascend 950PR/Ascend 950DT supports DumpTensor for L1 tensor data (!2175), extending L1 data debugging support.Adds optype_collector, a tool that can check for duplicate optype names (!285).
Build project
- CMakeModule supports
CMAKE_<LANG>options (!2055).
- CMakeModule supports
Basic APIs
- Supports setting saturation overflow management for the ctrl register (!2077).
SIMT programming
Sample Updates
SIMD samples:
New best practice samples: Matmul+GELU fusion, datacopy optimization, bank conflict optimization, group_matmul quantized group matrix multiplication, and SIMT & SIMD high-performance programming (!1814, !2137, !2141, !2166, !2363).
Ascend 950PR/Ascend 950DT new feature samples and compatibility sample rectification: loopmode data transfer, interleave vector computation, datacopy_gm2l1, loadmx (Load2DMX), mmad_mx, data_copy_pad, etc. (!2336, !1899, !2124).New RegBase basic samples: basic arithmetic, data type conversion, reduction, comparison, indexing, and other samples (!1459, !1575, !2024).
Adds SIMD VF print samples and dump samples (!2558).
New getting-started and best-practice samples for tensor APIs: Matmul quick start, data copy-in/-out, on-the-fly quantization on copy-out, and MX FP4 best practices (!2553).
SIMT samples:
New SIMT optimization feature samples: DCache access optimization sample (!2453), transpose-based memory access coalescing and bank conflict sample (!1753), and best-practice sample: improving transfer efficiency through type alignment (!2297).
New SIMT functional feature samples: registering custom operators in PyTorch (!2769), compilation-related samples (dynamic, static, separate compilation, etc.) (!2356), profiling sample (!1989), memory barrier feature sample (!1923), Warp class feature sample (!2876), simulator sample (!2692), and kernel log sample (!2131).
PTO Virtual Instruction Set
Basic Vector & Cube instructions:
Supports high-precision versions of Vector instructions (!896, !782, !815, !717, !648, !695).
Adds MGATHER/MSCATTER instructions (!935, !1136, !309, !889).
Reduce instructions support return values and corresponding indices (!1124, !928).
Axis-merging instructions support type enhancement; TMOV/TEXTRACT/TINSERT support Vec-to-Vec (!1196).
Communication instructions:
Adds CCU asynchronous communication instructions TGATHER, TBROADCAST, TSCATTER, and TREDUCE for
Ascend 950 products (!915).Supports the all-core synchronization instruction SYNCALL (!907).
Adds the asynchronous prefetch instruction (!116).
TPUT_ASYNC and TGET_ASYNC add support for A5 URMA-based asynchronous communication (!991).
CostModel simulation:
CPU-SIM: Adds CPU simulation instructions, like those for NPUs.
Removed and Deprecated Features
NOTE
Deleted features are those that have been removed in the current version.
Deprecated features are those marked as deprecated in the current version and will be removed in future versions.
Replace
${install_path}in this section with the CANN software installation path.
Runtime
The following directories, files, and APIs are marked as deprecated in CANN 9.1.0 and are planned for removal in versions after June 30, 2027.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
Header files in the include/driver directory | pkg_inc/driver directory |
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and are planned for removal in versions after December 30, 2026.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
| ${install_path}/ascend-toolkit/latest/runtime/include/acl | ${install_path}/cann/include/acl |
| ${install_path}/ascend-toolkit/latest/runtime/include/aclnn | ${install_path}/cann/include/aclnn |
| ${install_path}/ascend-toolkit/latest/runtime/include/graph | ${install_path}/cann/include/graph |
All header files under ${install_path}/cann/pkg_inc/runtime/runtime will be removed | No related functionality will be provided in later versions |
The rtGetC2cCtrlAddr API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_ffts.h. | Replace with the aclrtGetHardwareSyncAddr API in ${install_path}/cann/include/acl/aclrt.h |
The rtFftsTaskLaunch and rtFftsTaskLaunchWithFlag APIs are deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_ffts.h. | No related functionality will be provided in later versions |
The rtBindHostPid, rtUnbindHostPid, rtProfSetProSwitch, rtQueryProcessHostPid, rtGetDeviceIdByGeModelIdx, rtGetExceptionRegInfo, rtGetMaxModelNum, rtLabelGoto, rtLabelGotoEx, rtProfilerConfig, rtProfilerInit, rtProfilerTrace, rtProfilingCommandHandle, rtProfRegisterCtrlCallback, rtSetDeviceIdByGeModelIdx, rtSetExceptCallback, rtSetMsprofReporterCallback, rtSetProfDirEx, and rtUnsetDeviceIdByGeModelIdx APIs are deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | No related functionality will be provided in later versions |
The rtGetBinaryDeviceBaseAddr API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtBinaryGetDevAddress API in ${install_path}/cann/include/acl/aclrt.h. |
The rtGetTaskIdAndStreamID API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtGetThreadLastTaskId and aclrtStreamGetId APIs in ${install_path}/cann/include/acl/aclrt.h. |
The rtLabelCreate, rtLabelCreateEx, rtLabelCreateExV2, and rtLabelCreateV2 APIs are deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtCreateLabel API in ${install_path}/cann/include/acl/aclrt.h. |
The rtLabelListCpy API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtCreateLabelList and aclrtDestroyLabelList APIs in ${install_path}/cann/include/acl/aclrt.h. |
The rtLabelSet API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSetLabel API in ${install_path}/cann/include/acl/aclrt.h. |
The rtLabelSwitchByIndex API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSwitchLabelByIndex API in ${install_path}/cann/include/acl/aclrt.h. |
The rtProfilerTraceEx API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtProfTrace API in ${install_path}/cann/include/acl/aclrt.h. |
The rtRegDeviceStateCallbackEx API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtRegDeviceStateCallback API in ${install_path}/cann/include/acl/aclrt.h. |
The rtRegTaskFailCallbackByModule API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSetExceptionInfoCallback API in ${install_path}/cann/include/acl/aclrt.h. |
The rtSetIpcMemorySuperPodPid API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtIpcMemImportPidInterServer API in ${install_path}/cann/include/acl/aclrt.h. |
The rtSetIpcNotifySuperPodPid API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtNotifySetImportPidInterServer API in ${install_path}/cann/include/acl/aclrt.h. |
The rtSetTaskAbortCallBack API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSetTaskAbortCallBack API in ${install_path}/cann/include/acl/aclrt.h. |
The rtSetTaskFailCallback API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSetExceptionInfoCallback API in ${install_path}/cann/include/acl/aclrt.h. |
The rtStreamGetMode API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtGetStreamAttribute API in ${install_path}/cann/include/acl/aclrt.h. |
The rtStreamSetMode API is deprecated in ${install_path}/ascend-toolkit/latest/toolkit/include/experiment/runtime/runtime/rt_base.h. | Replace with the aclrtSetStreamFailureMode and aclrtSetStreamOverflowSwitch APIs in ${install_path}/cann/include/acl/aclrt.h. |
The aclsysGetCANNVersion API is deprecated in ${install_path}/ascend-toolkit/latest/include/acl/acl.h. | Replace with the aclsysGetVersionStr and aclsysGetVersionNum APIs in ${install_path}/cann/include/acl/acl.h. |
libascendcl.so is deprecated in ${install_path}/ascend-toolkit/latest/lib64. | Replace with the libacl_rt.so, libacl_mdl.so, and libacl_op_executor.so library files in ${install_path}/cann/lib64. |
Graph Engine
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and are planned for removal in versions after December 30, 2026.
| Deprecated Directories | Replacement Directories |
|---|---|
| ${install_path}/ascend-toolkit/latest/runtime/include/graph | ${install_path}/cann/include/graph |
| ${install_path}/ascend-toolkit/latest/compiler/python/func2graph | func2graph in the ${install_path}/cann/x86_64-linux/python directory |
Starting from Ascend 950 products, the aclblas and aclop APIs are no longer recommended. They will be gradually deprecated in later versions. Migrate to the corresponding aclnn operator APIs.
Operator Libraries
- Incompatibility changes: Control operators Identity, IdentityN, Rank, Shape, and ShapeN are migrated from ops-nn to ops-math. These operators are migrated from the
ops_proto_nn.handes_nndirectories to theops_proto_math.handes_mathdirectories. You need to update the related header file references (!2333, !3995).
The following directories, files, and APIs are marked as deprecated in CANN 9.0.0 and will be removed in later versions after March 30, 2027.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
| aclnnGroupedMatMulAllReduce API | aclnnMatmulAllReduce |
| aclnnGroupedMatmul, aclnnGroupedMatmulV2, aclnnGroupedMatmulV3, and aclnnGroupedMatmulV4 APIs | aclnnGroupedMatmulV5 |
| aclnnFusedInferAttentionScore, aclnnFusedInferAttentionScoreV2, and aclnnFusedInferAttentionScoreV3 APIs | aclnnFusedInferAttentionScoreV4 |
| aclnnIncreFlashAttention, aclnnIncreFlashAttentionV2, and aclnnIncreFlashAttentionV3 APIs | aclnnIncreFlashAttentionV4 |
| aclnnPromptFlashAttention and aclnnPromptFlashAttentionV2 APIs | aclnnPromptFlashAttentionV3 |
| aclnnMlaProlog and aclnnMlaPrologV2WeightNz APIs | aclnnMlaPrologV3WeightNz |
| aclnnMatmulAllReduceAddRmsNorm API | aclnnMatmulAllReduce and aclnnAddRmsNorm |
| aclnnQuantMatmulAllReduceAddRmsNorm API | aclnnQuantMatmulAllReduceV2 and aclnnAddRmsNorm |
| aclnnWeightQuantMatmulAllReduceAddRmsNorm API (deprecated) | aclnnWeightQuantMatmulAllReduce and aclnnAddRmsNorm |
| aclnnInplaceQuantMatmulAllReduceAddRmsNorm API | aclnnQuantMatmulAllReduceV2 and aclnnAddRmsNorm |
| aclnnInplaceMatmulAllReduceAddRmsNorm API | aclnnMatmulAllReduce and aclnnAddRmsNorm |
| aclnnInplaceWeightQuantMatmulAllReduceAddRmsNorm API | aclnnWeightQuantMatmulAllReduce and aclnnAddRmsNorm |
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and are planned for removal in later versions after December 30, 2026.
Operators are split into component packages. Each independent component package of different operators contains multiple libraries and header files. In the following table, ${ops_project} represents the actual cv, math, nn, transformer, and legacy.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
| ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/*.h | ${install_path}/cann/opp/built-in/op_graph/inc/${ops_project}_ops_proto.h |
| ${install_path}/ascend-toolkit/latest/lib64/libopapi.so | ${install_path}/cann/lib64/libopapi_${ops_project}.so |
| aclnnGroupedMatMulAllReduce API | No replacement functionality |
| aclnnWeightQuantBatchMatmul API | aclnnWeightQuantBatchMatmulV3 API |
| aclnnQuantMatmul, aclnnQuantMatmulV2, aclnnQuantMatmulV3, and aclnnQuantMatmulV4 APIs | aclnnQuantMatmulV5 API |
| aclnnGroupedMatmul, aclnnGroupedMatmulV2, aclnnGroupedMatmulV3, and aclnnGroupedMatmulV4 APIs | aclnnGroupedMatmulV5 API |
| aclnnIncreFlashAttentionV2 and aclnnIncreFlashAttentionV3 APIs | aclnnIncreFlashAttentionV5 API |
| aclnnPromptFlashAttentionV2 API | aclnnPromptFlashAttentionV3 API |
| aclnnFusedInferAttentionScoreV2 and aclnnFusedInferAttentionScoreV3 APIs | aclnnFusedInferAttentionScoreV4 API |
Acceleration Libraries
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and will be removed in versions after December 30, 2026.
The following operator IRs are deprecated for the DVPP acceleration feature: Crop, CropAndResize, DecodeAndCropJpeg, DecodeJpeg, PadV3D, Resize, ResizeV2, ResizeBicubic, ResizeBilinearV2, ResizeNearestNeighborV2, ReverseV2, WarpPerspective, WarpAffineV2, AdjustContrast, AdjustHue, AdjustSaturation.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
| The AdjustBrightness operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppAdjustBrightness API |
| The AdjustBrightnessV2 operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppAdjustBrightness API |
| The AdjustContrastWithMean operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppAdjustContrast API |
| The AdjustSaturationV2 operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppAdjustSaturation API |
| The GaussianBlur operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppGaussianBlur API |
| The ImgCrop operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppCrop API |
| The RgbToGrayscale operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppRgbToGrayscale API |
| The Rotate operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image.h | acldvppRotate API |
| The CropAndResizeV2 operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image_ops.h | acldvppCropAndResize API |
| The ImgToTensor operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image_ops.h | acldvppImgToTensor API |
| The NormalizeV2 operator IR will be deprecated from ${install_path}/ascend-toolkit/latest/opp/built-in/op_proto/inc/image_ops.h | acldvppNormalize API |
Debugging and Analysis Tools
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and will be removed in later versions after December 30, 2026.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
The profiling header files aprof_pub.h, prof_api.h, and prof_common.h are deprecated from the path ${install_path}/ascend-toolkit/latest/include/experiment/msprof/toolchain. | The storage path of the profiling header files aprof_pub.h, prof_api.h, and prof_common.h is changed to ${install_path}/cann/pkg_inc/profiling. |
Diagnostics
The following directories, files, and APIs are marked as deprecated in CANN 8.5.0 and will be removed in later versions after December 30, 2026.
| Deprecated Directories, Files, and APIs | Replacement Directories, Files, and APIs |
|---|---|
| Error Manager header file ${install_path}/ascend-toolkit/latest/include/experiment/metadef/common/util/error_manager/error_manager.h | Error Manager header file ${install_path}/cann/include/base/err_msg.h |
REPORT_INNER_ERROR and REPORT_CALL_ERROR APIs in ${install_path}/ascend-toolkit/latest/include/experiment/metadef/common/util/error_manager/error_manager.h | REPORT_INNER_ERR_MSG API |
| REPORT_INPUT_ERROR and REPORT_ENV_ERROR APIs | REPORT_PREDEFINED_ERR_MSG API |
| Log header file ${install_path}/ascend-toolkit/latest/include/toolchain/slog.h | Log header file ${install_path}/cann/pkg_inc/base/dlog_pub.h |
| Log header file ${install_path}/ascend-toolkit/latest/include/base/alog_pub.h | Log header file ${install_path}/cann/pkg_inc/base/dlog_pub.h |
AlogCheckDebugLevel API in ${install_path}/ascend-toolkit/latest/include/base/alog_pub.h | CheckLogLevel API in ${install_path}/cann/pkg_inc/base/dlog_pub.h |
AlogRecord API in ${install_path}/ascend-toolkit/latest/include/base/alog_pub.h | DlogRecord API in ${install_path}/cann/pkg_inc/base/dlog_pub.h or wrapped macros such as dlog_error and dlog_warn |
Model Compression Toolkit
The following features of the Model Compression Toolkit are marked as deprecated in CANN 9.0.0 and have been removed in this version.
Non-uniform quantization
Automatic mixed precision
Approximate calibration
int4 quantization-aware training
All amct_mindspore features
Known Issues
Symptom: When the value of the input parameter deqScale of the operator aclnnMatmulCompressDequant is inf/-inf, inf or nan is displayed in its precision details.
[Introduced in] CANN 8.5.0
[Impact] Triggered by specially constructed test cases, not introduced by a new operator, and in actual quantization tasks there is no case where deqScale is -inf or inf. The impact is controllable in the current version.
[Workaround] In actual quantization tasks, there is no case where deqScale is -inf or inf.
Fixed Issues
The following issues are fixed in version 9.1.0:
Fixed the issue where the QuantBatchMatmulV3 operator on Atlas inference products caused read/write conflicts when
AUTO_SYNC=falsewas specified during compilation.For Atlas A2 products and Atlas A3 products, fixed the issue where the MatmulReduceScatterV2 operator cleared the flag bit too quickly in cases with M less than 512, causing other devices to fail to detect it and eventually time out.
Fixed the issue where, with MoE EP on Atlas A2 products, multi-bit faults injected into the on-chip memory of a D node prevented entry into the quick recovery process.
Fixed the issue where communication timeout occurred probabilistically at random step positions after 500+ steps in a 4k-device training task.
Fixed the refill backlog issue caused by frequent task interruption and restart of decode in PD disaggregation.
Fixed the issue where the IR prototype name conflict between user-defined custom operators and built-in operators in the open-source repository caused the IR prototype name not to take effect.
Fixed the issue where the aclnnAddmv operator occasionally triggered core dump during load testing.
Fixed the issue where an exception was reported when a 10,000-device task was launched.
Fixed the issue where MatMulV3 performance was worse than MatMulV2 for specific shapes in aclgraph use cases.
Fixed the precision issues for fused_quant_mat_mul.
Fixed the precision issues of BatchMatmulV2 with specific bias.
Fixed the precision issues of the FAG operator with short-sequence GQA and NoMask.
Documentation Changes
Programming Guide
Ascend C Operator Development
Optimized the "Quick Start" chapter:
Updated the Ascend C learning path.
Added a general description of heterogeneous systems and the programming model.
Optimized and adjusted the SIMD programming model chapter in the Programming Guide, categorized by the dimensions of C API programming based on the language extension layer, tensor-based C++ programming, and Tpipe- and TQue-based programming.
Added SuperKernel and SIMT Cooperative Groups sections under Advanced Programming in the Programming Guide.
Ascend C API has undergone a large-scale restructuring. The changes are as follows:
The directory structure of data movement APIs and matrix computation APIs has been adjusted: closely related APIs are placed adjacent to each other. For example, the movement APIs related to matrix computation are placed under the matrix computation directory.
The API directory structure was organized by use cases: for example, matrix computation is divided into matrix computation copy-in, Mmad computation, and matrix computation copy-out.
For each type of APIs, necessary basics, concepts and principles, general constraints, key features, and other descriptions were added.
Added constraint descriptions and notes on special parameter values for each API.
Added an API appendix that includes a summary of API pipeline types, theoretical performance, and API boundary values.
Added the tensor API reference. Tensor APIs are experimental and may be adjusted or improved in later versions, and backward compatibility is not guaranteed. You should pay attention to updates in later versions during use.
Added documentation on matrix computation overview and computation fractal introduction (!2533).
Optimized the vector computation API documentation and added instruction constraints (!2676).
Added an overview of SIMD and SIMT hybrid programming performance optimization (!2736).
Built a VitePress documentation site for AscendC documentation preview (!2547).
Communication Operator Development
Added the "Programming Models and Concepts > CCU Programming Models and Concepts" section.
Added the "Communication Operator Development > CCU Operator Development" section.
Added the following APIs to the communication operator development APIs.
Added documentation about CCU kernel lifecycle and memory token management to control plane APIs.
Added CCU APIs to data plane APIs.
Graph Development
Added the following sections:
Custom Pass Development > Modifying a Graph with a Custom Pass > Implementing a Pass Based on Pattern Matching (Python)
Programming Guide > SuperKernel Fusion Scope Calibration
Integrating Custom Operators into a Graph > Integrating Custom Operators into a Graph
API Reference
GE APIs
API Reference > Python APIs > pyatc API: Added the atc command-line tool for Python.
Basic Data Structures and APIs of Graphs > options parameter description > ge.tiling_schedule_optimize: Modified the parameter level from the original global session level to all levels.
Operator Libraries
The "Operator Libraries > AI Framework Operator Support List" section from previous versions is now separated into an independent manual, AI Framework Operator Support List, newly added in this version.
Added the "Operator Libraries > Operator APIs (torch_extension)" section.
Added the RAS APIs section to "Operator APIs (aclnn)".
Added a multi-platform migration guide for migrating the operators in the ops-cv library from Atlas A2 products to Ascend 950PR/Ascend 950DT.
Communication Libraries
HCCL
References > Communication Operator Support List: Added the Ascend 950PR/Ascend 950DT support list.
Domain-specific Acceleration Libraries
Ascend Transformer Boost (ATB)
Added a test framework guide, supplementing the instructions on build and run dependencies for testframework (!2120).
Added instructions on how to determine the cxx_abi version (!2121).
Updated documentation links to CANN 9.1 and PyTorch 26.0.0 (!2126).
Corrected the ATB_BUILD_DEPENDENCY_PATH and ABI determination instructions, covering README/FAQ/test framework guide (!2136).
Development Tools
Ascend Tensor Compiler (ATC)
Parameter --framework: Added a note that the Caffe framework is no longer evolving in its current form, and model conversion availability is not guaranteed.
Ascend Model Compression Toolkit (AMCT)
Added the "LLM-based Quantization" chapter.
Fixed Vulnerabilities
For details about the fixed vulnerabilities for open-source and third-party software in this version, see Fixed Vulnerabilities.