Skip to content

Releases: Tencent/ncnn

android ios macos linux windows webassembly watchos tvos visionos 预编译库 20250503 305837f

03 May 09:58
305837f
Compare
Choose a tag to compare

no new features from 20250428
fix blacklist for amd radv coopmat
workaround for qcom adreno turnip

android ios macos linux windows webassembly watchos tvos visionos 预编译库 20250428 205ca50

28 Apr 12:38
205ca50
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r28b,xcode 15.2,ubuntu-22.04,ubuntu-24.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64 + riscv64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64 + riscv64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator arm64 + arm64e + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator,支持 GPU arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库 arm64
ncnn-ios-vulkan.zip ios 静态库,支持 GPU arm64
ncnn-ios-simulator.zip ios simulator 静态库 x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库 x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU x86_64 + arm64
ncnn-watchos.zip watchos 静态库 armv7k + arm64_32
ncnn-watchos-simulator.zip watchos simulator 静态库 x86_64 + arm64
ncnn-tvos.zip tvos 静态库 x86_64 + arm64
ncnn-tvos-vulkan.zip tvos 静态库,支持 GPU x86_64 + arm64
ncnn-tvos-simulator.zip tvos simulator 静态库 x86_64 + arm64
ncnn-tvos-simulator-vulkan.zip tvos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-visionos.zip visionos 静态库 arm64
ncnn-visionos-vulkan.zip visionos 静态库,支持 GPU arm64
ncnn-visionos-simulator.zip visionos simulator 静态库 x86_64 + arm64
ncnn-visionos-simulator-vulkan.zip visionos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

x86 convolution int8 gemm xop/avx2/avx512/avx512vnni/avxvnni/avxvnniint8优化
risc-v eltwise rvv优化(@xfan1024)
risc-v bias rvv优化(@AtomAlpaca)
risc-v bnll rvv优化(@AtomAlpaca)
risc-v celu rvv优化(@AtomAlpaca)
重构reduction/quantize/dequantize/requantize减小二进制体积
softmax支持4维输入计算,优化支持任意elempack
param模型文件支持字符串类型的参数值,支持自然写法的数组
reshape支持表达式动态shape,不再支持reshape内permute参数
crop支持表达式动态slice
interp支持表达式动态output size
设置openmp环境变量解决多个openmp冲突问题和绑核失败问题
防止cmake编译器检测的优化导致的误识别
改善windows7+系统中的cpu大小核检测(@futz12)
修复HarmonyOS NEXT get_elf_hwcap返回空的问题(@peerless2012)
添加apple a18和m4系列的cpu型号识别
修复在cpu l2<1M时可能的convolution int8 gemm计算错误
修复android编译可能的重定义VK_USE_PLATFORM_ANDROID_KHR问题
修复mips/loongarch/risc-v架构开启simplemath编译问题
extractor clear()重置local allocator为0,修复多次clear的警告问题
绕过nvidia新驱动下padding可能的程序卡死问题
ncnn2table量化校准工具支持读取npy数据(@wxqwinner)
ncnn2int8量化工具默认使用fp16类型保存权重
改善ncnn单元测试编译耗时
优化cmake ncnn_add_layer()的vulkan shader收集性能(@maxint)
更新最新glslang
glsl编译时自动定义设备相关属性和特性的宏
glsl编译时自动定义ncnn_glsl_version宏
option结构体添加vulkan device index
清理目前comp源码中通用的扩展适配,已自动定义
支持在vulkan shader代码中使用NCNN_LOGE函数打印
检测vulkan扩展 VK_EXT_subgroup_size_control/VK_KHR_shader_subgroup_extended_types/VK_KHR_zero_initialize_workgroup_memory/VK_KHR_shader_subgroup_rotate/VK_EXT_shader_atomic_float/VK_EXT_shader_atomic_float2/VK_KHR_shader_non_semantic_info
修复risc-v ci c906/908/910/k1静态链接libgomp的错误
支持cmake-4.0编译
pip编译pyncnn支持使用系统cmake和ninja(@mgorny)
pnnx更新到torch-2.7
pnnx重构pass-level1代码,实现更快速编译
pnnx支持从tnn模型转换到pytorch/ncnn
pnnx支持转换onnx非对称Conv/Depth2Space,添加pixelshuffle/pixelunshuffle单元测试
pnnx支持转换GlobalAvgPool/ReduceL1/ReduceL2,添加onnx adaptive avg/max pool和norm单元测试
pnnx优化expression中的类型转换
pnnx转换gelu fast模式
pnnx兼容默认sdpa scale参数到ncnn的转换
pnnx合并wav2vec风格的mha
pnnx修复conv+bias合并中bias shape错误问题
pnnx修复instancenorm2d/instancenorm3d的num_featuers错误问题
pnnx转ncnn正确处理squeeze/unsqueeze引起的batch轴变动
pnnx转ncnn正确处理reshape引起的batch轴变动
pnnx修复i64转ncnn失效的问题(@Baiyuetribe)
重构qnx cmake工具链(@zchrissirhcz)
ci更新llvmpipe版本
ci新增自动对比库二进制大小
ci迁移到ubuntu-latest,维持code-format在ubuntu-20.04
ci使用apt中的qemu
ci更新riscv64 thead工具链
ci更新riscv elf工具链
修复apple平台glslang打包,移除glslang-default-resource-limits依赖
python预编译包发布armv7l neon版本,移除ppc64le和s390x预编译包,修复sdist编译
添加缺失的协议文件头(@erquren)
更新readme yolov8链接(@whyb)
更新文档不再要求安装vulkan-sdk
更新文档有关docker中无法使用vulkan的解决办法
更新yolov8检测/分割/姿态估计/分类/旋转目标检测示例代码和模型
新增macbook-air-m3性能数据(@chainsx)
新增orion o6性能数据(@TheSnowfield)

