From 4d3b4963300084af9658f4468440e9b471c12a68 Mon Sep 17 00:00:00 2001 From: Peter Bell Date: Wed, 4 Oct 2023 16:06:32 +0100 Subject: [PATCH] Update base for Support out overload on mps on "[inductor] Decompose boolean min/max into all/any" cc voznesenskym penguinwu EikanWang jgong5 Guobing-Chen XiaobingSuper zhuhaozhe blzheng Xia-Weiwen wenzhe-nrv jiayisunx ipiszy yf225 chenyang78 kadeng muchulee8 aakhundov ColinPeppler [ghstack-poisoned] --- aten/src/ATen/native/ReduceOps.cpp | 14 ++++++++++++++ aten/src/ATen/native/native_functions.yaml | 2 ++ 2 files changed, 16 insertions(+) diff --git a/aten/src/ATen/native/ReduceOps.cpp b/aten/src/ATen/native/ReduceOps.cpp index 7b4764d2397af..8c1bf3facde73 100644 --- a/aten/src/ATen/native/ReduceOps.cpp +++ b/aten/src/ATen/native/ReduceOps.cpp @@ -1598,6 +1598,20 @@ Tensor any_dims_default(const Tensor &self, OptionalIntArrayRef dim, bool keepdi return allany_dims_default(self, dim, keepdim); } +Tensor& all_dims_out_default( + const Tensor &self, OptionalIntArrayRef dim, bool keepdim, Tensor &result) { + auto tmp = self.all(dim, keepdim); + at::native::resize_output(result, tmp.sizes()); + return result.copy_(tmp); +} + +Tensor& any_dims_out_default( + const Tensor &self, OptionalIntArrayRef dim, bool keepdim, Tensor &result) { + auto tmp = self.any(dim, keepdim); + at::native::resize_output(result, tmp.sizes()); + return result.copy_(tmp); +} + TORCH_IMPL_FUNC(amin_out) (const Tensor& self, IntArrayRef dim, bool keepdim, const Tensor& result) { auto iter = meta::make_reduction(self, result, dim, keepdim, self.scalar_type()); diff --git a/aten/src/ATen/native/native_functions.yaml b/aten/src/ATen/native/native_functions.yaml index 2e157824cca8c..152105fa58657 100644 --- a/aten/src/ATen/native/native_functions.yaml +++ b/aten/src/ATen/native/native_functions.yaml @@ -701,6 +701,7 @@ structured: True dispatch: CPU, CUDA: all_dims_out + CompositeExplicitAutograd: all_dims_out_default cpp_no_default_args: ['dim'] - func: all.dimname(Tensor self, Dimname dim, bool keepdim=False) -> Tensor @@ -743,6 +744,7 @@ structured: True dispatch: CPU, CUDA: any_dims_out + CompositeExplicitAutograd: any_dims_out_default cpp_no_default_args: ['dim'] - func: any.dimname(Tensor self, Dimname dim, bool keepdim=False) -> Tensor