31 Commits

Author SHA1 Message Date
Layla b9af93c74b Add percentile PTQ method in ncnn2table (#6854) 2026-10-09 10:33:34 +08:00
nihui f74639deeb gemm block quantization infrastructure for llm decoder style (#6814)
* another mha oob read
2026-07-13 10:13:39 +08:00
Layla 3724d10fc8 tools:Move Embed/MHA/RNN/LSTM/GRU weight scale generation to ncnn2table (#6688)
Co-authored-by: nihui <nihuini@tencent.com>
2026-05-18 19:38:07 +08:00
Evgeny Proydakov 4699b26933 Using snprintf instead of sprintf for a tools (#6554)
Signed-off-by: Evgeny Proydakov <e.proydakov@gmail.com>
2026-02-26 10:29:28 +08:00
nihui 641a3e5be8 ncnn sdpa layer (#6397)
* fuse gqa
2025-11-11 11:14:04 +08:00
nihui 171b9d1bba use spdx license header, copyright Tencent (#6152) 2025-07-08 11:01:29 +08:00
nihui 9afeb17cd4 ncnn2int8 use fp16 weight type by default (#5907) 2025-02-17 17:26:25 +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 08b7d99a75 rnn/lstm/gru dynamic quantization (#5435) 2024-05-08 19:25:51 +08:00
teng e24a2e6c40 [fix] fix typo (#3377) 2021-11-23 21:44:36 +08:00
nihuini 1ad37fae1e generate random weight when null bin passed 2021-05-24 15:54:12 +08:00
nihuini 56d74580a0 fix uninitialized input and weight 2021-04-15 17:45:12 +08:00
nihuini 2b1f8bea25 fix float locale issue in ncnn2mem, fix long line parsing in ncnn2int8 2021-04-14 18:59:28 +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
Guoxia Wang f3c48cd063 Fix bug of adaptive pool in int8 quantization model (#2637) 2021-01-28 12:48:31 +08:00
Zhuo Zhang 30a4482506 fix typo in comment in ncnn2int8.cpp (#2627) 2021-01-26 21:48:01 +08:00
nihui 54c0a13b9f build shared library (#2525)
* build shared lib and enable lto

* reserved for layer and option

* allocator pimpl

* datareader pimpl

* paramdict pimpl, disable copy assign for allocator and datareader

* modelbin pimpl

* net extractor pimpl

* gpu pimple

* disable copy assign vulkandevice, code format

* command pimpl, dummy image readonly

* pipeline pipelinecache pimpl, export platform class

* code format, export simple family

* update ci

* disable lto on android armv7, merge webassembly ci

* link libgcc, fix macos dylib version

* pipeline pimpl, gpu info pimpl

* destroy gpu info after vulkan device

* ignore msvc stl class warning

* fix ncnn_paramdict_get_float return type

* fix vktransfer upload fp16 without flatten, add command test
2021-01-01 22:55:10 +08:00
nihui 3ef995ed1e format code style and setup restyled.io (#1840) 2020-06-13 22:17:51 +08:00
JackieWu ce2251db05 Improve ROIAlign (accelerate ROIAlign, support sampling ratio and aligned ROIAlign) (#1820)
* update roialign

* update tool for roialign

* fix ceil for roialign

* fix ios build

* fix

* fix

* make it compatibile with the old version

* fix ios build

* trigger CI

* fix test

* order

* build

* remove code

* merge roialign

* accelerate ROIAlign

* update note

* rename func

* roialign version

* trigger CI

* fix roialign

* use ref for pre-calc in roialign

* retrigger CI

* pre-alloc
2020-06-08 21:40:24 +08:00
nihui 8a84077429 ncnnoptimize lstm 2020-03-15 11:56:23 +08:00
nihui dba992c15c ncnnoptimize add pixelshuffle, fix #1608 2020-03-12 20:54:50 +08:00
nihui 05ab6813f5 c++03 compiler happy 2020-01-23 14:36:47 +08:00
kalcohol 6916f45237 fix quantize tools cross platform issues (#1505)
* 1. for cross platform, use cv::CommandLineParser instead of getopt.h
2. use cv::glob to search folder instead of dirent.h
3. fix some other warnings of function from cstdlib
4. add some const and some auto

* 1. fix some other warnings of function from cstdlib
2. add some const and some auto
3. i forgot...

* switch quantize tools default on

* check OpenCV first, if not found, disable quantize tools

* add _CRT_SECURE_NO_DEPRECATE for msvc and remove *_s functions

* add _CRT_SECURE_NO_DEPRECATE for msvc and remove *_s functions

* keep the one line style block

* folding bracket

* dynamic_cast -> static_cast
2020-01-22 16:31:44 +08:00
Guoxia Wang 5c08ce7db9 fix Reduction Op attr bug (#1363)
* fix onnx2ncnn MemoryData dims problem #1330

* fix ncnn2int8 bug (see #1336)

* fix bug that MemoryData as multi operations input

* fix ncnn2table find_blob_index_by_name data failed bug, see #1338

* fix ncnn2table find_blob_index_by_name data failed bug, see #1338, fix change requested

* fix Reduction operation attribution bug

* fix #1363 request changes
2019-11-08 14:09:59 +08:00
Guoxia Wang 31c6cefc44 fix ncnn2int8 bug, see issue #1336 (#1341)
* fix onnx2ncnn MemoryData dims problem #1330

* fix ncnn2int8 bug (see #1336)
2019-10-29 15:25:21 +08:00
daichuanliang 6176ada9f0 update ncnn2int8.cpp (#1315)
Fix compile issue with ncnn2int8
2019-10-22 18:47:30 +08:00
MambaWong f5004f954b Update ncnn2int8.cpp (#1200)
asymmetric padding parameter for convolution and deconvolution family
2019-08-22 11:37:32 +08:00
BUG1989 f79fa87dca Add the readme file of quantization tools (#1198) 2019-08-20 20:46:04 +08:00
BUG1989 bcfe9f453f initial the ncnn post training quantization tools (#1067)
* initial the ncnn post training quantization tools

* clear some comments of tools

* fix the Travis ci compiler error
2019-06-26 21:33:02 +08:00