New Contributors

Full Changelog: 2024122...2025042

android ios macos linux windows webassembly watchos tvos visionos 预编译库 20241226 5285895

26 Dec 03:27
5285895
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r27c,xcode 15.2,ubuntu-20.04,ubuntu-22.04,ubuntu-24.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64 + riscv64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64 + riscv64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator arm64 + arm64e + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator,支持 GPU arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库 arm64
ncnn-ios-vulkan.zip ios 静态库,支持 GPU arm64
ncnn-ios-simulator.zip ios simulator 静态库 x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库 x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU x86_64 + arm64
ncnn-watchos.zip watchos 静态库 armv7k + arm64_32
ncnn-watchos-simulator.zip watchos simulator 静态库 x86_64 + arm64
ncnn-tvos.zip tvos 静态库 x86_64 + arm64
ncnn-tvos-vulkan.zip tvos 静态库,支持 GPU x86_64 + arm64
ncnn-tvos-simulator.zip tvos simulator 静态库 x86_64 + arm64
ncnn-tvos-simulator-vulkan.zip tvos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-visionos.zip visionos 静态库 arm64
ncnn-visionos-vulkan.zip visionos 静态库,支持 GPU arm64
ncnn-visionos-simulator.zip visionos simulator 静态库 x86_64 + arm64
ncnn-visionos-simulator-vulkan.zip visionos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

embed 支持int8量化
gemm 支持int8量化
multiheadattention 支持int8量化
新增spectrogram和inverse spectrogram实现
arm rmsnorm neon优化
arm layernorm neon fp32/bf16s/fp16s优化
x86 rmsnorm sse2/avx/avx512优化
x86 layernorm sse2/avx/avx512优化
x86 gemm int8 sse2/xop/avx/avx512/vnni/vnniint8优化
更新riscv vector标准到1.0,重写全部ncnn riscv优化代码,自动探测rvv/zfh/zvfh/xtheadvector并分发
riscv gemm rvv优化支持128bit/256bit vlen
禁用x86倒数优化避免可能的精度损失
改善harmonyos cpu拓扑结构abi兼容性
暂时禁用mesa驱动的vulkan矩阵扩展支持
兼容ndk-21编译asimdfhm目标的错误导致的问题
兼容clang-18编译avx512bf16时编译器崩溃的问题
禁用msvc对windows arm平台exp/tanh的svml优化以解决计算错误
探测avxvnniint8/avxvnniint16/avxneconvert指令集
runtime cpu开启时仅使用ncnn cmake内置的编译参数
删除windows arm32支持(@Shironana817)
android默认启用16kb pagesize编译,android-api升级到21
vkCreateDevice失败时不直接崩溃(@Upliner)
为powerpc架构跳过0.5附近数值的unaryop round测试用例
pnnx更新到torch-2.5
pnnx支持从traced inputs自动设定inputshape
pnnx编译不再输出来自torch头文件的警告
pnnx重排pass level2内的全部顺序,并复用pattern
pnnx不再保存debug中间模型(@LJoson)
pnnx输出python脚本的onnx导出代码更新到export(@whyb)
pnnx合并t5-layernorm为rmsnorm
pnnx不再折叠具有动态shape的tensor
pnnx在输出的python脚本中使用隐含的int转换避免trace时常数化
pnnx转换Tensor.select为ncnn crop+squeeze
pnnx转换onnx constantofshape为torch.zeros/ones
pnnx修正onnx clip在可选min/max缺失时的转换问题
ci更新riscv64工具链
ci添加c908/spacemit-x60
ci webassembly兼容node>20
ci android添加riscv64目标并打包
添加vim3 vulkan跑分数据(@GIBEREZ)

New Contributors

Full Changelog: 2024082...2024122

android ios macos linux windows webassembly 预编译库 20240820 a6d3ef5

20 Aug 08:45
a6d3ef5
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r27,xcode 15.2,ubuntu-20.04,ubuntu-22.04,ubuntu-24.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator arm64 + arm64e + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator,支持 GPU arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库 arm64
ncnn-ios-vulkan.zip ios 静态库,支持 GPU arm64
ncnn-ios-simulator.zip ios simulator 静态库 x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库 x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU x86_64 + arm64
ncnn-watchos.zip watchos 静态库 armv7k + arm64_32
ncnn-watchos-simulator.zip watchos simulator 静态库 x86_64 + arm64
ncnn-tvos.zip tvos 静态库 x86_64 + arm64
ncnn-tvos-vulkan.zip tvos 静态库,支持 GPU x86_64 + arm64
ncnn-tvos-simulator.zip tvos simulator 静态库 x86_64 + arm64
ncnn-tvos-simulator-vulkan.zip tvos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-visionos.zip visionos 静态库 arm64
ncnn-visionos-vulkan.zip visionos 静态库,支持 GPU arm64
ncnn-visionos-simulator.zip visionos simulator 静态库 x86_64 + arm64
ncnn-visionos-simulator-vulkan.zip visionos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

