From 890f9b27ee91e3e741bb726ec1f35534bba18ee4 Mon Sep 17 00:00:00 2001 From: Dhruv Matani Date: Thu, 21 Jan 2021 22:44:25 -0800 Subject: [PATCH 1/3] [PyTorch Mobile] Add an overload for deserialize() that doesn't accept the extra_files map. After the change to split `_load_for_mobile()` into multiple methods, one which takes in the `extra_files` map, and one which doesn't, we can change the implementation of the `deserialize()` method with different overloads as well. Suggested by @razy on D25968216. #accept2ship Differential Revision: [D26014084](https://our.internmc.facebook.com/intern/diff/D26014084/) [ghstack-poisoned] --- torch/csrc/jit/mobile/import.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/torch/csrc/jit/mobile/import.cpp b/torch/csrc/jit/mobile/import.cpp index 52294c38ad11..a9d764f9a834 100644 --- a/torch/csrc/jit/mobile/import.cpp +++ b/torch/csrc/jit/mobile/import.cpp @@ -230,6 +230,8 @@ void parseMethods( class BytecodeDeserializer final { public: explicit BytecodeDeserializer(std::unique_ptr reader); + mobile::Module deserialize( + c10::optional device); mobile::Module deserialize( c10::optional device, ExtraFilesMap& extra_files); @@ -274,6 +276,12 @@ mobile::Module BytecodeDeserializer::deserialize( std::string(static_cast(meta_ptr.get()), meta_size); } } + return deserialize(device); +} + +mobile::Module BytecodeDeserializer::deserialize( + c10::optional device) { + device_ = device; auto mcu = std::make_shared(); // bvals can have 2 possible formats: From e8365435a2a6db1fbea7c51db4dff695ddb107ab Mon Sep 17 00:00:00 2001 From: Dhruv Matani Date: Thu, 21 Jan 2021 22:48:04 -0800 Subject: [PATCH 2/3] Update on "[PyTorch Mobile] Add an overload for deserialize() that doesn't accept the extra_files map." After the change to split `_load_for_mobile()` into multiple methods, one which takes in the `extra_files` map, and one which doesn't, we can change the implementation of the `deserialize()` method with different overloads as well. Suggested by @razy on D25968216. #accept2ship Differential Revision: [D26014084](https://our.internmc.facebook.com/intern/diff/D26014084/) [ghstack-poisoned] --- torch/csrc/jit/mobile/import.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/torch/csrc/jit/mobile/import.cpp b/torch/csrc/jit/mobile/import.cpp index a9d764f9a834..3ab38f51dfcb 100644 --- a/torch/csrc/jit/mobile/import.cpp +++ b/torch/csrc/jit/mobile/import.cpp @@ -279,8 +279,7 @@ mobile::Module BytecodeDeserializer::deserialize( return deserialize(device); } -mobile::Module BytecodeDeserializer::deserialize( - c10::optional device) { +mobile::Module BytecodeDeserializer::deserialize(c10::optional device) { device_ = device; auto mcu = std::make_shared(); From 8e6cb59f60c80e2b0fbc5d1062216ae009bb95c7 Mon Sep 17 00:00:00 2001 From: Dhruv Matani Date: Thu, 21 Jan 2021 23:07:23 -0800 Subject: [PATCH 3/3] Update on "[PyTorch Mobile] Add an overload for deserialize() that doesn't accept the extra_files map." After the change to split `_load_for_mobile()` into multiple methods, one which takes in the `extra_files` map, and one which doesn't, we can change the implementation of the `deserialize()` method with different overloads as well. Suggested by @razy on D25968216. #accept2ship Differential Revision: [D26014084](https://our.internmc.facebook.com/intern/diff/D26014084/) [ghstack-poisoned] --- torch/csrc/jit/mobile/import.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/torch/csrc/jit/mobile/import.cpp b/torch/csrc/jit/mobile/import.cpp index 3ab38f51dfcb..fe4278a115db 100644 --- a/torch/csrc/jit/mobile/import.cpp +++ b/torch/csrc/jit/mobile/import.cpp @@ -230,8 +230,7 @@ void parseMethods( class BytecodeDeserializer final { public: explicit BytecodeDeserializer(std::unique_ptr reader); - mobile::Module deserialize( - c10::optional device); + mobile::Module deserialize(c10::optional device); mobile::Module deserialize( c10::optional device, ExtraFilesMap& extra_files); @@ -279,7 +278,8 @@ mobile::Module BytecodeDeserializer::deserialize( return deserialize(device); } -mobile::Module BytecodeDeserializer::deserialize(c10::optional device) { +mobile::Module BytecodeDeserializer::deserialize( + c10::optional device) { device_ = device; auto mcu = std::make_shared();