MATLAB Answers

GPU Coder library deployment

2 ビュー (過去 30 日間)
Markus Walser
Markus Walser 2019 年 10 月 31 日
Commented: Markus Walser 2019 年 11 月 5 日
I successfully generated a static library of a resnet and linked it into my application. The resulted library performs nicely within my application.
Next I tried to link the generated library as a different user into the users application which also worked fine. But as soon as the user runs the application, the linked-in GPU Coder library is trying to load some binary weight files from the build folder which is no longer accessible. Then the application terminates with a 'std::runtime_error' exception pointing to the binary file not available.
How can the binary file be linked into the static library in order to get a more portable library output of the GPU Coder?

  0 件のコメント

サインイン to comment.


Ganesh Regoti
Ganesh Regoti 2019 年 11 月 5 日
As per my understanding, the static library is deployed in user application but is unable to run as it is unable to access weight files.
Here are certain things which you need to cross-verify:
Whether the weight files are transferred/deployed correctly to user’s application.
Even after that if you get errors then try the following:
  • In file, paths to .bin files are defined, and it is absolute. If you have changed the location of these files, try to give that particular path either absolute or relative (relative to target library location)
  • After that try to rebuild the executable and library using Makefile (command – make -f [Makefile name] )
  • Now try deploying in the users application.
Hope this helps!

  1 件のコメント

Markus Walser
Markus Walser 2019 年 11 月 5 日
Thank you very much for your answer.
After digging in the generated code I found out there's the environment variable USER_DL_DATA_PATH which can be used to pass the path of the binary weight files to the application.

サインイン to comment.

More Answers (0)

サインイン してこの質問に回答します。




Translated by