新增RMSNorm层和对应的pnnx转换,单元测试
x86 convolution tiled gemm优化
量化工具支持 rnn/lstm/gru 动态量化
x86 lstm int8 sse2/xop/avx2/avx512/avx512vnni/avxvnni优化
arm rnn/lstm/gru int8 neon/asimdhp/asimddp优化
multiheadattention支持qdim参数与embed_dim不同
multiheadattention支持scale参数
更新pybind11到2.12支持numpy2
添加wasi支持(@quink-black)
添加x86/arm convolution/slice/concat oom单元测试
onnx2ncnn工具添加警告和推荐使用pnnx的信息输出(@lll143653)
修复x86 avx512 vnni指令派发失效的问题
增强x86/arm计算内核在内存不足时的错误返回
仅在windows arm平台使用ruapu指令集探测
windows mingw编译时支持大小核和SMT探测
修复powerpc vsx计算abs可能的错误
修复arm vfpv4条件下可能的fp16s/bf16s同时启用的冲突
修复aarch64架构l2-cache很小时因gemm K分块可能的越界读错误
修复riscv v tanh计算错误(@zhangyang2057)
arm/convolution_3x3_pack1to8_fp16s使用ldr/str替代ld1/st1优化(@quink-black)
修复c_api无参数函数声明(@quink-black)
c_api添加set_vulkan_device接口(@Baiyuetribe)
pyncnn添加从python bytes内存加载模型的接口(@joeyballentine)
为VkAndroidHardwareBufferImageAllocator添加NCNN_PLATFORM_API宏(@Xyzhao1999)
修复mingw64编译时avx崩溃和termux编译错误(@TianZerL)
修复在关闭NCNN_BF16时arm riscv编译错误
修复x86-wsl编译时的无用变量警告(@Tabbleman)
create_gpu_instance()中不进行destroy_gpu_instance()(@Asd-g)
更新ruapu.h(@lazyparser)
修复ndk-r27在cmake阶段的编译错误(@Galasnow)
添加yolov8示例代码(@whyb)
pnnx支持转换dynamo导出的onnx
pnnx默认编译onnx2pnnx支持,支持转换conv/convtranspose/pad/linear/softmax/relu/resize/upsample/avgpool/maxpool/batchnorm/lrn/layernorm/instancenorm/groupnorm/rnn/lstm/gru/prelu/gelu/elu/leakyrelu/relu6/celu/hardshrink/hardsigmoid/hardswish/clip/multiheadattention/reducemin/reducemax/reducemean/reducesum/reduceprod/logsoftmax/logsigmoid/mish/selu/sigmoid/silu/softmin/softplus/softshrink/softsign/tanh/tanhshrink/expand/permute/repeat/reshape/select/slice/cat/ceil/chunk/flatten/floor/maximum/minimum/split/squeeze/stack/transpose/unbind/unsqueeze
pnnx支持转换onnx指定inputshape
pnnx转换onnx遇到动态shape时尝试折叠非动态轴相关的常量
pnnx转换onnx合并简单的shape运算pattern
pnnx清除onnx中无用的cast
pnnx接受bf16的模型转换和输入输出类型
pnnx转换torch.tile/torch.where/torch.logaddexp
pnnx转换无dilation参数的F.maxpool到ncnn
pnnx转换1到2个轴参数的torch.roll到ncnn
pnnx转换有dim参数的torch.max/torch.min时返回tuple并自动删除没有用到的indice输出
pnnx合并onnx sdpa和qdim mha
pnnx识别sdpa的batch轴
pnnx支持torch-2.3和torch-2.4
pnnx不再折叠有就地操作的别名tensor为常量
pnnx转换到的ncnn模型py自动替换long为int
ci添加windows clang
ci添加harmonyos
ci添加mingw(@TianZerL)
ci添加esp32和esp32编译文档(@luxincn)
重构release ci脚本
发布ubuntu 24.04预编译包
发布visionos/visionos-simulator vulkan预编译包
pypi发布python 3.13预编译包
更新pytorch/onnx模型转换文档(@whyb)
添加riscv-gnu-toolchain编译文档(@Tabbleman)
添加harmonyos vulkan编译文档(@cugxchen)
修正vulkan-notes文档的错误(@roachsinai)
更新qcom855plus跑分数据
添加RaspberryPi 5 GPU超频跑分数据(@CharlieYu4994)
添加EPYC7742和V100跑分数据(@sakria9)
添加Snapdragon 888跑分数据(@chainsx)
添加RaspberryPi 5 CPU超频跑分数据(@chainsx)
添加OrangePi 5Plus跑分数据(@inspireMeNow)
添加Snapdragon 765G跑分数据(@inspireMeNow)
添加CVITEK SG2000跑分数据(@inspireMeNow)
添加OrangePi CM4跑分数据(@py1066)
添加Axera AX630C跑分数据(@UOPiceman)
添加Kunpeng 920 7260跑分数据(@violet73)

