Skip to content

Commit edfc4cf

Browse files
zonglinpengfacebook-github-bot
authored andcommitted
migrate jarvis dequant_per_tensor hifi ops to oss (#6439)
Summary: Pull Request resolved: #6439 as titled Reviewed By: hsharma35 Differential Revision: D64774100
1 parent 6d322b0 commit edfc4cf

File tree

2 files changed

+13
-17
lines changed

2 files changed

+13
-17
lines changed

backends/cadence/hifi/operators/dequantize_per_tensor.cpp

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,34 +15,35 @@ namespace impl {
1515
namespace HiFi {
1616
namespace native {
1717

18-
using executorch::aten::ScalarType;
19-
using executorch::aten::Tensor;
20-
using executorch::runtime::KernelRuntimeContext;
18+
using ::cadence::impl::HiFi::kernels::dequantize;
19+
using ::executorch::aten::ScalarType;
20+
using ::executorch::aten::Tensor;
21+
using ::executorch::runtime::KernelRuntimeContext;
2122

2223
void dequantize_per_tensor_out(
23-
KernelRuntimeContext& context,
24+
KernelRuntimeContext& ctx,
2425
const Tensor& input,
2526
double scale,
2627
int64_t zero_point,
27-
int64_t quant_min,
28-
int64_t quant_max,
28+
__ET_UNUSED int64_t quant_min,
29+
__ET_UNUSED int64_t quant_max,
2930
ScalarType dtype,
3031
Tensor& out) {
3132
float* out_data = out.mutable_data_ptr<float>();
32-
size_t numel = out.numel();
33-
33+
const size_t numel = out.numel();
3434
if (input.scalar_type() == ScalarType::Byte) {
3535
const uint8_t* input_data = input.const_data_ptr<uint8_t>();
36-
impl::HiFi::kernels::dequantize<uint8_t>(
37-
out_data, input_data, scale, zero_point, numel);
36+
dequantize<uint8_t>(out_data, input_data, scale, zero_point, numel);
3837
} else if (input.scalar_type() == ScalarType::Char) {
3938
const int8_t* input_data = input.const_data_ptr<int8_t>();
4039
xa_nn_elm_dequantize_asym8s_f32(
4140
out_data, input_data, zero_point, scale, numel);
41+
} else if (input.scalar_type() == ScalarType::Short) {
42+
const int16_t* input_data = input.const_data_ptr<int16_t>();
43+
dequantize<int16_t>(out_data, input_data, scale, zero_point, numel);
4244
} else if (input.scalar_type() == ScalarType::Int) {
4345
const int32_t* input_data = input.const_data_ptr<int32_t>();
44-
impl::HiFi::kernels::dequantize<int32_t>(
45-
out_data, input_data, scale, zero_point, numel);
46+
dequantize<int32_t>(out_data, input_data, scale, zero_point, numel);
4647
} else {
4748
ET_CHECK_MSG(false, "Unhandled input dtype %hhd", input.scalar_type());
4849
}

backends/cadence/hifi/operators/quantize_per_tensor.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
#include <executorch/runtime/kernel/kernel_includes.h>
1111
#include <xa_nnlib_kernels_api.h>
1212

13-
#include <executorch/runtime/platform/log.h>
14-
1513
namespace cadence {
1614
namespace impl {
1715
namespace HiFi {
@@ -34,9 +32,6 @@ void quantize_per_tensor_out(
3432
Tensor& out) {
3533
const float* input_data = input.const_data_ptr<float>();
3634
const size_t numel = out.numel();
37-
ET_LOG(
38-
Info,
39-
"HERE!!");
4035
if (out.scalar_type() == ScalarType::Byte) {
4136
uint8_t* out_data = out.mutable_data_ptr<uint8_t>();
4237
cadence::impl::HiFi::kernels::quantize<uint8_t>(

0 commit comments

Comments
 (0)