CATEGORY
💻 技术干货
从零入门 cuda 编程?🦴深入理解 sgemmNN 算法!
深入理解 sgemmNN 算法 时隔近一年,CUDA 系列的第三篇终于来了。上篇讲访存优化时留了一个尾巴——说好要专门写一篇讲 SGEMM 的。今天我们就来填这个坑,深入分析一个经典的、手写的 sgemmNN 内核,看看 Volkov 在 2008 年的那篇著名论文 《Bench…
你不得不学的线段树 (segment tree) 基础 🌳
你不得不学的线段树基础 🌳 最近刷力扣时遇到了很多和线段树有关的题目,所以这篇博客是用来讲解 线段树 的。 线段树是算法竞赛和面试中常用的数据结构,专门用来高效处理 区间信息 。它能在 $O(\log N)$ 的时间复杂度内完成区间查询(求和、求最值等)和区间修改操作,将原本 …
从零入门 cuda 编程?🦴访存优化!
Cuda 的访存优化 继上篇从零入门 Cuda 编程已经 6 个月了,这篇博客已经不能再拖了。我之前早有规划,写完 Cuda 编程入门之后,还要写一篇 访存优化 ,还要写一篇 执行配置优化 ,还要写一篇讲 SGEMM 的。这样算是起了一个 Cuda 编程的头,也好后面继续深入。然…
从集合论到位运算,常见位运算技巧分类总结!
以集合论为指导,利用位运算实现复杂操作 本篇博客受到 灵茶山艾府 的启发,并结合了自己在实践过程中的经验。经实践,在集合论的指导下使用位运算能够大大地提高对某些问题的求解效率和质量。 总的来说,使用位运算可以极大减少内存占用,而同时将时间复杂度降低至与使用复杂的数据结构相当。 从…
老生常谈🗣:“进程、线程、协程”的相关概念汇总辨析
“请叙述下你对进程、线程、协程的概念的理解。” ——阿里面试题目 进程、线程、协程 关于进程、线程、协程的考察,几乎是面试中的“常青题”了。 许多人都会感觉到:在平时工作中,潜意识能将这些概念区分得很清楚,但一旦要通过口语把它表达出来,就很抓瞎,“理不明白,说不清楚,缺乏逻辑”。…
BFS、DFS、UCS、A*:常用的搜索算法简介 🔎
正文前的碎碎念:DeepSeek 和 CUDA 两篇博客有点过于硬核了,更新速度一直缓慢,整个 2 月份居然没有开新博客!!今天开一个小一点的话题,讲一下深搜、广搜、UCS 和 A*。 搜索算法简介:BFS、DFS、UCS、A* 🔎 在人工智能中,搜索算法是解决复杂问题的核心工…
从零入门 cuda 编程?🦴 看这篇就够了!
实录:从零开始接触 cuda 编程 🐟 CUDA(全称 Compute Unified Device Architecture,中文译为“统一计算设备架构”),由 nvidia 在 2007 年发布,提供用于编程和管理 GPU 的 C/C++ 语言扩展和 API,服务于 GPU…