Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add innerproduct #5

Merged
merged 11 commits into from
Feb 10, 2024
Merged

Add innerproduct #5

merged 11 commits into from
Feb 10, 2024

Conversation

Xinyu302
Copy link
Owner

@Xinyu302 Xinyu302 commented Feb 8, 2024

No description provided.

@github-actions github-actions bot added the riscv label Feb 8, 2024
@Xinyu302 Xinyu302 merged commit f0779b8 into rvv-int8 Feb 10, 2024
3 of 4 checks passed
Xinyu302 added a commit that referenced this pull request Feb 23, 2024
* add float2int8

* pass compile

* apply code-format changes

* add float2int8leakyrelu

* add quantize_riscv but has bug

* fix bug

* fix bug of float2int8relu

* apply code-format changes

* Add quantize fp16 (#6)

* finish quantize fp16 to int8

* fix quantize bug

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* Add dequantize (#3)

* add-deq

* apply code-format changes

* ongoing dequantize

* apply code-format changes

* finish dequantize_riscv, but has bug

* fix vset bug

* fix bug

* delete debug info

* apply code-format changes

* refine dequantize

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* Add innerproduct (#5)

* add int innerproduct

* apply code-format changes

* finish innerproduct, but not tested yet

* apply code-format changes

* bug because no fp16 quantize

* change flatten to make it right

* pass test

* delete useless code

* apply code-format changes

* delete useless code

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* copy arm convolutiondepthwise to convolutiondepthwise_riscv.cpp

* change int8 packn to 8 (#7)

* change int8 packn to 8

* test_convert packing right

* modify header (#8)

* finish convolutiondepthwise_3x3_pack8_int8

* apply code-format changes

* delete comment

* Fix pack (#10)

* modify

* debug

* fix quantize and innerproduct

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* pack8 maybe right

* apply code-format changes

* debug

* debug

* modify padding using pack8 (#12)

* apply code-format changes

* use pack8

* apply code-format changes

* pack8 right

* add basic conv

* apply code-format changes

* finish requantize but has bug (#13)

* finish requantize but has bug

* fix bug

* delete comment

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* now can use requantize

* delete comment

* add arm base, now to rewrite it to riscv-v extension

* apply code-format changes

* try to finish

* apply code-format changes

* try to add pack8

* try to handle vpadalq_s16

* apply code-format changes

* finish kernel. pass test

* use new kernel

* fix kernel bug

* pass test

* apply code-format changes

* fix net.cpp layer pack

* fix segfault bug

* add fp16 dequantize_riscv.cpp

* use same elesize

* remove comment

* delete comment

* apply code-format changes

* dequantize fp16sa

* apply code-format changes

* WIP: buggy int8 packn

* WIP: maybe fixed

* apply code-format changes

* fix depthwise conv bug

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>
Co-authored-by: fty1777 <fty1777@users.noreply.github.com>
Xinyu302 added a commit that referenced this pull request Mar 3, 2024
* test passed

* apply code-format changes

* conv

* conv new

* conv newnew

* conv newnewnew

* conv 3cout

* conv 3x3s2

* conv wino dot

* maxpool 2x2s2 special case

* pool 3x3s2

* undef C906 in conv, asm optimize for transpose

* apply code-format changes

* fix bug for vfredusum

* Add shufflechannel (#16)

* add basic shufflechannel

* finish but bug

* fix bug

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* copy slice from arm

* delte out_elempack=4

* apply code-format changes

* Add ConvolutionDepthwise 3x3 packn asm (#17)

* convd 3x3 packn asm

* apply code-format changes

---------

Co-authored-by: fty1777 <fty1777@users.noreply.github.com>

* Add int8 (#18)

* add float2int8

* pass compile

* apply code-format changes

* add float2int8leakyrelu

* add quantize_riscv but has bug

* fix bug

* fix bug of float2int8relu

* apply code-format changes

* Add quantize fp16 (#6)

* finish quantize fp16 to int8

* fix quantize bug

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* Add dequantize (#3)

* add-deq

* apply code-format changes

* ongoing dequantize

* apply code-format changes

* finish dequantize_riscv, but has bug

* fix vset bug

* fix bug

* delete debug info

* apply code-format changes

* refine dequantize

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* Add innerproduct (#5)

* add int innerproduct

* apply code-format changes

* finish innerproduct, but not tested yet

* apply code-format changes

* bug because no fp16 quantize

* change flatten to make it right

* pass test

* delete useless code

* apply code-format changes

* delete useless code

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* copy arm convolutiondepthwise to convolutiondepthwise_riscv.cpp

* change int8 packn to 8 (#7)

* change int8 packn to 8

* test_convert packing right

* modify header (#8)

* finish convolutiondepthwise_3x3_pack8_int8

* apply code-format changes

* delete comment

* Fix pack (#10)

* modify

* debug

* fix quantize and innerproduct

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* pack8 maybe right

* apply code-format changes

* debug

* debug

* modify padding using pack8 (#12)

* apply code-format changes

* use pack8

* apply code-format changes

* pack8 right

* add basic conv

* apply code-format changes

* finish requantize but has bug (#13)

* finish requantize but has bug

* fix bug

* delete comment

* apply code-format changes

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* now can use requantize

* delete comment

* add arm base, now to rewrite it to riscv-v extension

* apply code-format changes

* try to finish

* apply code-format changes

* try to add pack8

* try to handle vpadalq_s16

* apply code-format changes

* finish kernel. pass test

* use new kernel

* fix kernel bug

* pass test

* apply code-format changes

* fix net.cpp layer pack

* fix segfault bug

* add fp16 dequantize_riscv.cpp

* use same elesize

* remove comment

* delete comment

* apply code-format changes

* dequantize fp16sa

* apply code-format changes

* WIP: buggy int8 packn

* WIP: maybe fixed

* apply code-format changes

* fix depthwise conv bug

---------

Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>
Co-authored-by: fty1777 <fty1777@users.noreply.github.com>

* reorder inst (#19)

* delete useless code

* apply code-format changes

* Add convd 3x3 pack1 riscv (#20)

* reorder inst

* convd 3x3 pack1

* apply code-format changes

---------

Co-authored-by: fty1777 <fty1777@users.noreply.github.com>

* fix stupid and useless malloc

* bugfix convolution packn riscv fp16

* try to make sgemm int8 faster

* delete print

* delete print

* apply code-format changes

* Conv winograd int8 (#23)

* WIP: conv wino int8

* change f16 to i16

* top_blob_tm create 4u * packn

* WIP: conv 3x3 winograd transform input(1/2)/output(0/2)/kernel(2/2done)

* finish winograd23 int8 transform

* WIP: conv 3x3 winograd transform input(1/2)/output(1/2)/kernel(2/2done)

* apply code-format changes

* fix bug in convolution_winograd_dot_packn_int8.h

* can compile, not test yet

* use winograd transform kernel

* winograd23 result divide 2, now can pass test

* apply code-format changes

* winograd23 riscv int8 opt

* conv winograd43 riscv int8

---------

Co-authored-by: fty1777 <fty1777@live.com>
Co-authored-by: fty1777 <fty1777@users.noreply.github.com>
Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>

* Conv 3x3 pack1ton int8 try (#22)

* conv 3x3 pack1ton

* apply code-format changes

---------

Co-authored-by: fty1777 <fty1777@live.com>
Co-authored-by: fty1777 <fty1777@users.noreply.github.com>

* apply code-format changes

* Disable winograd for specific models in benchncnn

* apply code-format changes

* modify benchncnn.cpp to control use of winograd

* delete benchmark/benchncnn_nowino.cpp

---------

Co-authored-by: fty1777 <fty1777@live.com>
Co-authored-by: fty1777 <fty1777@users.noreply.github.com>
Co-authored-by: Xinyu302 <Xinyu302@users.noreply.github.com>
Co-authored-by: Tianyu Feng <45195157+fty1777@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
1 participant