Matlab crashes when importing pytorch library

I'm calling user-defined python module from matlab script that includes PyTorch library. The following line crashes Matlab:
def myfunc():
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
Any ideas on how to fix this?
Thanks in advance

回答(1 个)

Using out-of-process execution mode will avoid these conflicts. For this reason, using out-of-process mode is the best practice when using the Python Interface. Use the pyenv command to run in out-of-process mode.
>> pyenv("Version","<path to python executable>", "ExecutionMode", "OutOfProcess")

1 个评论

Thank you @Vignesh Murugavel for the answer
Yes, this fixes the issue of matlab crashing but then I need to call matlab script in my python code , so as soon as I include the matlab engine in python module python interpreter terminates
eng = matlab.engine.start_matlab()
eng.cd(r'/home/pathToMyMatlab', nargout=0)
with the following error:
Python process terminated unexpectedly. To restart the Python interpreter, first call "terminate(pyenv)" and then call a Python function.
This does not happen when ExecutionMode of python interpreter is the default InProcess.
Please help!

请先登录,再进行评论。

类别

在 帮助中心 和 File Exchange 中查找有关 Call Python from MATLAB 的更多信息

产品

版本

R2021a

提问:

2021-7-30

评论:

2021-8-4

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by