New Contributors

Full Changelog: 2024041...2024082

android ios macos linux windows webassembly 预编译库 20240410 56775de

10 Apr 11:16
56775de
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r26c,xcode 15.2,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator arm64 + arm64e + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst + watchos + watchos-simulator + tvos + tvos-simulator + visionos + visionos-simulator,支持 GPU arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库 arm64
ncnn-ios-vulkan.zip ios 静态库,支持 GPU arm64
ncnn-ios-simulator.zip ios simulator 静态库 x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库 x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU x86_64 + arm64
ncnn-watchos.zip watchos 静态库 armv7k + arm64_32
ncnn-watchos-simulator.zip watchos simulator 静态库 x86_64 + arm64
ncnn-tvos.zip tvos 静态库 x86_64 + arm64
ncnn-tvos-vulkan.zip tvos 静态库,支持 GPU x86_64 + arm64
ncnn-tvos-simulator.zip tvos simulator 静态库 x86_64 + arm64
ncnn-tvos-simulator-vulkan.zip tvos simulator 静态库,支持 GPU x86_64 + arm64
ncnn-visionos.zip visionos 静态库 arm64
ncnn-visionos-simulator.zip visionos simulator 静态库 x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

解耦合layer cpu和vulkan,不再使用virtual public继承
支持编译动态库时编译单元测试
单层特性掩码支持禁用多线程
extractor set_num_threads和set_vulkan_compute现在是无操作
gpu shader增加uniform类型改善adreno上fp16兼容性
检测vulkan矩阵扩展8x8x16配置,fp16a条件下默认使用fp16累加
更新stb_image rvv/neon优化
x86 mish avx512优化(@wnqn1597)
riscv gemm fp32 rvv优化(@Xinyu302)
加载模型上传权重时不保留无用的临时数据
c-api新增draw rectangle/text/circle/line接口(@Deepdive543443)
修复armv7平台加载fp16模型sigbus错误
修复reduction L2norm denormal产生inf的问题
修复arm平台pixel_resize rounding导致的数值误差
修复softmax arm fp16计算错误
修复risc-v rvv输出fp16没有自动转换的问题
修复destroy_gpu_instance在驱动加载不完整时crash的问题(@shatyuka)
destroy_gpu_instance等待全部设备idle(@whyb)
修复low-level api没有load_param直接create_pipeline可能的崩溃
修复ncnnoptimize在shape推断的崩溃
ncnnoptimize支持更多新算子,修复gemm权重丢失问题
被调试时候禁用signal指令集检测
windows-arm平台使用ruapu cpu指令集检测
arm vfpv4支持时启用自动转换fp16
在arm64架构中总是报告支持neon和vfpv4
simplevk寻找更多已知的vulkan驱动路径
修复旧cpp标准下risc-v rvv编译错误
修复某些老编译器在debug模式下编译错误
修复uwp平台编译
修复test_reduction运行时的警告
修复NCNN_PIXEL_DRAWING禁用时候编译错误(@shatyuka)
支持MSVC使用LLVM openmp运行时的配合编译(@shatyuka)
修复yolov8 python示例返回空发生错误(@dsplvd)
pnnx解耦torchscript加载,清理cxxabi hack,修复whole-archive链接
pnnx加载dynamo onnx,默认不启用编译
pnnx改善函数化,支持更多slice+inplace复合操作
pnnx转换torch.masked_select/torch.slice_scatter
pnnx支持超过4G的模型
pnnx macos编译universal wheel
pnnx添加entrypoint脚本
pnnx支持动态slice下标
pnnx转换softmin logsoftmax dtype参数
pnnx处理index_put传入空indices和标量数值
pnnx转换一些cudnn conv2d变种
pnnx合并完整slices为tensor_split
pnnx合并静态embedding
pnnx不消除会导致shape变化的数学操作
pnnx改善torch-2.1 mha attn_mask探测
pnnx修复无bias tensor的nn.Conv2d转换
pnnx转换torch.stack负数dim
pnnx添加torch.arange单元测试
pnnx修复图匹配失败时可能的越界访问问题
pnnx识别embedding输入的batch轴为0
pnnx python添加控制fp16参数(@MollySophia)
pnnx添加torch-2.2 ci
github ci使用4并行编译
更新cmake ios工具链,添加visionos ci,watchos支持arm64_32架构
添加apple a17和m3 cpu名称
不再编译apple平台32bit支持,不再编译ios arm64e架构,提升最低部署版本到ios-13
统一android python macos ci
不再打包和发布apple bitcode和32bit预编译包,新增visionos预编译包,新增tvos-gpu预编译包,更新openmp到18.1.2
改善a53/a55双发射文档(@luqiang-guo)
添加windows上protobuf>=22.0编译文档(@Galasnow)
更新macos编译文档(@lll143653)
清理无用的代码警告(@hokamilkv)
修正FAQ的拼写错误(@eltociear)
修正拼写错误(@hugo-syn)
修正拼写错误(@afredooo)
修正convolution_x86注释错误(@strongtz)
添加markdown文档代码辅助标志(@hugo-syn)
添加OneCloud跑分数据(@mizu-bai)
添加AWS c5.4xlarge跑分数据(@mizu-bai)
添加Xeon Phi 3120A跑分数据(@mizu-bai)
添加orangepi zero2跑分数据(@wonderfullook)
添加Dimensity 9300 MT6989跑分数据(@MollySophia)
添加PhytiumPi跑分数据(@HalfSweet)
添加remipi跑分数据(@dreamcmi)
添加radxa zero 3w跑分数据(@Qengineering)

