MathWorksServiceHost issues (really slows down startup and then doesn't stop when matlab stops) in 2024a
78 views (last 30 days)
Show older comments
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.
0 Comments
Answers (4)
Chaitanya
on 7 May 2024
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 Comments
Michael Greenburg
on 9 Jul 2024
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 "$@"
Andrea Luciani
on 1 Oct 2024
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
on 24 Oct 2024 at 20:59
Edited: Hugh
on 24 Oct 2024 at 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!
0 Comments
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!