Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions source/backend/cpu/riscv/rvv/MNNAvgPoolInt8.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include <stdint.h>
#include <sys/types.h>
#include <limits.h>
#include "../../compute/Int8FunctionsOpt.h"

void MNNAvgPoolInt8_RVV(int8_t* dst, int8_t* src, size_t outputWidth, size_t inputWidth, size_t kernelx, size_t kernely,
size_t stridesx, ssize_t paddingx, ssize_t factor) {
Expand Down
1 change: 1 addition & 0 deletions source/backend/cpu/riscv/rvv/MNNFloat2Int8.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <riscv_vector.h>
#include <stdint.h>
#include <sys/types.h>
#include "../../compute/Int8FunctionsOpt.h"

void MNNFloat2Int8_RVV(const float* src, int8_t* dst, size_t sizeQuad, const float* scalep, ssize_t minValue,
ssize_t maxValue, const float* zeroPoint, ssize_t quanParamVec) {
Expand Down
1 change: 1 addition & 0 deletions source/backend/cpu/riscv/rvv/MNNInt8ScaleToFloat.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include <stdint.h>
#include <sys/types.h>
#include <string.h>
#include "../../compute/Int8FunctionsOpt.h"

void MNNInt8ScaleToFloat_RVV(float* dst, const int8_t* src, const float* scale, size_t size, const float* zeroPoint,
ssize_t quantParamVec) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ void MNNLineDepthWiseInt8AddBiasScaleUnit_RVV(int8_t* dst, const int8_t* src, co
const int8_t* srcPtr = src;
const int8_t* weightPtr = weight;

const float* bias_z = (const float*)parameters->bias;
const int32_t* bias_z = parameters->bias;
const float* scale_z = parameters->scale;
const int32_t max_val = parameters->maxValue;
const int32_t min_val = parameters->minValue;
Expand Down Expand Up @@ -55,7 +55,9 @@ void MNNLineDepthWiseInt8AddBiasScaleUnit_RVV(int8_t* dst, const int8_t* src, co
}
}

vfloat32m4_t vec_bias = __riscv_vle32_v_f32m4(bias_z, vl);
// vfloat32m4_t vec_bias = __riscv_vle32_v_f32m4(bias_z, vl);
vint32m4_t vec_bias_int = __riscv_vle32_v_i32m4(bias_z, vl);
vfloat32m4_t vec_bias = __riscv_vfcvt_f_x_v_f32m4(vec_bias_int, vl);
vfloat32m4_t f_sum = __riscv_vfcvt_f_x_v_f32m4(vec_sum, vl);
f_sum = __riscv_vfadd_vv_f32m4(f_sum, vec_bias, vl);

Expand All @@ -71,4 +73,4 @@ void MNNLineDepthWiseInt8AddBiasScaleUnit_RVV(int8_t* dst, const int8_t* src, co

__riscv_vse8_v_i8m1(dst_x, v_out, vl);
}
}
}
Loading