nihui
41f031e045
reduce redundant tests that do not contribute to coverage ( #7042 )
...
* adjust tests
* opt shader coverage op
* update gpu_coverage.cpp atomicor coalesce
2026-10-05 08:57:20 +08:00
nihui
9f9d4ec815
reduce gpu test cases ( #7017 )
2026-10-01 23:33:05 +08:00
nihui
5ea98309e3
layer param hardening ( #7003 )
...
* harden layer parameter validation
Original patches and author identities:
https://github.com/Tencent/ncnn/pull/6912 (beilzx)
https://github.com/Tencent/ncnn/pull/6919 (FluxMind-O)
https://github.com/Tencent/ncnn/pull/6928 (lxcxjxhx)
https://github.com/Tencent/ncnn/pull/6948 (ktz03)
https://github.com/Tencent/ncnn/pull/6950 (ktz03)
https://github.com/Tencent/ncnn/pull/6971 (LI)
https://github.com/Tencent/ncnn/pull/6974 (LI)
https://github.com/Tencent/ncnn/pull/6977 (LI)
Co-authored-by: beilzx <2069360659@qq.com >
Co-authored-by: FluxMind-O <3283918317@qq.com >
Co-authored-by: lxcxjxhx <lxcxjxhx@users.noreply.github.com >
Co-authored-by: ktz03 <2484593937@qq.com >
Co-authored-by: LI <2484593937@qq.com >
2026-09-15 19:18:46 +08:00
nihui
6499fc0348
vulkan bf16 infrastructure ( #6469 )
...
* skip gpu bf16 winograd
* update doc
2026-01-04 19:34:50 +08:00
nihui
b5bc05e2e8
drop vulkan shader pack8 ( #6270 )
2025-08-22 11:05:59 +08:00
nihui
171b9d1bba
use spdx license header, copyright Tencent ( #6152 )
2025-07-08 11:01:29 +08:00
nihui
24a3b99f1f
drop layer support_image_storage and option use_image_storage ( #6126 )
...
* fix pyncnn build
2025-06-16 11:23:41 +08:00
nihui
556b79ce4d
create layer decoupled ( #5258 )
...
* create layer decoupled
* no more virtual public
* allow build test with shared library
* decouple cpu vulkan
* drop old scripts
2024-01-05 14:08:15 +08:00
nihui
55709708e9
x86 optimization for convolution int8 packed unified elempack ( #4861 )
2023-07-22 22:01:37 +08:00
nihui
85991e2e0e
test custom option, update ci ( #4609 )
...
* early return for cpu test
* make nvidia driver happy
* fix gemm x86 threading
2023-04-10 15:03:57 +08:00
nihui
dfbcd3e69b
improve vulkan winograd f43 fp16 numerical stability ( #4492 )
2023-01-30 23:11:57 +08:00
nihui
057b5bb515
split tests ( #4354 )
2022-11-17 15:28:34 +08:00
nihui
76849cede4
armv8.4 i8mm optimization for convolution gemm int8 ( #4034 )
2022-07-17 21:29:13 +08:00
nihui
20a14bf5ae
arm convolution winograd dot function, adjust arm convolution winograd strategy ( #3915 )
2022-06-16 16:37:04 +08:00
nihui
ca0ba4b25f
fine grained winograd options, adjust x86 convolution winograd strategy ( #3908 )
...
* fine grained winograd options
* x86 optimization for convolution winograd f23 pack4/pack8/pack16
* fix avx512 and t4 ci
* fix fast direct conv path
* winograd63 is actually slower than winograd43 on very large channel
2022-06-14 19:28:38 +08:00
nihui
131f3d1323
x86 avx512 optimization for convolution winograd pack16to1 and deconvolution family, increase simpleomp argv count ( #3694 )
...
* convolution winograd pack16to1
* x86 deconvolution and deconvolutiondepthwise
* simpleomp allow 32 arguments
* drop shadow variable workaround
* less winograd test error
2022-04-12 15:11:56 +08:00
nihui
dadc640c66
x86 avx512 optimization ( #3581 )
...
* unified relu avx512
* unifed clip avx512
* unaryop avx512
* sigmoid avx512
* binaryop avx512
* padding convolution avx512
* convolutiondepthwise avx512
* innerproduct avx512
* reshape avx512
* slice avx512
* hardsigmoid hardswish avx512
* swish avx512
* pooling avx512
* crop avx512
* convolution sgemm pack16
* convolution 3x3 winograd pack16
* interp avx512
* convolution sgemm pack1to16
* convolution sgemm pack16to8
* convolution sgemm pack8to16
* convolution sgemm pack16to4
* fix vulkan permute pack8
* fix vulkan convolution gemm pack8to1
2022-04-09 17:23:27 +08:00
nihui
002c07d4ec
mix vulkan winograd f23 and f43 ( #3639 )
...
* mix vulkan winograd f23 and f43
* larget epsilon for winograd optimization test
2022-03-19 23:31:46 +08:00
nihui
6941ec8fc9
arm neon optimization for general packed convolution ( #3426 )
2021-12-22 12:18:17 +08:00
nihui
999e640d43
dynamic convolution weight ( #3408 )
2021-12-10 22:38:22 +08:00
nihui
f10cc6dd93
initial data structure changes for 3dcnn, conv3d, pooling3d ( #3378 )
...
Co-authored-by: ElvisYu <elvisyuovo@gmail.com >
Co-authored-by: 余浩文 <m18107220188@163.com >
Co-authored-by: Zr2223 <67497651+Zr2223@users.noreply.github.com >
2021-12-02 16:50:55 +08:00
zhiliu6
814f89ef1a
Fuse HardSwish activation into Convolution and InnerProduct ( #3233 )
...
* add general fused activation
* add NCNN_FORCE_INLINE option
2021-10-11 15:55:43 +08:00
nihuini
d6b2ea5aac
arm neon optimization for convolution 3x3 on small channels
2021-04-21 16:33:16 +08:00
nihui
7e1aaa5828
cmake option NCNN_INT8 ( #2839 )
2021-04-14 12:49:35 +08:00
nihuini
41a4bea954
unroll size 8 for conv3x3s1 pack8to1 int8 arm64
2021-04-07 19:30:03 +08:00
nihui
e9cc637573
arm neon optimization for int8 packing kernels ( #2809 )
2021-04-07 14:06:29 +08:00
nihui
1ea8bfbd2e
x86 avx2 conv3x3s1 pack8 direct optimization, fix #2789
2021-03-28 11:30:51 +08:00
nihui
a48bf43ef7
test conv/fc int8 with activation
2021-03-27 20:06:18 +08:00
nihui
5fe75f19ef
architecture changes for int8 packing ( #2771 )
...
* quantize and dequantize tests
* unify activation and usability function
* drop NCNN_REQUANT cmake option, test dequantize requantize pack8, fix webassembly build
* benchmark use requantize int8 model
2021-03-27 18:49:13 +08:00
nihui
3c92a1184b
arm neon optimization for general convolution im2col sgemm ( #2668 )
...
* arm neon optimization for conv3x3s1 winograd42
* better condition
* Update test_convolution.cpp
* Update test_convolution.cpp
* more proper conditions
* arm neon optimization for general im2col sgemm pack4
* add sgemm
* wip
* wip
* fix armv7 build
* more conditions blah blah
* code format
* fix convolution
* move packed convolution to seperated header source
* unify weight data bf16
* proper conditions
* conv3x3s2 sgemm pack4 test
2021-02-21 22:19:18 +08:00
nihui
ab56083ca5
arm neon optimization for conv3x3s1 winograd42 ( #2664 )
2021-02-06 22:12:23 +08:00
nihuini
f437bcdd4c
enable fp16s and int8s on newer adreno/mali, actually enable int8 tests
2021-01-28 16:31:29 +08:00
tpoisonooo
baf49574c4
innerproduct aarch64 use gemm ( #2521 )
...
* perf(innerproduct-arm): add aarch64 gemm
* fix(innerproduct): fix compilation errror
* fix(armv7-innerproduct): fix armv7 compilation error
* fix(innerproduct): fix gemm param
* fix(int8): update mock scales and fix runtime error
* fix(compilation): fix compilation error
2021-01-05 23:29:14 +08:00
nihuini
440db2c8fc
conv1x1 pack4 arm fp16sa
2020-08-20 11:33:53 +08:00
nihuini
d17c26e925
conv1x1s1 pack4to8 pack8to4 arm fp16sa
2020-08-19 17:25:32 +08:00
nihui
db5f05c6f0
conv1x1s1 conv3x3s1 winograd pack8to1 arm fp16sa
2020-08-13 19:03:27 +08:00
nihui
11cffce114
armv8.2 infrastructure ( #1856 )
...
* runtime cpu dispatch
* force thread one
* disable openmp for coverage
* simplify test layer
* print NCNN_TARGET_ARCH
* less ci build variants
* weight fp16 storage option
* test convdw int8
* apple a12 a13
* ncnn_add_layer ncnn_add_shader cmake macro
2020-07-19 19:29:52 +08:00
nihui
3ff40b0679
Ci rv32imc ( #1940 )
2020-07-15 20:25:44 +08:00
nihuini
0d6cc01d55
innerproduct handle mish activation, fix naive C testing, fix #1930
2020-07-10 15:48:22 +08:00
Tijmen Verhulsdonck
3325cf94f8
Added AVX swish/lrn/batchnorm ( #1897 )
...
* added avx versions of commonly used layers
* Restyled by clang-format
* Restyled by astyle
* Restyled by clang-format
* Restyled by astyle
* Unroll loops and increase test coverage
* Restyled/pull 1897 (#13 )
* Restyle
Co-authored-by: Restyled.io <commits@restyled.io >
* cleanup variable declaration
* fix ctest
* Restyled/pull 1897 (#14 )
Restyle
Co-authored-by: Restyled.io <commits@restyled.io >
* Fix ctest for convolutions without AVX.
Co-authored-by: Restyled.io <commits@restyled.io >
2020-07-01 21:41:22 +08:00
Tijmen Verhulsdonck
26999fab19
Fix AVX wino 3x3 and improve convolution test converage ( #1891 )
...
* Fix winograd 3x3 avx and extend test converage
* fix ctest on non-avx path
* Restyled by clang-format
* Restyled by astyle
* Restyled by clang-format
* Restyled by astyle
* remove unused broadcasts
* Comment with #if 0
Co-authored-by: Restyled.io <commits@restyled.io >
2020-06-30 12:28:30 +08:00
nihui
3ef995ed1e
format code style and setup restyled.io ( #1840 )
2020-06-13 22:17:51 +08:00
nihui
15a4b2c878
test pad same mode
2020-05-25 21:38:56 +08:00
zhiliu6
3bfabf1d6a
Add fused convolution and mish layer support. ( #1761 )
2020-05-17 13:14:09 +08:00
nihuini
b2d9325c0d
test activation fusion
2020-04-23 14:52:22 +08:00
nihuini
956ab49d02
fix conv1x1s1 pack4to1 bf16s
2020-04-13 12:39:15 +08:00
nihuini
36f6942fa0
testing time is too long ...
2020-04-13 11:24:31 +08:00
nihui
979dd5fd11
test does not need to provide data type options
2020-04-12 19:28:04 +08:00
nihui
839c4c4e34
smaller test size
2020-03-01 20:19:11 +08:00
nihui
0f7e7bca02
shader shape specialization constant and basic local group size partition ( #1523 )
...
* use Mat class for Shape description
* shape specialization constant in compute shader
* wip
* wip
* test forward_inplace, add binaryop unaryop sigmoid test
* fix arm unaryop test
* fix arm binaryop test
* make shape hint optional, cast int8 to fp32, add cast test
* wip
* follow the good and old local size setting for conv1x1
* the optimal local size rewrite
* fix build on msvc
* add permute shader for all packing layout, add permute test
* concat and slice patial shape constant, slice test
* fix slice test
* interp test
* add lrn test, test packing layout implicitly
* add eltwise test
* add normalize test
* add instancenorm test
* reorg shape constant
* simple local group size partition
* add shape constant param
2020-02-17 15:45:29 +08:00