项目简介
本项目是基于C++实现的深度学习张量计算库和神经网络推理库,主要为移动平台提供高性能的深度学习计算支持。它参考了PyTorch和ncnn的设计,移除了所有与CPU无关的代码,未来可能支持GPU。项目主要用于NTHU電機系實作專題。
项目的主要特性和功能
- C++17:采用现代C++标准,带来高效编程体验。
- 无依赖:不依赖外部库,方便集成与部署。
- 多线程支持:借助OpenMP实现多线程并行计算,提高计算效率。
- 符号运算:支持符号运算,便于进行复杂数学计算。
- Arm优化:针对Arm架构优化,提升在移动设备上的性能。
- 图像处理:利用stb_image和OpenCV库,支持图像的加载、保存和绘制。
- 模型转换:支持将NCNN模型转换为Otter项目,便于在不同平台部署。
安装使用步骤
前提条件
- 已下载本项目的源码文件。
- 安装了CMake(建议版本3.10以上)。
- 安装了C++编译器(如g++或clang++)。
编译步骤
MacOS
- 创建并进入构建目录:
bash mkdir build && cd build
- 生成构建文件:
bash cmake ..
- 编译项目:
bash make -j8
- (可选)针对Intel和M1芯片编译:
bash cmake -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" .. make -j8
Linux
- 创建并进入构建目录:
bash mkdir build && cd build
- 生成构建文件:
bash cmake ..
- 编译项目:
bash make -j8
Windows
使用g++编译:
bash
g++ -DOTTER_CONFIG=1 -Os -fopenmp -ffp-contract=fast -mavx -mavx2 -msse3 -msse4.1 -msse4.2 -msse4a -mfma -o otter *.cpp
运行
编译完成后,生成的可执行文件位于build
目录下,可直接运行以测试功能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】