NCNN 源码(1)-模型加载-数据预处理-模型推理
参考 ncnn 第一个版本的代码。
0 整体流程 demo:squeezenet
ncnn 自带的一个经典 demo:squeezenet 的代码:
OpenMP+AVX加速矩阵运算
1 调整计算顺序
一般的方阵乘法的实现:
<...
layout: post title: raspi5_SSD1306_OLED date: 2024-09-16 tags: [raspi] author: taot —
给树莓派添加 SSD1306 OLED 小屏幕
树莓派被作为一个小服务器使用的时候,通常都不需要接一台专用...
OpenMP多线程使用
OpenMP 是一套 C++ 并行编程框架, 也支持 Forthan,是一个跨平台的多线程实现, 能够使串行代码经过最小的改动自动转化成并行的。具有广泛的适应性。这个最小的改动,有时候只是一行编译原语!具体实现是通过分析编译原语#pragma,将用原语定义的代码块,自动转化成并行的线程去执行。每个线程都将分配...
SSE和AVX指令基本使用
SSE/AVX 指令属于 Intrinsics 函数,由编译器在编译时直接在调用处插入代码,避免了函数调用的额外开销。但是与 inline 函数不同,Intrinsics 函数的代码由编译器提供,能够更高效地使用机器指令进行优化调整。一般的函数是在库中,Intrinsic Function 内嵌在编译...
蒙特卡洛方法
0 简介
蒙特·卡罗方法(Monte Carlo method),是一种思想或者方法的统称,而不是严格意义上的算法。蒙特卡洛方法的起源是1777年由法国数学家布丰(Comte de Buffon)提出的用投针实验方法求圆周率,在20世纪40年代中期,由于计算机的发明结合概率统计理论的指导,...
位运算使用
在写代码过程中,适当的位运算是一种提高代码质量的有效手段。
0 位运算
常用的运算符共 6 种,分别为按位与 主要作用是进行 tiling、vecto...
&
、按位或Read More
iree 编译流程(4)——HAL::HALTransformPassPipeline
7 HAL::HALTransformPassPipeline