I'd like to say that I've got a solution for this
but I've just tried it here and got the same result.
setup is Matlab R2012a on Windows 7 64 bit with
Condor 7.6.6 on the execute nodes. Since this
used to work fine with Matlab R2011a my guess
is that it's almost certainly down to a Matlab change
not a Condor one.
I know this sounds obvious but have you contacted
MathWorks ? I've found their tech support to
be very good in the past even with obscure problems
such as this. I would bet that the problem
is almost certainly down to the absence of a user
profie for the temporary Condor execute
account. In the past I've had to include this
in my .bat wapper file to get it to work:
set MATLAB_PREFDIR=%CD%\My Documents\MATLAB
mkdir "My Documents"
mkdir "My Documents\MATLAB"
(%CD% will be the temp execute directory at runtime).
Perhaps R2012a requires more of this monkeying
We try to make sure users compile their M-files
here but being able to run small numbers of
them without precompiling is quite useful (esp
for development/testing) - so if you come up
with any answers I would be very glad to hear
Dr. Ian C. Smith,
Advanced Research Computing,
University of Liverpool, UK.
On Behalf Of Rochford, Steve
Sent: 07 January 2013 10:39
Subject: [HTCondor-users] Matlab on Condor (Windows)
We’ve previously run Matlab very successfully on our Windows setup but now we’re having problems – matlab jobs don’t complete.
Unfortunately, we’ve upgraded both Matlab (2012a) and Condor (7.8.2) over the summer so I’m not sure which (if either) is causing the problem.
A sample command we’re trying to run is:
matlab.exe -nodesktop -noFigureWindows -nosplash -wait -nojvm -r go
where “go” is the name of a .m file in the current directory.
The files we need are getting copied to an execute node, I can see (by using pslist) that Matlab is starting but it’s not actually executing the code in go.m (the first line of
go.m creates a text file for results; that’s not being created)
The matlab.exe which is on the path is just some kind of loader which runs c:\matlab\R2012a\bin\win64\MATLAB.exe and that actually runs the code so I’ve tried using this command
c:\matlab\R2012a\bin\win64\MATLAB.exe -nodesktop -noFigureWindows -nosplash -wait -nojvm -r go
but this doesn’t run to completion either.
If I just log on to a computer interactively, copy the contents of a stalled execute directory to it and try and run the submitted command then it works fine.
Does anyone have experience of using Matlab like this?