docs/intro/releases.md
:orphan:
Latest)OpenCL支持高通reocrd queue ,以降低创建 GPU Command Buffer 所需的时间; Oneplus 9 机型 Benchmark 测试结果如下
| Model | unrecord | record |
|---|---|---|
| resnet-v2-50.mnn | 21.254 | 20.160 |
| MobileNetV2_224.mnn | 4.853 | 4.186 |
| mobilenet-v1-1.0.mnn | 6.424 | 5.315 |
| nasnet.mnn | 46.751 | 20.260 |
| SqueezeNetV1.0.mnn | 7.35 | 6.832 |
| squeezenetv1.1.mnn | 3.936 | 3.693 |
| mobilenetV3.mnn | 14.201 | 6.743 |
| inception-v3.mnn | 33.111 | 32.032 |
稀疏卷积内存优化,降低内存占用;
减少异构(CPU低精度/GPU)运行 MNN 模型时的常量内存占用;
CUDA优化int8算子性能;
减少Permute几何计算产生的region数量;
重新调整ConvolutionInt8及im2col在AVX512-VNNI下的分块大小,提升性能20%-30%;
X86新增bilinear/nearest sample的SIMD实现,提升ImageProcess性能 50% 左右;
ARMv8.6-A指令支持,支持了smmla和bfmmla指令.inst指令,降低新指令对编译器的依赖NNAPI后端,能够利用Android设备上的NPU/APU/DSP进行计算;支持float32与float16数据类型的模型推理。目前支持的算子如下:
smmla实现的GemmInt8实测性能在矩阵规模为[1024, 1024, 1024]时,性能相比sdot提升为88.47%(s图中33x33项),接近理论性能(100%);模型性能提升20%左右。
bfmmla实现的GemmBF16实测性能在规模为[1024, 1024, 1024]时,性能相比fp16fmla提升为91.53%(图中1024,1024,1024项),接近理论性能;模型性能相比原来的bf16提升一倍以上。
float16推理时,NNAPI平均性能相比MNN-CPU慢。
solvepnp / svd等函数实现Unary/Binary/Reduction的求导实现Eager模式,该模式下不保存计算图,直接计算结果,可通过Executor的lazyEval配置
Lazy模式Eager模式Markdown+Sphinx的文档支持 Winograd Int8对kernel_size > 1的量化卷积进行优化 ,离线量化工具(C++: quantized.out,python: mnnquant)json配置文件中增加"winogradOpt": true,并将特征量化方法设置为"feature_quantize_method":"EMA"即可使用
-DMNN_SUPPORT_BF16=ONPrecisionMode=Precision_Low_BF16新添模型压缩的仅权值量化(MNNConvert --weightQuantBits)。此功能仅对conv/matmul/LSTM的float32权值进行量化,仅优化模型大小,加载模型后会解码为float32,量化位宽可选2~8,运行速度和float32模型一致。经内部测试8bit时精度基本无损,模型大小减小4倍。
express目录下)asimdhp和asimddp扩展提速接近100% | 芯片/手机 | 优化前(ms) | 优化后(ms) |
|---|---|---|
| 高通425/红米4A | 261.12 | 237.89 |
| 高通652/360N5 | 122.94 | 115.80 |
| 模型(Mac单线程) | 优化前(ms) | 优化后(ms) |
|---|---|---|
| resnet18 | 81 | 48 |
| mobilenetv1 | 37 | 26 |
使用MNN QAT与Tensorflow的对比如下表所示:
| 模型 | DataType | Accuracy | Model Size |
|---|---|---|---|
| Original Model | float32 | 72.324% | 13M |
| MNN QAT Model | symm int8 | 72.456% | 3.5M |
| Tensorflow QAT Model | symm int8 | 71.1% | 3.5M |
Python Expr API