CATCCOS【免费下载链接】catccosCATCCOS昇腾计算-通信融合算子模板库是一个聚焦于提供高性能计算通信融合类算子基础模板的代码库。项目地址: https://gitcode.com/cann/catccos 简介CATCCOS(CANNTemplates forCompute-CommunicationOverlapSubroutines)中文名为昇腾计算-通信融合算子模板库是一个聚焦于提供高性能计算通信融合类算子基础模板的代码库。通过抽象分层的方式将计算-通信算子代码模板化。简化通算融合算子开发解决易用性问题。内存语义实现计算通信细粒度并行最大化掩盖度根据计算通信特征结合硬件架构深度优化提供极致性能。本代码仓为CATCCOS代码仓。结合昇腾生态力量共同设计研发算子模板并提供典型通算融合算子的高性能实现代码样例。 模板分层设计分层详细介绍和各层级api见api文档。 目录结构说明catccos ├── 3rdparty # 依赖的catlass工程文件 ├── docs # 文档 ├── examples # kernel使用样例 └── include # 模板头文件 软硬件配套说明硬件平台:CPU:aarch64/x86_64NPU:Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元Atlas 200T A2 Box16 异构子框Atlas 800I A2 推理服务器A200I A2 Box 异构组件软件版本:gcc 7.5, 13已测试7.58.39.311.4建议使用9.3以上版本。cmake 3.15python 3.10CANN版本:CANN包类别版本要求获取方式社区版8.5.0.alpha002 及之后版本社区CANN包下载地址商用版8.5.0及之后版本请咨询对应Support/SupportE获取安装CANN开发套件包:chmod x Ascend-cann-toolkit_version_linux-arch.run ./Ascend-cann-toolkit_version_linux-arch.run --install 快速上手以matmul_allreduce算子样例为例快速上手CATCCOS算子开发配置环境变量(可选)# 用于统一配置CANN、SHMEM、CATLASS相关环境变量 source ./examples/utils/setup.sh注意配置环境变量时若CANN未安装到默认路径需先配置ASCEND_HOME_PATH环境变量。若使用examples下的编译脚本可跳过此步骤。编译算子样例 进入examples下对应的算子目录并执行编译脚本即可编译examples中的kernel代码。cd examples/matmul_allreduce bash scripts/build.sh执行算子样例 进入examples下对应的算子目录并执行运行脚本执行算子样例程序。cd examples/matmul_allreduce bash scripts/run.sh [device_list]出现如下执行结果说明算子运行成功精度比较通过。error num: 0 PASS 代码检查说明代码检查请参考pre-commit-guide.md文档。【免费下载链接】catccosCATCCOS昇腾计算-通信融合算子模板库是一个聚焦于提供高性能计算通信融合类算子基础模板的代码库。项目地址: https://gitcode.com/cann/catccos创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考