随笔分类 - C++
摘要:概述 最近在学习 MLIR,一开始学的是 MLIR 官方的 Toy Tutorial,但总感觉不得要领。后面在 Github上看到了北京大学周可行写的 MLIR-tutorial,非常清晰易懂,成功跟着做了一遍。在这里记录一下我在跟教程的过程中遇到的一些问题。顺便一提,大模型真的是一位好老师,之前我
阅读全文
摘要:概述 课题组最近的项目需要用到华为的昇腾计算卡,和CUDA汗牛充栋的教程和文档相比,作为一款比较新的计算卡产品,昇腾在网上基本没什么教程,可以参考的只有官方文档、官方代码仓库和官方论坛。因此我在使用的过程中,也经过了很多探索,踩了不少坑,所以在这里记录一下我遇到的一些问题和解决方案。 特别强调一下,
阅读全文
摘要:背景 最近做一个FPGA加速项目,懒得写RTL,所以又选择了HLS(High Level Synthesis,高层次综合)。之前的文章《Ultra96V2开发板简单使用》中介绍了如何用HLS写IP核并且在Ultra96V2开发板上通过Pynq环境跑起来,但是我现在用的是OpenSSD开发板,如《Sp
阅读全文
摘要:背景 最近在做基于图的近似向量检索的实验,需要用到Faiss库和Rapids系列的Raft库,同时由于要统计一些算法内部的数据,因此不能直接使用它们预编译的Python库,而要手动从源码编译并通过C++调用,这里记录一下编译运行时遇到的一些问题和技巧,其中Raft的坑尤其多。 Faiss 编译 Fa
阅读全文
摘要:背景 在探索新的深度学习算法的时候,我们可能会遇到PyTorch提供的算子不能满足需求的情况,这时候就需要自定义PyTorch算子,将我们的算法集成到PyTorch的工作流中。同时,为了提高运算效率,算子往往都需要使用CUDA实现。所幸,PyTorch及很多其他Python库都提供了简化这一过程的方
阅读全文
摘要:背景 最近从不同网站下载了非常多的动漫壁纸,其中有一些内容相同,但是大小、背景颜色、色调、主人公的位置不同(例子如下)。正因为如此,基础的均方误差、直方图检测等方法很难识别出这些相似的图片。 思路 OpenCV中有很多用来对特征点进行检测和计算的函数,这些函数能够利用像素点及其周围的灰度检测其是否是
阅读全文