New Contributors

Full Changelog: 2024010...2024041

android ios macos linux windows webassembly 预编译库 20240102 1e88fb8

02 Jan 04:06
1e88fb8
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r26b,xcode 13.4.1,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,with and w/o bitcode armv7 + arm64 + arm64e + i386 + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,支持 GPU,with and w/o bitcode arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库,with and w/o bitcode armv7 + arm64 + arm64e
ncnn-ios-vulkan.zip ios 静态库,支持 GPU,with and w/o bitcode arm64 + arm64e
ncnn-ios-simulator.zip ios simulator 静态库,with and w/o bitcode i386 + x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库,with and w/o bitcode x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

内建vulkan驱动加载功能,不依赖vulkan-sdk编译gpu功能,可直接加载显卡驱动文件
msvc编译启用arm neon指令加速,启用arm64 asimdhp编译
实现python pnnx pypi包和python调用接口/文档(@Hideousmon)
arm convolution int8 直接卷积重构支持任意elempack
优化 vulkan global pooling性能
优化resize bilinear性能
压缩字体数据减小二进制体积
deconvolution支持动态权重和对应pnnx转换
新增跑分数据rank card(@Qengineering)
支持big-endian架构平台,powerpc32位
添加woa linux ci
添加msvc禁用exceptions/rtti的编译开关
在macos上使用信号探测avx512指令集支持情况
支持寻找32位显卡驱动文件(@whyb)
启用benchmark编译打印4维shape(@Deepdive543443)
修复riscv-int8 sigmoid激活的测试失败问题(@MollySophia)
修复deconvolution x86 bias非对齐访问的问题
修复prelu x86 sse指令非对齐访问的问题(@aioa)
修复windows上openmp设置线程数为0的警告
修复在支持16bit/8bit的gpu上有关fp16sa shader使用fp16 shared变量的警告
修复nvidia vulkan驱动在程序退出的crash
修复vkimagemat from_android_hardware_buffer缺失的elemsize参数错误
修复simpleocv Mat模板ptr的偏移错误
添加更过的gpu相关python绑定接口(@joeyballentine)
android vulkan包的api版本降低到14/21
pnnx支持转换recompute_scale_factor=True的nn.Upsample
新增nn.Identity测试
修复pnnx路径切分的问题
修复pnnx生成ncnn py空格对齐(@cmdbug)
pnnx生成的py可以直接执行推理
python pnnx返回优化后的torch模型
删除无用的代码(@ningjiang233)
改善cmake toolchain文件(@zchrissirhcz)
新增watchos和tvos ci
修复linux sde ci的运行错误
更新POWER clang版本信息的文档(@JeremyRand)
更新有关vulkan/libomp-dev依赖的文档(@JeremyRand)
更新有关编译python模块CMAKE_TOOLCHAIN_FILE环境变量的文档(@JeremyRand)
修复Rasberry拼写错误(@JeremyRand)
FAQ新增有关pyncnn数据连续性的文档(@lll143653)
更新readme下载页表格
添加Nintendo 3DS编译信息(@Deepdive543443)
添加oncloud amlogic s805跑分数据(@mizu-bai)
添加树莓派5 gpu跑分数据(@FantasyGmm)
添加Jetson TX2跑分数据(@FantasyGmm)
添加8gen2跑分数据(@mahirumahiru)
添加2K2000跑分数据(@RevySR)
更新Jetson Orin Nano/树莓派5跑分数据(@Qengineering)
添加visionfive2跑分数据(@wzyforgit)

New Contributors

Full Changelog: 2023102...2024010

android ios macos linux windows webassembly 预编译库 20231027 3116e02

27 Oct 06:17
3116e02
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r25c,xcode 13.4.1,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,with and w/o bitcode armv7 + arm64 + arm64e + i386 + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,支持 GPU,with and w/o bitcode arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库,with and w/o bitcode armv7 + arm64 + arm64e
ncnn-ios-vulkan.zip ios 静态库,支持 GPU,with and w/o bitcode arm64 + arm64e
ncnn-ios-simulator.zip ios simulator 静态库,with and w/o bitcode i386 + x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库,with and w/o bitcode x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

