Hello Derek, Is this issue still open..? If open can I work on it?
On Mon, Oct 28, 2019 at 5:30 PM armnn-dev-request@lists.linaro.org wrote:
Send Armnn-dev mailing list submissions to armnn-dev@lists.linaro.org
To subscribe or unsubscribe via the World Wide Web, visit https://lists.linaro.org/mailman/listinfo/armnn-dev or, via email, send a message with subject or body 'help' to armnn-dev-request@lists.linaro.org
You can reach the person managing the list at armnn-dev-owner@lists.linaro.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of Armnn-dev digest..."
Today's Topics:
- Re: ArmNN | ONXX model load issue (Derek Lamberti)
Message: 1 Date: Mon, 28 Oct 2019 10:31:11 +0000 From: Derek Lamberti derek.lamberti@linaro.org To: Rahul Chowdhury rahul.c@pathpartnertech.com Cc: Manjunath Kulkarni manjunath.kulkarni@pathpartnertech.com, armnn-dev@lists.linaro.org Subject: Re: [Armnn-dev] ArmNN | ONXX model load issue Message-ID: <CAPeFqV89WNV-sw20X0NB= tznsiMmNpw0bzj23HcgNSEmoFFmWg@mail.gmail.com> Content-Type: text/plain; charset="UTF-8"
Hi Rahul,
ArmNN doesn't support zero dimension tensors implicitly. Often this can be resolved by converting the tensor to a 1D tensor with 1 element. We have done this conversion automatically within the TfLite parser and this has worked for a particular use case we ran into. A similar solution might work for your use case too. This could be done within the ToTensorInfo() function in OnnxParser.cpp. If this resolves the issue for you I'd recommend issuing a pull request so that we can integrate it into master.
Hope that helps, ~Derek
On Thu, 22 Aug 2019 at 15:32, Rahul Chowdhury rahul.c@pathpartnertech.com wrote:
Hi,
We are using ArmNN to cross-compile a standalone C++ application on Linux that loads a standard onnx model. During the model loading, we see a
crash
with the below error output -
terminate called after throwing an instance of 'armnn::InvalidArgumentException' what(): Tensor numDimensions must be greater than 0
Initially we were on armnn master, and later we switched to tag v19.05,
but
the error was same for both.
Below is the code snippet to load the model - armnnOnnxParser::IOnnxParserPtr parser = armnnOnnxParser::IOnnxParser::Create(); std::cout << "\nmodel load start"; armnn::INetworkPtr network = parser->CreateNetworkFromBinaryFile("onnx_3DDFA.onnx"); std::cout << "\nmodel load end";
It crashes after printing "model load start" with the error message
printed
above.
A gdb backtrace is also provided below - (gdb) r Starting program: /home/root/Rahul/armnn_onnx/3DDFA_ArmNN_onnx/3ddfa_armnn_onnx [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/libthread_db.so.1".
terminate called after throwing an instance of 'armnn::InvalidArgumentException' what(): Tensor numDimensions must be greater than 0 model load start Program received signal SIGABRT, Aborted. __GI_raise (sig=sig@entry=6) at /usr/src/debug/glibc/2.26-r0/git/sysdeps/unix/sysv/linux/raise.c:51 51 } (gdb) bt #0 __GI_raise (sig=sig@entry=6) at /usr/src/debug/glibc/2.26-r0/git/sysdeps/unix/sysv/linux/raise.c:51 #1 0x0000ffffbe41df00 in __GI_abort () at /usr/src/debug/glibc/2.26-r0/git/stdlib/abort.c:90 #2 0x0000ffffbe6aa0f8 in __gnu_cxx::__verbose_terminate_handler() ()
from
/usr/lib/libstdc++.so.6 #3 0x0000ffffbe6a7afc in ?? () from /usr/lib/libstdc++.so.6 #4 0x0000ffffbe6a7b50 in std::terminate() () from
/usr/lib/libstdc++.so.6
#5 0x0000ffffbe6a7e20 in __cxa_throw () from /usr/lib/libstdc++.so.6 #6 0x0000ffffbefdad84 in armnn::TensorShape::TensorShape(unsigned int, unsigned int const*) () from
/home/root/Rahul/armnn_onnx/build/libarmnn.so
#7 0x0000ffffbe7e34d8 in armnnOnnxParser::(anonymous namespace)::ToTensorInfo(onnx::ValueInfoProto const&) [clone .constprop.493] () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #8 0x0000ffffbe7e4080 in
armnnOnnxParser::OnnxParser::SetupInfo(google::protobuf::RepeatedPtrFieldonnx::ValueInfoProto
const*) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #9 0x0000ffffbe7e41ac in armnnOnnxParser::OnnxParser::LoadGraph() ()
from
/home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #10 0x0000ffffbe7e4760 in armnnOnnxParser::OnnxParser::CreateNetworkFromModel(onnx::ModelProto&) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #11 0x0000ffffbe7e49b0 in armnnOnnxParser::OnnxParser::CreateNetworkFromBinaryFile(char const*) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #12 0x0000000000402290 in main () (gdb)
Can someone point out if we are missing something out or doing something wrong? Any help or input is highly appreciated.
Regards, Rahul
--
This message contains confidential information and is intended only for the individual(s) named. If you are not the intended recipient, you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this mail and attached file/s is strictly
prohibited. Please notify the sender immediately and delete this e-mail from your system. E-mail transmission cannot be guaranteed to be secured or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. _______________________________________________ Armnn-dev mailing list Armnn-dev@lists.linaro.org https://lists.linaro.org/mailman/listinfo/armnn-dev
Subject: Digest Footer
Armnn-dev mailing list Armnn-dev@lists.linaro.org https://lists.linaro.org/mailman/listinfo/armnn-dev
End of Armnn-dev Digest, Vol 8, Issue 3
Dear,
I made a review request for the issue, and it’s merged to master branch.
See also: https://review.mlplatform.org/c/ml/armnn/+/2273 https://review.mlplatform.org/c/ml/armnn/+/2273
Regards, Tee
On 27 Nov 2019, at 3:20 PM, vinay karnam vkarnam5@gmail.com wrote:
Hello Derek, Is this issue still open..? If open can I work on it?
On Mon, Oct 28, 2019 at 5:30 PM armnn-dev-request@lists.linaro.org wrote:
Send Armnn-dev mailing list submissions to armnn-dev@lists.linaro.org
To subscribe or unsubscribe via the World Wide Web, visit https://lists.linaro.org/mailman/listinfo/armnn-dev or, via email, send a message with subject or body 'help' to armnn-dev-request@lists.linaro.org
You can reach the person managing the list at armnn-dev-owner@lists.linaro.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of Armnn-dev digest..."
Today's Topics:
- Re: ArmNN | ONXX model load issue (Derek Lamberti)
Message: 1 Date: Mon, 28 Oct 2019 10:31:11 +0000 From: Derek Lamberti derek.lamberti@linaro.org To: Rahul Chowdhury rahul.c@pathpartnertech.com Cc: Manjunath Kulkarni manjunath.kulkarni@pathpartnertech.com, armnn-dev@lists.linaro.org Subject: Re: [Armnn-dev] ArmNN | ONXX model load issue Message-ID: <CAPeFqV89WNV-sw20X0NB= tznsiMmNpw0bzj23HcgNSEmoFFmWg@mail.gmail.com> Content-Type: text/plain; charset="UTF-8"
Hi Rahul,
ArmNN doesn't support zero dimension tensors implicitly. Often this can be resolved by converting the tensor to a 1D tensor with 1 element. We have done this conversion automatically within the TfLite parser and this has worked for a particular use case we ran into. A similar solution might work for your use case too. This could be done within the ToTensorInfo() function in OnnxParser.cpp. If this resolves the issue for you I'd recommend issuing a pull request so that we can integrate it into master.
Hope that helps, ~Derek
On Thu, 22 Aug 2019 at 15:32, Rahul Chowdhury rahul.c@pathpartnertech.com wrote:
Hi,
We are using ArmNN to cross-compile a standalone C++ application on Linux that loads a standard onnx model. During the model loading, we see a
crash
with the below error output -
terminate called after throwing an instance of 'armnn::InvalidArgumentException' what(): Tensor numDimensions must be greater than 0
Initially we were on armnn master, and later we switched to tag v19.05,
but
the error was same for both.
Below is the code snippet to load the model - armnnOnnxParser::IOnnxParserPtr parser = armnnOnnxParser::IOnnxParser::Create(); std::cout << "\nmodel load start"; armnn::INetworkPtr network = parser->CreateNetworkFromBinaryFile("onnx_3DDFA.onnx"); std::cout << "\nmodel load end";
It crashes after printing "model load start" with the error message
printed
above.
A gdb backtrace is also provided below - (gdb) r Starting program: /home/root/Rahul/armnn_onnx/3DDFA_ArmNN_onnx/3ddfa_armnn_onnx [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/libthread_db.so.1".
terminate called after throwing an instance of 'armnn::InvalidArgumentException' what(): Tensor numDimensions must be greater than 0 model load start Program received signal SIGABRT, Aborted. __GI_raise (sig=sig@entry=6) at /usr/src/debug/glibc/2.26-r0/git/sysdeps/unix/sysv/linux/raise.c:51 51 } (gdb) bt #0 __GI_raise (sig=sig@entry=6) at /usr/src/debug/glibc/2.26-r0/git/sysdeps/unix/sysv/linux/raise.c:51 #1 0x0000ffffbe41df00 in __GI_abort () at /usr/src/debug/glibc/2.26-r0/git/stdlib/abort.c:90 #2 0x0000ffffbe6aa0f8 in __gnu_cxx::__verbose_terminate_handler() ()
from
/usr/lib/libstdc++.so.6 #3 0x0000ffffbe6a7afc in ?? () from /usr/lib/libstdc++.so.6 #4 0x0000ffffbe6a7b50 in std::terminate() () from
/usr/lib/libstdc++.so.6
#5 0x0000ffffbe6a7e20 in __cxa_throw () from /usr/lib/libstdc++.so.6 #6 0x0000ffffbefdad84 in armnn::TensorShape::TensorShape(unsigned int, unsigned int const*) () from
/home/root/Rahul/armnn_onnx/build/libarmnn.so
#7 0x0000ffffbe7e34d8 in armnnOnnxParser::(anonymous namespace)::ToTensorInfo(onnx::ValueInfoProto const&) [clone .constprop.493] () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #8 0x0000ffffbe7e4080 in
armnnOnnxParser::OnnxParser::SetupInfo(google::protobuf::RepeatedPtrFieldonnx::ValueInfoProto
const*) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #9 0x0000ffffbe7e41ac in armnnOnnxParser::OnnxParser::LoadGraph() ()
from
/home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #10 0x0000ffffbe7e4760 in armnnOnnxParser::OnnxParser::CreateNetworkFromModel(onnx::ModelProto&) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #11 0x0000ffffbe7e49b0 in armnnOnnxParser::OnnxParser::CreateNetworkFromBinaryFile(char const*) () from /home/root/Rahul/armnn_onnx/build/libarmnnOnnxParser.so #12 0x0000000000402290 in main () (gdb)
Can someone point out if we are missing something out or doing something wrong? Any help or input is highly appreciated.
Regards, Rahul
--
This message contains confidential information and is intended only for the individual(s) named. If you are not the intended recipient, you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this mail and attached file/s is strictly
prohibited. Please notify the sender immediately and delete this e-mail from your system. E-mail transmission cannot be guaranteed to be secured or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. _______________________________________________ Armnn-dev mailing list Armnn-dev@lists.linaro.org https://lists.linaro.org/mailman/listinfo/armnn-dev
Subject: Digest Footer
Armnn-dev mailing list Armnn-dev@lists.linaro.org https://lists.linaro.org/mailman/listinfo/armnn-dev
End of Armnn-dev Digest, Vol 8, Issue 3
Armnn-dev mailing list Armnn-dev@lists.linaro.org https://lists.linaro.org/mailman/listinfo/armnn-dev