MathWorksServiceHost issues (really slows down startup and then doesn't stop when matlab stops) in 2024a

82 次查看(过去 30 天)
With 2024a on Linux, when the matlab process starts, MathWorksServiceHost and MathWorksServiceHost-Monitor are started from the user's home directory, which REALLY slows down the startup when the home directory is mounted over the network. I've been able to mitigate the slowdown a bit by having $HOME/.MathWorks/ServiceHost get created a simlink to the local /tmp dir However...
MathWorksServiceHost and MathWorksServiceHost-Monitor don't stop when the matlab process stops. This is a problem on a multi-user system where, we then have a bunch of processes just hanging around for no reason.
This first issue is a problem, but not too major an issue, but the second would seem to me to be a bug.

回答(4 个)

Chaitanya
Chaitanya 2024-5-7
Hello Mike
I understand that you are facing issues with ‘MathWorksServiceHost’ where it slows down the MATLAB startup and you see that the ‘MathWorksServiceHost - Monitor’ don’t stop when the MATLAB process stops which leaves few processes not terminated.
It is recommended to uninstall and reinstall ‘MathWorksServiceHost’ when such issues are faced.
Please follow the steps mentioned in the following MATLAB Answer to do the same.
I hope that the above information is helpful.
Thanks,
Chaitanya
  4 个评论
Mike VanHorn
Mike VanHorn 2024-7-16
No, because it doesn't address the problem. The "problems" we've identified in this thread are by design, so re-installing would be the solution to the software not working in this way (which is the way we don't want them to work).

请先登录,再进行评论。


Michael Greenburg
I just wrote contain to combat this very problem--it can prevent those daemons from persisting after Matlab exits. We now put this script (but NOT the original matlab) in PATH:
#!/bin/bash
# Symlink their bloat directory to /tmp
if [[ -d ~/.MathWorks && ! -h ~/.MathWorks ]]; then
mv ~/.MathWorks ~/.MathWorksOld
echo "WARNING: moved ~/.MathWorks to ~/.MathWorksOld; unless you need it, remove ~/.MathWorksOld."
fi
test -h ~/.MathWorks || ln -s /tmp ~/.MathWorks
# Launch matlab, contained so the daemons can't escape
module load apptainer contain &>/dev/null
contain /apps/matlab/r2024a/bin/matlab "$@"
  1 个评论
Mike VanHorn
Mike VanHorn 2024-7-11
Michael Greenburg,
That's a pretty cool script. I may use that for Cadence Virtuoso, too, as it has started doing to the same thing as Matlab in regards to superfluous daemons.

请先登录,再进行评论。


Andrea Luciani
Andrea Luciani 2024-10-1
Hi everyone.
We face the very same problem in our shared linux servers.
Having hundreds of users we cannot afford to have thousands of MathWorksServiceHost process spwaned all around the cluster.
Is there an official solution that i) speedup the Matlab startup, ii) does not require symlink to /tmp directory, and iii) avoids the MathWorksServiceHost process to remain in a running status after the Matlab is closed?

Hugh
Hugh 2024-10-24,20:59
编辑:Hugh 2024-10-24,21:00
While we'd much prefer a switch that can be a default option (come on MathWorks!) in our cluster, we've found that instead of using /tmp, using a symbolic link to /dev/null to replace $HOME/.MathWorks works fine, like ln -s /dev/shm $HOME/.MathWorks
Caveat: we have a concurrent license server for our licensing. I'm not sure how that would work with other licensing methods.
Build that link in a matlab wrapper script to replace matlab, something like:
#!/bin/bash
if [[ ( ! -h $HOME/.MathWorks || ! $(readlink -f $HOME/.MathWorks) == "/dev/null" ) ]]; then
if [[ -e $HOME/.MathWorks ]]; then
rm -rf $HOME/.MathWorks
fi
ln -s /dev/null $HOME/.MathWorks
fi
echo "you may safely ignore 'mkdir: cannot create directory ‘/home/wcit/hughmac/.MathWorks’: Not a directory' message, below"
/usr/local/matlab/bin/matlab $@
Hope that's useful to others!

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品


版本

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by