x86 convolution int8 gemm重构支持任意elempack
x86 convolution int8 winograd重构支持任意elempack
arm convolution int8 gemm重构支持任意elempack
arm convolution int8 winograd重构支持任意elempack
gelu vulkan优化(@FhqTreap)
convolution1d vulkan优化(@FhqTreap)
gridsample x86优化(@Yoh-Z)
riscv gemm fp32优化(@Xinyu302)
新增erf/shrink和onnx转换(@brightening-eyes)
新增diag和pnnx转换(@wnqn1597)
新增celu和pnnx转换(@wnqn1597)
新增simplemath,允许不依赖libm编译使用数学函数(@HonestDeng)
pooling adaptive支持动态的输出尺寸和pnnx转换
elu selu支持4维输入输出
slice支持indices参数
memorydata支持tag参数和fp16存储
x86 selu shufflechannel优化(@wnqn1597)
修复convolution vulkan在固定shape时的结果错误
修复权重tag潜在的溢出(@lrw04)
按层加载模型减少内存占用(@daquexian)
修复老版本gcc编译avx2 gather的错误(@chainsx)
修复老版本gcc编译_mm256_set_m128的错误(@whyb)
修复新版本protobuf编译问题
修复老版本glibc round编译问题
修复c906工具链编译错误
pyncnn启用vulkan支持(@Hideousmon)
pyncnn添加load_param_mem接口(@JeremyRand @theflyingzamboni)
pnnx支持torch-2.1
pnnx消除moduleop的输出unpack
pnnx moduleop将权重shape作为参数写入param,内部权重顺序为使用顺序
pnnx改善reflect replicated pad匹配
pnnx合并conv3d-bn和deconv3d-bn
pnnx转换torch.narrow(@zyt1024)
pnnx转换torch.lgamma(@shudorcl)
pnnx转换torch.positive(@nicochen1118)
pnnx转换torch.cumprod(@Jiang-Weibo)
pnnx转换torch.mv/nn.ReplicationPad3d(@ShuRaymond)
pnnx转换F.pairwise_distance(@Marsyule)
pnnx转换torch.view_as_real/torch.view_as_complex(@Baiyuetribe)
修复pnnx与新版本protobuf编译问题(@HuPengsheet)
修复pnnx改变目录下划线的错误
onnx2ncnn支持celu转换(@brightening-eyes)
自动为pull request添加label
修复ohos工具链编译错误
改进codeformat脚本使用函数(@xiezheng-XD)
添加rk3566 rk3588s跑分数据(@chainsx)
添加Allwinner T527跑分数据(@YuzukiTsuru)
添加树莓派5b跑分数据(@Pillar1989)
添加RTX A3000跑分数据(@chainsx)
添加多款pc跑分数据(@whyb)

New Contributors

Full Changelog: 2023081...2023102

android ios macos linux windows webassembly 预编译库 20230816 39721ee

16 Aug 05:54
39721ee
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r25c,xcode 13.4.1,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,with and w/o bitcode armv7 + arm64 + arm64e + i386 + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,支持 GPU,with and w/o bitcode arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库,with and w/o bitcode armv7 + arm64 + arm64e
ncnn-ios-vulkan.zip ios 静态库,支持 GPU,with and w/o bitcode arm64 + arm64e
ncnn-ios-simulator.zip ios simulator 静态库,with and w/o bitcode i386 + x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库,with and w/o bitcode x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

实现全部的binaryop explicit广播规则类型
x86直接卷积权重变换的avx2/avx512优化
x86 int8直接卷积支持任意elempack和sse2/xop/avx2/avx512/vnni优化
ppc64 power8/power9 vsx工具链支持,编译器检查和intrinsic翻译优化(@JeremyRand)
更新glslang并启用VK_KHR_cooperative_matrix扩展和优化
修复pyncnn自定义layer模型权重加载
c_api新增Mat border/layer_to_index api(@Mek101)
VkCompute::submit_and_wait现在能返回错误值(@Upliner)
修复老版本clang编译时too many microtasks问题
修复clang-cl cpuid函数兼容性(@charlescao460)
修复新版本protobuf c++17编译问题
修复老版本编辑器sleep递归调用错误(@whyb)
编译时检查loongarch lasx扩展支持并自动启用
清理multiheadattention arm优化代码
binaryop支持一维outer axis广播规则,保持旧的兼容行为
benchncnn支持从命令行参数中指定自定义模型和输入(@tpoisonooo)
macos平台静态编译链接需要的系统库(@Baiyuetribe)
更改amd集显上的显存分配策略为仅设备优先,修复在bios设置大显存时分配失败问题
onnx2ncnn遇到不支持transpose类型输出错误信息(@huoshuai-dot)
pnnx支持多算子到多算子的图变换
pnnx新增转换torch.round/trunc/fill/index_put/to/type_as/topk/fmod/cross/t/maximum/minimum
pnnx合并chinese-clip/sam-iamge-encoder attention结构
pnnx合并F.scaled_dot_product_attention
pnnx消除无用的expand/expand_as/type_as
pnnx修正fp16模型在优化时的权重变换错误
pnnx修正负数shape索引越界问题(@Justin62628)
pnnx修复转换后py文件执行时权限错误(@zhenjiaguo)
pnnx转换ncnn global pooling后自动添加reshape
pnnx转换非zero padding模式的卷积到ncnn
pnnx转换2维nn.Linear为ncnn gemm
pnnx转换torch.stack为ncnn concat+reshape
pnnx转换torch.t到ncnn permute(@XiaBing992)
pnnx转换logsigmoid/log_softmax为ncnn sigmoid/softmax+log(@lrw04)
pnnx修复slice_copy输出的类型信息
pnnx修复表达式中int64转换溢出问题
pnnx修复reshape表达式消除后的ghost结点
pnnx合并表达式时折叠shape为1的类似标量的权重
pnnx合并表达式支持max/min
pnnx改善图中有inplace操作时的输出结点连接探测,带来更多的常量折叠
添加ncnn glsl扩展文档以及中文版(@whyb)
修正faq文档错误(@KYShek)
改进cmake寻找vulkan提示用语(@zchrissirhcz)
更新vs2017编译步骤的细节(@brcarry)
新增Intel oneAPI编译步骤(@mizu-bai)
更新loongarch ci工具链,添加loongarch lsx覆盖率
更新python ci版本,新增python-3.12包
更新rpi3b+/rpi4b测试数据
更新huawei kunpeng 920测试数据(@MobtgZhang)
新增3A6000和TH1520 gpu测试数据(@Rabenda)
新增RDK X3 Module测试数据(@LJoson)
修复ios模拟器gpu badge(@732857315)

