# tinyinfer **Repository Path**: yunfeiliu/tinyinfer ## Basic Information - **Project Name**: tinyinfer - **Description**: https://github.com/lyffly/tinyinfer - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-07-18 - **Last Updated**: 2024-10-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tinyinfer #### 介绍 一个推理框架,目标是最精简的技术实现,开发中。 更新地址1: 更新地址2: 长期计划如下,现在还比较早期,晚上和周末才有时间更新 - [x] 使用Python实现前端接口 - [x] 支持FP32推理 - [x] 支持FP16推理 - [ ] 支持INT8推理 - [ ] 支持PPQ量化 - [ ] 算子融合 - [x] 使用C++实现自定义CUDA算子 - [x] 使用C++实现tensor类 - [ ] 实现显存池,减少显存使用 - [x] 使用cublas的gemm - [x] 使用cudnn的conv2d - [x] 使用cudnn的pooling - [ ] cutlass实现gemm - [ ] cutlass实现conv2d - [x] 支持ONNX模型(CV模型) - [ ] 支持GGUF的模型(大模型) - [ ] 引入triton生成后端算子 - [ ] stablehlo,使用mlir生成cubin然后调用 #### 编译 cuda version: 12.4 cudnn version: 9.1 ```shell git clone https://github.com/lyffly/tinyinfer # or https://gitee.com/yunfeiliu/tinyinfer cd tinyinfer git submodule update --init --recursive # build wheel python3 setup.py bdist_wheel # install pip install dist/*.whl ``` #### 使用Renset18测试 ```shell python3 test_resnet18_fp32.py python3 test_resnet18_fp16.py ``` #### 愿景 不求速度多快,不求技术多高级,只做技术积累,把一个推理引擎所需要的内容整合完毕。 cuda kernel的实现目前先实现最naive的版本,后续再优化 #### 参考或看过或未来会用到的仓库 1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、