diff --git a/.github/workflows/build-wheels-m1.yml b/.github/workflows/build-wheels-m1.yml index 1dad6ad5ea..32819058c9 100644 --- a/.github/workflows/build-wheels-m1.yml +++ b/.github/workflows/build-wheels-m1.yml @@ -1,4 +1,5 @@ # From https://github.com/pytorch/test-infra/wiki/Using-Nova-Reusable-Build-Workflows +# kick build name: Build M1 Wheels on: diff --git a/kernels/optimized/cpu/op_sigmoid.cpp b/kernels/optimized/cpu/op_sigmoid.cpp deleted file mode 100644 index 751038cc8b..0000000000 --- a/kernels/optimized/cpu/op_sigmoid.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. - */ - -#include - -#include -#include -#include - -namespace torch { -namespace executor { -namespace native { - -namespace { - -template -constexpr bool is_half_or_bf16_v = std::is_same_v || - std::is_same_v; - -template < - typename CTYPE_IN, - typename CTYPE_OUT, - typename std::enable_if< - std::is_same_v && !is_half_or_bf16_v && - !is_half_or_bf16_v, - int>::type = 0> -void sigmoid_data( - const CTYPE_IN* in_data, - const size_t numel, - CTYPE_OUT* out_data) { - using Vec = executorch::vec::Vectorized; - executorch::vec::map( - [](Vec x) { - auto one_plus_exp = x.neg().exp() + Vec(static_cast(1.0)); - return one_plus_exp.reciprocal(); - }, - out_data, - in_data, - numel); -} - -template < - typename CTYPE_IN, - typename CTYPE_OUT, - typename std::enable_if< - !std::is_same_v || is_half_or_bf16_v || - is_half_or_bf16_v, - int>::type = 0> -void sigmoid_data( - const CTYPE_IN* in_data, - const size_t numel, - CTYPE_OUT* out_data) { - for (size_t i = 0; i < numel; i++) { - CTYPE_OUT xi = static_cast(in_data[i]); - out_data[i] = (1.0f / (1.0f + std::exp(-xi))); - } -} - -} // namespace - -using Tensor = exec_aten::Tensor; - -Tensor& -opt_sigmoid_out(KernelRuntimeContext& ctx, const Tensor& in, Tensor& out) { - (void)ctx; - - ET_KERNEL_CHECK( - ctx, in.scalar_type() != ScalarType::Bool, InvalidArgument, out); - ET_KERNEL_CHECK(ctx, tensor_is_floating_type(out), InvalidArgument, out); - - ET_KERNEL_CHECK( - ctx, tensors_have_same_dim_order(in, out), InvalidArgument, out); - - // Resize for dynamic shape - ET_KERNEL_CHECK_MSG( - ctx, - resize_tensor(out, in.sizes()) == Error::Ok, - InvalidArgument, - out, - "Failed to resize output tensor."); - - ScalarType in_type = in.scalar_type(); - ScalarType out_type = out.scalar_type(); - ET_SWITCH_REALHB_TYPES(in_type, ctx, "sigmoid.out", CTYPE_IN, [&]() { - ET_SWITCH_FLOATH_TYPES(out_type, ctx, "sigmoid.out", CTYPE_OUT, [&]() { - sigmoid_data( - in.const_data_ptr(), - in.numel(), - out.mutable_data_ptr()); - }); - }); - - return out; -} - -} // namespace native -} // namespace executor -} // namespace torch diff --git a/kernels/optimized/cpu/targets.bzl b/kernels/optimized/cpu/targets.bzl index 5e5f6dd7b9..77a270cc45 100644 --- a/kernels/optimized/cpu/targets.bzl +++ b/kernels/optimized/cpu/targets.bzl @@ -25,7 +25,6 @@ _OPTIMIZED_ATEN_OPS = ( ], ), op_target(name = "op_exp"), - op_target(name = "op_sigmoid"), op_target( name = "op_gelu", deps = select({ diff --git a/kernels/optimized/optimized-oss.yaml b/kernels/optimized/optimized-oss.yaml index 52262e2dd5..797744f3bd 100644 --- a/kernels/optimized/optimized-oss.yaml +++ b/kernels/optimized/optimized-oss.yaml @@ -35,11 +35,6 @@ - arg_meta: null kernel_name: torch::executor::opt_exp_out -- op: sigmoid.out - kernels: - - arg_meta: null - kernel_name: torch::executor::opt_sigmoid_out - - op: le.Scalar_out kernels: - arg_meta: null diff --git a/kernels/optimized/optimized.yaml b/kernels/optimized/optimized.yaml index ea07126a3b..2421673f8a 100644 --- a/kernels/optimized/optimized.yaml +++ b/kernels/optimized/optimized.yaml @@ -37,11 +37,6 @@ - arg_meta: null kernel_name: torch::executor::opt_exp_out -- op: sigmoid.out - kernels: - - arg_meta: null - kernel_name: torch::executor::opt_sigmoid_out - - op: gelu.out kernels: - arg_meta: null diff --git a/kernels/test/targets.bzl b/kernels/test/targets.bzl index 77b18a4814..ce15a578ad 100644 --- a/kernels/test/targets.bzl +++ b/kernels/test/targets.bzl @@ -297,7 +297,7 @@ def define_common_targets(): _common_op_test("op_scatter_add_test", ["aten", "portable"]) _common_op_test("op_select_scatter_test", ["aten", "portable"]) _common_op_test("op_select_copy_test", ["aten", "portable"]) - _common_op_test("op_sigmoid_test", ["aten", "portable", "optimized"]) + _common_op_test("op_sigmoid_test", ["aten", "portable"]) _common_op_test("op_sign_test", ["aten", "portable"]) _common_op_test("op_sin_test", ["aten", "portable"]) _common_op_test("op_sinh_test", ["aten", "portable"])