New Contributors

Full Changelog: 2023051...2023081

android ios macos linux windows webassembly 预编译库 20230517 903ec7c

17 May 08:48
903ec7c
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r25c,xcode 13.4.1,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-apple.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,with and w/o bitcode armv7 + arm64 + arm64e + i386 + x86_64
ncnn-apple-vulkan.zip apple xcframework,ios + ios-simulator + macos + mac-catalyst,支持 GPU,with and w/o bitcode arm64 + arm64e + x86_64
ncnn-ios.zip ios 静态库,with and w/o bitcode armv7 + arm64 + arm64e
ncnn-ios-vulkan.zip ios 静态库,支持 GPU,with and w/o bitcode arm64 + arm64e
ncnn-ios-simulator.zip ios simulator 静态库,with and w/o bitcode i386 + x86_64 + arm64
ncnn-ios-simulator-vulkan.zip ios simulator 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-mac-catalyst.zip mac catalyst 静态库,with and w/o bitcode x86_64 + arm64
ncnn-mac-catalyst-vulkan.zip mac catalyst 静态库,支持 GPU,with and w/o bitcode x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

arm convolution winograd重构支持任意elempack
arm convolution sgemm重构支持任意elempack
arm convolution直接卷积重构支持任意elempack
arm deconvolution/matmul 调用 gemm 完成计算
arm softmax支持任意elempack和bf16/fp16优化
arm multiheadattention fp16sa softmax优化
arm/x86 convolution1d直接卷积重构支持任意elempack和优化
粗糙的vulkan gemm和multiheadattention优化
multiheadattention支持输入attention mask
sigmoid/swish/clip/gelu/mish/tanh支持4d输入
减少double类型的使用(@zhiliu6)
arm a53/a55架构检测和流水线优化
允许注册自定义层替代内置实现
x86 asin/acos/atan/atan2 sse2/avx/avx512优化(@MouriNaruto)
sse_mathfunc迁移floor/ceil(@Yoh-Z)
x86 mathfun迁移abs(@Yoh-Z)
simpleocv新增cv::imdecode内存加载图片(@AlOa)
新增配合vulkan vma使用的三种扩展支持(@whyb)
新增获取vkinstance的接口(@whyb)
新增通用的sleep接口(@whyb)
innerproduct允许2维高度1的输入输出
修复multiheadattention分配内存存在的多线程竞争问题
修复在获取不到cache信息时的除0错误
修复scale avx512计算错误
修复exynos9810非法指令错误
老旧adreno驱动中禁用fp16a以解决计算错误
绕过n卡padding shader编译错误
移除platform.h中无用的aarch64判断(@dreamcmi)
修正modelwriter squeeze层参数id错误(@irexyc)
修复gcc-13编译错误(@hillwoodroc)
修复gcc-5.2 aarch64编译错误
修复aosp编译错误(@caofx0418)
修复n卡上benchmark退出时的crash(@triple-Mu)
修复获取cpu cache信息潜在的fd泄漏
优化lightmode循环条件(@MambaWong)
绕过新版moltenvk的兼容性问题
绕过n卡在multiheadattention softmax结果偶发nan的兼容性问题
调用cpu.h接口时强制初始化全局cpu信息
pnnx支持torch-2.0
pnnx支持complex数据类型
pnnx转换torch.baddbmm/torch.mm/torch.stft家族/torch.std/F.scaled_dot_product_attention
pnnx支持fp16权重的torchscript
pnnx支持非forward的其他函数入口
pnnx当只有一个动态维时候折叠reshape的shape表达式
pnnx识别常数常量和表达式中的折叠
pnnx自动删除maxpool无indices输出项
pnnx总是删除convtransposed output_size参数
pnnx合并gelu表达式
pnnx合并vit/clip/diffusers attention
修正pnnx的RNN/GRU省略输出项的python代码生成
修正pnnx转换ir时潜在的负INT_MAX下溢问题
修正pnnx fprintf类型不匹配(@kernelbin)
修复pnnx windows编译错误(@Yoh-Z)
pyncnn model zoo添加yolov7-tiny(@kennybradley)
pyncnn model zoo添加yolov8s(@triple-Mu)
macos pypi包使用完整版本号
改善wasm ci编译效率
更新ci swiftshader版本
更新cmake ios toolchain,新增ios-simulator arm64和mac catalyst ci
添加qnx toolchain和编译步骤(@zchrissirhcz)
删除ubuntu-18.04的ci
更新3A5000 benchmark数据(@wzyforgit)
新增2K1000LA benchmark数据(@lrzlin)
新增icpc icc benchmark数据(@mizu-bai)
新增Hyper-V Linux Guest benchmark数据(@MouriNaruto)
新增和更新op4lts/op5/VF2/FT2000/3A4000 benchmark数据(@MobtgZhang)
更新centos编译文档(@inisis)
更新windows msvc编译文档(@kernelbin)
faq新增关于cmake版本升级的内容(@inisis)
faq新增关于显卡节能模式的内容(@whyb)
修正citation和benchmark文档中的拼写错误(@zchrissirhcz)
修正pnnx代码和readme中的拼写错误(@jsyzdej @zchrissirhcz)

