nihui
706c4d1964
support 4d mat in more operators ( #6737 )
...
Add 4d Mat handling across generic and optimized backends, extend operator tests, and document supported input and output Mat dimensions.
2026-05-22 15:31:01 +08:00
nihui
8c18666821
feat(vulkan): persist pipeline cache ( #6702 )
...
Add single-file Vulkan pipeline cache save/load support with strict device, driver, shader, and payload validation. Cache compiled SPIR-V per shader hash alongside the driver pipeline cache blob, add focused cache tests, and document the current Vulkan pipeline cache architecture and usage.
Limit Vulkan layer test cache growth with a shared test-only pipeline cache window so repeated test_layer() calls can still exercise cache reuse.
Co-authored-by: futz12 <56149058+futz12@users.noreply.github.com >
Co-authored-by: CLV-Iclucia <89170890+CLV-Iclucia@users.noreply.github.com >
2026-05-09 09:37:06 +08:00
nihui
526e5e65ef
unroll 4x4 for gemm and sdpa vulkan, vectorize a and b loading, avoid bank conflict ( #6524 )
...
* unroll 4x4 for vulkan gemm, vectorize loading a and b
* unroll 4x4 for vulkan sdpa, vectorize loading a and b, avoid bank conflict
* Update glsl-extension.md
* Update glsl-extension.zh.md
* gemm vulkan subgroup optimization
* apply code-format changes
* enable it
---------
Co-authored-by: nihui <171016+nihui@users.noreply.github.com >
2026-01-28 13:55:23 +08:00
nihui
fe7c0cd2ec
dynamic vulkan loading on apple platforms, honor VK_DRIVER_FILES env ( #6499 )
2026-01-11 19:54:54 +08:00
Sophon
41187d42b0
simplevk: add qcvkarm64xum.dll from qualcomm windows driver ( #6502 )
2026-01-11 17:36:28 +08:00
nihui
6499fc0348
vulkan bf16 infrastructure ( #6469 )
...
* skip gpu bf16 winograd
* update doc
2026-01-04 19:34:50 +08:00
nihui
559a8e8cb0
rotaryembed layer ( #6407 )
...
* add deepseek_v3 attention test
* fuse non interleaved rotary embed
* fuse t5 layernorm without gamma
* test qwen2 attention
* sdpa pattern ++
2025-11-19 17:28:08 +08:00
nihui
11fb99795b
sdpa kvcache ( #6405 )
2025-11-18 11:05:27 +08:00
nihui
641a3e5be8
ncnn sdpa layer ( #6397 )
...
* fuse gqa
2025-11-11 11:14:04 +08:00
nihui
63a7a8a590
optional layer support any packing ( #6392 )
...
* split gemm tests, enable gemm vulkan any packing
2025-11-07 14:23:53 +08:00
nihui
3ab4b58d1d
optional layer support vulkan packing ( #6389 )
...
* pyncnn expose layer support vulkan packing
* doc layer support behavior
2025-11-05 16:27:23 +08:00
nihui
adee6a0a53
multiheadattention kvcache ( #6333 )
...
* skip input layer forward
* unified kvcache layout
* mha kvcache test
2025-10-15 14:19:57 +08:00
nihui
a6eda68f23
disable onnx2ncnn build ( #6324 )
...
Migrate most of onnx2ncnn functions to pnnx
2025-09-23 19:06:07 +08:00
nihui
b5bc05e2e8
drop vulkan shader pack8 ( #6270 )
2025-08-22 11:05:59 +08:00
nihui
9b91fe5153
implement flip layer and pnnx torch.flip conversion ( #6233 )
...
Co-authored-by: 佰阅 <43716063+Baiyuetribe@users.noreply.github.com >
2025-08-06 14:49:16 +08:00
Copilot
4644540ea4
Add Windows XP support merging PRs #6176 and #6177 ( #6204 )
...
Co-authored-by: Sugar-Baby <87747602+Sugar-Baby@users.noreply.github.com >
Co-authored-by: AtomAlpaca <66774326+AtomAlpaca@users.noreply.github.com >
2025-07-24 15:45:02 +08:00
GIBEREZ
44982d0d23
About the update to the GLSL documentation after the image functions are deprecated ( #6173 )
2025-07-12 14:22:30 +08:00
chri321
4c72f52954
docs: update Chinese glsl-extension documentation ( #6162 )
...
- synchronize the latest English content to the Chinese documentation
- correct spelling errors in the English version of glsl-extention
- Fix spelling 'enable_validation_layer' in src/gpu.cpp
2025-07-10 14:21:34 +08:00
nihui
bd0b111775
vulkan tight fp16p pack1 ( #6127 )
2025-06-16 23:09:35 +08:00
nihui
80da741307
glsl define ncnn_glsl_version macro ( #6003 )
2025-04-18 18:49:33 +08:00
nihui
ef0b0e631c
interp output size expression ( #5994 )
2025-04-17 14:24:57 +08:00
nihui
39c055d7f2
crop axes starts ends expression ( #5976 )
...
* skip dynamic tensor index
* handle clone oom
2025-04-14 19:43:50 +08:00
nihui
84970eed4d
vulkan validation layer enables NCNN_LOGE in shader source ( #5963 )
...
* NCNN_LOGE in glsl
* Update glsl-extension.md
2025-03-31 16:17:16 +08:00
nihui
6396a732ef
reshape shape expression, drop reshape permute, test reshape oom ( #5918 )
2025-03-10 15:31:34 +08:00
nihui
1e3fcb9dda
paramdict value string type, natural array representation ( #5915 )
2025-02-20 19:04:16 +08:00
nihui
0734b657d9
spectrogram and inverse spectrogram ( #5779 )
...
* only supports hann, hamming and all-one window
* inverse spectrogram does not support length parameter
* spectrogram always returns torch.view_as_real(out) as ncnn does not support complex typed mat yet
* inverse spectrogram always accepts torch.view_as_complex(in) as ncnn does not support complex typed mat yet
2024-11-22 16:14:54 +08:00
nihui
66b54cbea2
multiheadattention int8 quantization ( #5733 )
...
* x86 vulkan fallback
* comment about bf16s
2024-10-15 16:38:00 +08:00
nihui
1c7af00499
gemm int8 quantization ( #5706 )
...
* quantize gemm
* write gemm quantize scales
* update doc
* less openmp args
* x86 riscv fallback
* skip gemm vulkan int8
* fix noint8 test, fix arm bf16 test
* enable vfpv4 on neon build only
* fix gemm vulkan without C
* fp16 pack8 output
* enable elempack=8 only for asimdhp+
* tiled gemm int8 test
* opt arm64 tiles, fix asimdhp dispatch
2024-10-12 19:02:55 +08:00
nihui
5df5413c81
embed int8 quantization and add embed test ( #5667 )
2024-09-02 18:48:01 +08:00
nihui
fdf0df3079
RMSNorm ( #5630 )
2024-08-15 16:52:06 +08:00
nihui
4c3debae2d
multiheadattention scale param ( #5526 )
...
* update swiftshader
* skip vs2017 swiftshader
2024-06-23 23:51:02 +08:00
nihui
db035d602d
update ncnnoptimize layers, lightmode=false keeps original weight ( #5414 )
2024-04-09 23:53:54 +08:00
luqiang-guo
8ddc85f4dd
fix doc dual issue ( #5342 )
2024-02-22 19:13:31 +08:00
hugo-syn
f35eb4b3b8
chore: Fix multiple typos ( #5301 )
...
Signed-off-by: hugo-syn <hugo.vincent@synacktiv.com >
2024-01-20 21:54:27 +08:00
nihui
5329d32e74
check vulkan fp16 uniform support and implement lfp conversion without fp16u ( #5287 )
2024-01-17 15:53:34 +08:00
nihui
c222208cc9
feat mask for disable threading, make some extractor setter no-op, update doc ( #5270 )
2024-01-08 17:42:08 +08:00
張小凡
2ecaf37a3e
Fix find GPU driver dll path in windows ( #5141 )
2023-11-10 19:07:24 +08:00
nihui
b4f26237cb
in-house vulkan loader ( #5130 )
...
* vulkan-driver-loader.md
* static vulkan on apple
2023-11-09 16:58:23 +08:00
nihui
4494aadd74
deconvolution dynamic weight ( #5119 )
2023-10-31 17:37:24 +08:00
nihui
14e14a9ae8
slice with indices ( #5103 )
2023-10-25 17:12:03 +08:00
Yoh
3f437d3f3d
Grid sample op ( #4373 )
...
* pnnx support grid_sample op
* complete the permute and gridsample operator fusion
* spilt calculation into two stages and support permute fusion
2023-10-20 19:09:59 +08:00
Amir Ramezani
7e5fa3ade3
shrink operator ( #5022 )
2023-09-20 14:08:31 +08:00
Beq Jal
bcfec1da33
Celu layer and export to ncnn ( #5019 )
2023-09-12 10:28:22 +08:00
Beq Jal
c851231832
add diag layer and its converter ( #4935 )
2023-09-08 22:01:37 +08:00
nihui
4abadd2ffb
binaryop implicit broadcast B with 1 dimension rank for outer axis ( #4930 )
2023-08-10 21:29:49 +08:00
張小凡
1e0d70af8c
Add translated document: glsl-extension.zh.md ( #4818 )
2023-07-02 11:47:44 +08:00
nihui
43aba6badb
Update glsl-extension.md
2023-06-26 11:48:14 +08:00
nihui
172b748c74
add ncnn glsl extension doc ( #4817 )
2023-06-26 11:13:41 +08:00
nihui
9022b7162a
implement all explicit binaryop broadcast types ( #4809 )
...
* simplify binaryop
* less gpu test
* update binaryop broadcast doc
* do not test atan2 zero
2023-06-19 19:32:32 +08:00
nihui
c28c8c04a1
multiheadattention attn mask ( #4668 )
2023-04-28 12:28:38 +08:00