From: Hui Guo Date: Fri, 10 Sep 2021 16:59:25 +0000 (-0700) Subject: [tensorexpr] Add 'pre_alloc' argument in python API of tensorexpr kernel (#64718) X-Git-Tag: accepted/tizen/8.0/unified/20231005.095509~304 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ade4bf3e82ea369e77d511a796ba936ce281aa89;p=platform%2Fupstream%2Fpytorch.git [tensorexpr] Add 'pre_alloc' argument in python API of tensorexpr kernel (#64718) Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/64718 Test Plan: Imported from OSS Reviewed By: navahgar Differential Revision: D30826582 Pulled By: huiguoo fbshipit-source-id: 6c173c8964f2643039273cdc83e64fb02bb5f381 --- diff --git a/torch/csrc/jit/tensorexpr/tensorexpr_init.cpp b/torch/csrc/jit/tensorexpr/tensorexpr_init.cpp index ad8962d..7e93092 100644 --- a/torch/csrc/jit/tensorexpr/tensorexpr_init.cpp +++ b/torch/csrc/jit/tensorexpr/tensorexpr_init.cpp @@ -666,15 +666,23 @@ void initTensorExprBindings(PyObject* module) { using TSGraph = std::shared_ptr; py::class_(te, "TensorExprKernel") .def(py::init()) - .def(py::init([](const TSGraph& g, - std::unordered_map - custom_lowerings_str) { - std::unordered_map custom_lowerings; - for (auto& kv : custom_lowerings_str) { - custom_lowerings[c10::Symbol::fromQualString(kv.first)] = kv.second; - } - return std::make_unique(g, custom_lowerings); - })) + .def( + py::init([](const TSGraph& g, + std::unordered_map + custom_lowerings_str, + bool pre_alloc = false) { + std::unordered_map + custom_lowerings; + for (auto& kv : custom_lowerings_str) { + custom_lowerings[c10::Symbol::fromQualString(kv.first)] = + kv.second; + } + return std::make_unique( + g, custom_lowerings, pre_alloc); + }), + py::arg("g"), + py::arg("custom_lowerings_str"), + py::arg("pre_alloc") = false) .def( "run", [](TensorExprKernel& self, const py::tuple& inputs) {