登录社区云,与社区用户共同成长
邀请您加入社区
容器化不是简单地写个 Dockerfile,而是一条分层递进的工程流水线。每一层都依赖上一层正确完成,任何一层有缺口,后面都会出问题。核心原则:程序必须在目标架构上编译,或者使用与目标架构一致的交叉编译环境。 不能在 x86 机器上编译 ARM 程序,然后塞进 ARM 镜像。输出含义/ARM 64 位(如 Kylin ARM、飞腾、鲲鹏)Intel/AMD 64 位RISC-V 64 位2.2 确
Abstract: The problem asks to find all pairs of elements with the smallest absolute difference in an array containing distinct integers and return these pairs in ascending order. The solution involves
本文《🐉 龍魂 · 算力主权宣言》提出了一套完整的本地化AI计算主权框架,核心主张“推理计算必须发生在用户完全控制的设备上”。全文通过七部分系统阐述: 主权定义 - 提出数据不出境的四层架构(物理/模型/推理/数据主权),强调鲲鹏服务器作为真本地载体 真伪鉴别 - 对比真本地(全栈自主)与伪本地(依赖云端API)的6项关键差异 技术实现 - 展示龍魂推理层的四层架构(界面层/网关层/引擎层/硬件
增/减:ascending/descending,是针对压栈的时候,入栈的时候地址是变大还是变小定义的。满栈/空栈:满栈是先移动sp指针在存储数据,空栈是先存储数据在移动sp指针.FD(满递减):压栈用 STMDB,出栈用 LDMIA。FA(满递增):压栈用 STMIB,出栈用 LDMDA。ED(空递减):压栈用 STMDA,出栈用 LDMIB。EA(空递增):压栈用 STMIA,出栈用 LDMD
This problem requires sorting arr1 based on the relative order of elements in arr2, followed by remaining elements in ascending order. The solution involves counting occurrences of each element in arr
Bank冲突是Ascend C和GPU等并行计算中的关键性能瓶颈,指多个内存请求同时访问同一Bank导致并行访问串行化。在Ascend C中,UB存储采用交叉编址,当访问模式(如矩阵转置)的步长为Bank数的整数倍时,会导致所有请求集中在同一Bank。解决方法包括Padding(通过增加无用数据破坏对齐)、数据重排和使用专用指令。核心思路是使访问请求均匀分散到不同Bank,避免硬件资源竞争,从而提
在深度学习模型的开发过程中,开发者经常会遇到框架内置算子无法满足需求的情况。位置编码、激活函数变体、特定的数学变换等场景,往往需要开发者自行实现自定义算子。昇腾CANN 提供的 Ascend C 编程语言,为开发者提供了在昇腾 910 处理器上高效开发自定义算子的能力。
"""自定义FlashAttention算子开发流程"""print("\n=== Ascend C自定义FlashAttention开发流程 ===")steps = ["step": 1,"name": "需求分析","tasks": ["明确自定义功能(稀疏/全局Token/混合等)","确定输入输出规格","评估SRAM需求"],"deliverable": "功能规格文档"},"step
CANN自定义GEMM算子(Ascend C手写高性能矩阵乘法)
本文总结了Ascend C算子开发的8个关键要点:1)建议首个算子选择Softmax/LayerNorm等稍复杂的算子以体会并行化等核心机制;2)Tiling策略直接影响并行效率,需根据场景选择合适切分方式;3)必须处理32字节地址对齐问题;4)调试需依赖黑盒日志和分段验证;5)性能优化重点在于减少数据搬运,推荐双缓冲技术;6)算子集成需编译为.so并注册到GE;7)测试需覆盖shape、数值和对
写给前端的 CAAN-pyasc:昇腾Python Ascend C绑定到底是啥?
本文介绍了CANN社区通过组织算子优化竞赛提升开源社区活跃度的实践。竞赛采用标准化流程,包含赛题设计、平台搭建、竞赛进行、评审答辩和开源合入五个阶段。重点分享了赛题选择标准、基线代码设计、自动化评测系统搭建等关键环节,并总结了硬件异构导致成绩不可比、基线代码bug、优胜方案License问题等典型教训。通过竞赛机制,社区成功吸引了高质量贡献,如第二届竞赛中3个优胜方案的性能超越了社区基线,最终被合
写这篇文章的目的很简单:帮你把第一个 Ascend C 算子跑起来。不是看懂原理,不是看完感叹"好厉害"然后关掉页面——是真的跑起来,看到正确结果。
Abstract The problem requires sorting all cells of a given matrix in ascending order of their Manhattan distances to the center point (rCenter, cCenter). The solution is to iterate through all cells,