- 博客(53)
- 收藏
- 关注
原创 cann-tools - 昇腾CANN 工具集使用指南
顺便说一句,如果你要部署模型到昇腾NPU,cann-tools是必装的。不改代码,部署时间缩短95%,何乐而不为?,提供模型转换(ATC)、性能分析(msadvisor)、精度比对(precision_compare)等工具。转换时报"Operator not supported: XXX"。,把模型转换、性能分析、精度比对都打包好了,一行命令搞定。你可能会问:PyTorch模型不能直接跑在NPU上吗?时报"Precision not pass"。第一次部署模型到昇腾NPU,最让我头秃的是。
2026-05-22 20:22:03
419
原创 cann-community - 昇腾AI社区大本营仓库:cann-community
第一次想给昇腾CANN做贡献,最让我头秃的是:GitHub仓库这么多,到底改哪个?PR怎么提?代码规范是啥?后来混熟了才发现,,所有社区项目、贡献指南、行业应用案例都在这里。
2026-05-22 20:12:30
417
原创 ops-nn - 神经网络算子性能秘籍
第一次跑 ResNet-50 推理,最让我困惑的是?。昇腾NPU(Ascend 910)有(向量+矩阵计算单元),还有(专门做向量运算)。如果不针对这些硬件优化算子,就等于开着法拉利走乡间小路。答案在。
2026-05-22 20:09:33
474
原创 pyasc - 让AscendCL用Python轻松调用
顺便说一句,如果你要用Python做昇腾NPU开发,pyasc是必装的。不用写C++,性能反而提升28-50%,何乐而不为?你可能会问:AscendCL有C++ API不就行了吗?假设我要用pyasc做图片分类(ResNet-50)。,让你用Python就能调用所有AscendCL功能,不用写一行C++。,把C++的AscendCL API封装成Python接口。:推理时报"Data type mismatch"。:输入数据类型跟模型期望的不一致。:跑多次推理后,NPU显存爆了。:模型文件路径不对。
2026-05-22 20:04:15
507
原创 MindSpore - 昇腾NPU原生AI框架
定义ResNet-50模型# 卷积层# 残差块# 全连接层return x# 残差块# 短路连接if stride!return out。
2026-05-22 19:54:11
410
原创 asnumpy - 让昇腾NPU和NumPy无缝对接
刚学深度学习那会,最顺手的是 NumPy。各种矩阵运算、广播机制、索引操作,闭着眼睛都能写。后来跑昇腾NPU,发现 NumPy 代码没法直接跑——和np.ndarray不能混用,数据要手动转来转去,烦死了。直到我发现。
2026-05-21 23:58:18
51
原创 cann-recipes-infer - 昇腾NPU推理优化从入门到精通
帮一个团队做 LLaMA-2-7B 的昇腾NPU部署,他们踩了一个坑:模型跑起来了,但是速度慢得没法用。8 张图片的 OCR 任务,跑了 5 分钟还没出结果。查了一圈,发现问题出在。FP16 的 7B 模型,光权重就 14GB,昇腾 910 的 16GB 显存根本装不下,要频繁做显存换入换出,性能暴跌。后来用了 cann-recipes-infer 的推理配方,换成 INT8 量化,14GB 降到 3.5GB,同样的任务 15 秒搞定。
2026-05-21 23:57:28
84
原创 ATB - 让大模型推理“飞“起来
之前帮一个朋友看 Transformer 推理代码,发现一个坑:模型加载成功了,但是推理速度慢得离谱,4096 token 的上下文要跑 30 秒才能出第一个 token。查了半天,发现问题出在 Attention 计算没 fusion。每一层 Transformer Layer 的 QKV 计算、Attention Score 计算、FFN 计算,都是分开调算子的,NPU 的计算单元根本没吃饱。后来用了,同样模型的推理速度直接飙到 3 秒出第一个 token。
2026-05-21 23:57:07
748
2
原创 catlass - 让算子开发像搭积木一样简单
昇腾CANN的算子开发,以前是个"体力活"——每个算子都要手写 C++ 代码,调内存、调流水、调同步,写对了算你厉害,写错了调试三天。catlass 要解决的就是这个问题:把算子开发从"手写汇编"变成"搭积木"。
2026-05-21 23:56:59
487
原创 FlashAttention 在昇腾NPU上的极致优化
刚接触 FlashAttention 那会,我被一个困惑砸懵了:明明 Attention 机制的计算量已经是 O(n²) 了,业界还在拼命优化它,图什么?直到我看见一组数据才明白——训练一个 1750 亿参数的 GPT-3,光是 Attention 计算就要消耗 60% 的算力。这东西要是跑得慢,整个模型就是摆设。
2026-05-21 23:56:04
29
原创 hixl - 让分布式训练“零拷贝“通信
想象一下,你和朋友一起做PPT,但是每次改一页,都要把整个PPT文件发过来发过去。效率低吧?要是能只传"改动的那一页",甚至"改动的那个文本框",效率不就上去了?分布式训练里的通信,以前就是这么低效。hixl 要解决的,就是这个问题。
2026-05-19 23:56:47
344
原创 ascend-transformer-boost (ATB) - Transformer推理加速实战
之前帮一个朋友看 Transformer 推理代码,发现一个坑:模型加载成功了,但是推理速度慢得离谱,4096 token 的上下文要跑 30 秒才能出第一个 token。查了半天,发现问题出在 Attention 计算没 fusion。每一层 Transformer Layer 的 QKV 计算、Attention Score 计算、FFN 计算,都是分开调算子的,NPU 的计算单元根本没吃饱。后来用了,同样模型的推理速度直接飙到 3 秒出第一个 token。
2026-05-19 23:52:35
511
原创 昇腾NPU算子开发:从“手写汇编“到“搭积木“
刚接触昇腾NPU算子开发那会,我被一个问题砸懵了:为什么写个矩阵乘法要3000行代码?而且大部分代码是在调内存、调流水、调同步,真正算矩阵乘法的代码不到10%。直到我发现了(CANN Template Library for Ascend),才知道算子开发还能这么玩。
2026-05-19 23:50:17
520
原创 昇腾NPU上的FlashAttention:让大模型“算得快“又“记得准“
刚接触 FlashAttention 那会,我被一个困惑砸懵了:明明 Attention 机制的计算量已经是 O(n²) 了,业界还在拼命优化它,图什么?直到我看见一组数据才明白——训练一个 1750 亿参数的 GPT-3,光是 Attention 计算就要消耗 60% 的算力。这东西要是跑得慢,整个模型就是摆设。
2026-05-19 23:46:09
476
原创 Flutter 状态管理终极指南(一):从 setState 到 Riverpod 2.0
状态 = 应用在某一时刻的数据快照。包括:用户输入、网络响应、主题配置、路由栈等。
2025-12-15 20:09:54
750
原创 Flutter 状态管理终极指南(二):从 setState 到 Riverpod 2.0 的演进与实战
状态管理没有银弹,但 Riverpod 无疑是目前最接近“完美”的方案。它用函数式思维解决了命令式状态管理的诸多痛点,让代码更简洁、更可靠、更易测试。本文通过理论+实战,为你铺平了通往 Riverpod 精通之路。行动清单在新项目中直接使用 Riverpod 2.0;用@riverpod注解替代手动 Provider 声明;为每个 Notifier 编写单元测试;在团队内推广 “无 context” 编程范式。
2025-12-15 19:16:14
913
原创 Flutter 混合开发实战:从 Add-to-App 到高性能双向通信的全栈集成方案
5}Flutter 混合开发的成功,不在于技术炫技,而在于平衡创新与稳定、效率与风险。本文提供的全栈集成方案,已在电商、社交、金融等多个领域验证有效。优秀的混合架构,让用户感知不到“混合”,只感受到“流畅”。行动建议在现有 App 中新建一个 Flutter Module;实现 Engine 预热与复用;封装统一的 NativeRouter 中间件;建立混合栈的自动化测试用例。唯有将混合开发工程化、标准化,才能真正释放 Flutter 的跨端价值。
2025-12-14 20:09:59
1040
原创 Flutter 与原生平台深度互操作:从 Method Channel 到 Platform Interface 的工程化封装
4}56// 默认实现(用于测试)10}49 }10}通过接口抽象、Federated 架构、错误治理、自动化测试,我们可以将 Platform Channel 从“技术债”转变为“可复用资产”。本文提供的工程化方案,已在多个金融、IoT 项目中稳定运行。行动建议将现有 MethodChannel 封装为 Platform Interface;为所有原生调用添加单元测试;引入 pigeon 提升类型安全;建立原生功能文档库。
2025-12-14 00:00:13
697
原创 Flutter 架构演进实战:从 MVC 到 Clean Architecture + Modularization 的大型项目重构指南
7 ];813 ];14}没有银弹架构,只有适合当前团队与业务的结构。本文提供的 Clean + Modular 方案,已在多个百万级用户 App 中验证有效。好的架构让正确的事容易做,错误的事难以发生。行动清单本周内将一个功能迁移到 feature 目录;为核心 Use Case 编写单元测试;在团队内推行目录规范;监控构建时间,设定优化目标。唯有持续演进,才能让 Flutter 项目在规模膨胀中依然保持敏捷与健壮。
2025-12-13 23:59:15
672
原创 Flutter 状态管理终极指南:从 Provider 到 Riverpod 再到 Bloc
在 Flutter 开发中,“状态管理”是每个开发者都无法回避的核心话题。随着应用复杂度提升,简单的setState已无法满足需求。本文将系统性地对比主流状态管理方案——ProviderRiverpod和Bloc,深入其设计哲学与实现机制,并通过一个完整的电商购物车功能实战案例,分别用三种方案实现,帮助你理解何时该选择哪种工具。无论你是初学者还是进阶开发者,都能从中获得清晰的选型思路和可复用的代码模板。30 }32 }33。
2025-12-09 19:36:30
1268
原创 深入理解 Flutter 渲染机制与自定义绘制
Flutter 以其高性能和跨平台能力著称,其核心优势之一在于自研的渲染引擎——Skia。本文将深入剖析 Flutter 的渲染管线(Rendering Pipeline),从 Widget 到 Element 再到 RenderObject 的构建流程,重点讲解和Canvas的使用场景,并通过三个实战案例(雷达图、手写签名板、粒子动画)展示如何利用底层绘图能力实现复杂 UI 效果。57}Flutter 的自定义绘制能力强大而灵活。掌握和Canvas。
2025-12-09 19:29:03
727
原创 Flutter 国际化(i18n)与本地化实战:从 ARB 到多语言动态切换(完整指南)
ARB(Application Resource Bundle)是一种 JSON 格式的资源文件,最初由 Google 为 Android 设计,后被 Flutter 采用作为标准 i18n 格式。支持占位符(如{name}支持复数规则支持元数据描述(便于翻译人员理解上下文)创建36811 // 支持的语言列表13 }1418 }1923 }24}1// ❌ 错误。
2025-12-08 20:11:18
1050
原创 Flutter 测试与 CI/CD 实践:从单元测试到自动化部署全流程》
自动化测试与 CI/CD 不是“可选项”,而是现代软件工程的基础设施。更高的代码质量更快的交付速度更低的线上故障率每一次手动测试,都是对自动化缺失的惩罚。行动建议今天就为现有项目添加第一个单元测试配置 GitHub Actions 实现 PR 自动测试下次发布前,让 CI 替你完成回归验证!附:学习资源。
2025-12-08 20:05:34
721
原创 Flutter 深度实战:从架构设计到状态管理与性能优化(三)—— 从 30fps 到 60fps 的性能优化全路径
卡顿率(帧耗时 > 16ms 的比例)API 错误率关键路径转化率(如:启动 → 首页 → 商品详情)1// 上报帧率6 }7});性能优化不是一蹴而就的功能,而是贯穿产品生命周期的系统性工程。它要求我们:深入理解 Flutter 底层机制(三棵树、渲染管线)建立数据驱动的监控体系(不让问题逃出视线)推行严格的工程化规范(从源头保障质量)通过本文的全景图,希望你能构建起自己的性能优化方法论,在追求极致用户体验的道路上,走得更稳、更远。下一篇文章预告。
2025-12-02 20:03:12
1232
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