New Contributors

Full Changelog: 2023022...2023051

android ios macos linux windows webassembly 预编译库 20230223 ff80ac2

23 Feb 04:56
ff80ac2
Compare
Choose a tag to compare

编译版本,默认配置,android-ndk-r25c,xcode 14.0.1,ubuntu-18.04,ubuntu-20.04,ubuntu-22.04,vs2015,vs2017,vs2019,vs2022,emscripten-3.1.28

file content arch
ncnn-full-source.zip 包含全部 submodule 代码的完整源码
ncnn-android.zip android 静态库/动态库 armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-android-vulkan.zip android 静态库/动态库,支持 GPU armeabi-v7a + arm64-v8a + x86 + x86_64
ncnn-ios.zip ios 静态库,with and w/o bitcode armv7 + arm64 + arm64e + i386 + x86_64
ncnn-ios-vulkan.zip ios 静态库,支持 GPU,with and w/o bitcode arm64 + arm64e + x86_64
ncnn-macos.zip macos 静态库 x86_64 + arm64
ncnn-macos-vulkan.zip macos 静态库,支持 GPU x86_64 + arm64
ncnn-ubuntu.zip ubuntu linux 静态库/动态库,支持 GPU,模型转换工具 x86_64
ncnn-windows.zip windows 静态库/动态库,支持 GPU,模型转换工具 x86 + x64 + arm + arm64
ncnn-webassembly.zip webassembly 静态库 wasm32 + simd + threads + simd-threads

扩充binaryop broadcast规则
新增copyto算子,对应于torch inplace slice copy操作
x86 gemm优化,新增 transpose_output 参数
x86 multiheadattention优化
x86 groupnorm优化(@EdVince)
arm gemm优化,包括fp16s/fp16sa
arm gelu优化(@EdVince)
arm multiheadattention优化(@EdVince)
新增获取cpu l2/l3 cache大小接口,通过sysconf/win32-api和linux sysfs
x86 gemm 依据l2 cache分块的优化
x86 convolution/deconvolution/deformableconv2d/matmul 调用 gemm 完成计算
x86 convolution winograd重构支持任意elempack
x86 convolution直接卷积重构支持任意elempack
x86公共的bfloat转换函数
slice/eltwise/concat支持4d输入
c api新增获取output indexes names接口
改善vulkan winograd f43 fp16计算数值稳定性
修复gpu信息bug bliz初始化问题(@weirdseed)
修正arm bfloat2float和float2bfloat命名相反的问题
更新riscv winograd f32系数,修复一些警告
更好的riscv rvv tanh实现
为ncnnoptimize/ncnn2int8添加新加的算子和参数
修复musl libc编译问题
更新stb image和image write,启用arm neon优化
更新emsdk版本到3.1.28,开启SIMPLEOCV(@ncnnnnn)
pnnx新增torch.cumsum转换(@csukuangfj)
pnnx新增torch.atan2/log10转换
pnnx自动替换pow(x,2)为square(x)
修正pnnx windows slice end参数问题(@Yoh-Z)
pnnx自动删除无用的Tensor.clone(@Yoh-Z)
pnnx自动展开模型输入tuple和list类型
pnnx转ncnn时分析binaryop broadcast规则并插入适当的reshape
pnnx折叠常数常量,修复常数转换MemoryData兼容性问题
pnnx合并pixel unshuffle(@Yoh-Z)
去除pnnx readme多余空行(@inisis)
去除pnnx无用的include(@XiangYyang)
修正pyncnn output_indexes接口错误(@wyushun)
修复最新macos vulkan sdk兼容性问题(@w1ndseeker)
删除python代码无用的import(@dianjiaogit)
修复macos ci的xcode版本和vulkan sdk安装问题
更新ci中已废弃的create release步骤
添加CITATION.cff(@tpoisonooo)
更新cpu benchmark数据(@wzyforgit)
修复README编译状态badge(@tpoisonooo)
修复README编译链接(@tuduweb)
修正拼写错误(@hwdef @hiteshhedwig)
添加ncnn-fortran例子(@mizu-bai)
添加sherpa-ncnn实时语音识别例子(@csukuangfj)

New Contributors

Full Changelog: 2022112...2023022