Page 1 of 1

OpenSim 3.0 on linux server

Posted: Fri Jan 18, 2013 9:44 am
by lode
Dear Ayman,

i'm trying to run simulations on a linux server. A collegue of mine, Martijn Oldenhof, mailed you a few days ago about the installation of opensim 3.0 from source code. It seems that the installation is done properly now.

However, I am not able to run simulations on the linux server. I used the same setup files to run a simulation with OpenSim 1.9.1, 2.4.0 and 3.0 on windows and a 3.0 version on a virtual version of OpenSuSE, without any problems. The setup files were always converted to the correct format. But the files congruent with OpenSim 3.0, always give an error on the linux server.
The error is shown below. It starts with the indication that there is an error for lat_gat_r, however, everything works fine on the windows versions.

Any ideas what can cause this?

Thanks in advance for your help!

Kind regards,
Lode





Low-pass filtering coordinates data with a cutoff frequency of 6...

Found 7801 state vectors with time stamps ranging from -18.5 to 59.5.
Executing the analyses from 9.6 to 10.72...
WARNING: No suitable initial conditions found for
lat_gas_r:
by

WARNING: Thelen2003Muscle::computeInitialFiberEquilibrium(SimTK::State& s)
Continuing with an initial fiber force and length of 0 and 0.068048
Here is a report from the routine:

Solution Error : 0.042556 > tol (0.000007)
Newton Iterations : 200 of max. iterations (200)
Check that the initial activation is valid, and that the whole
length doesn't produce a pennation angle of 90 degrees, nor a fiber
length less than 0:
Activation : 0.050000
Whole muscle length : nan


USHìH
USHìH
PuTTYPuTTY ** On entry to DGETRI parameter number 6 had an illegal value

Re: OpenSim 3.0 on linux server

Posted: Fri Jan 18, 2013 3:00 pm
by sherm
Hi, Lode. It doesn't appear that you are using a correct build of OpenSim on Linux. The two lines of output that looked like "USHiH" (or some other junk) indicates that the version you are running was built using the wrong Lapack library (SimTKlapack rather than Linux native lapack and blas libraries). I'm not sure that explains the problem you're seeing but you should make sure you are using a good build.

Regards,
Sherm

Re: OpenSim 3.0 on linux server

Posted: Mon Jan 21, 2013 6:27 am
by lode
Thanks for the advice! My colleague re-installed everything using OpenSim 3.0 and Simbody 3.0.
The other 'junk' doesn't appear anymore, but we still get an error (see below).

Nb: we are trying to do a static optimization of a normal gait trial. Like said before, with the same setup files, everything works nicely on windows versions of OpenSim and a virtual machine with openSuSE.
The error indicates that there is a problem with the length of lat_gas_r, however, if I plot the length (in function of the gait trial) in the windows GUI, nothing seems to be wrong and realistic values are shown.
So I don't know where the 'nan' is being caused by. Nor do I know what the 'segmentation fault' is.

Any ideas?

Kind regards,
Lode




WARNING: No suitable initial conditions found for
lat_gas_r:
by

WARNING: Thelen2003Muscle::computeInitialFiberEquilibrium(SimTK::State& s)
Continuing with an initial fiber force and length of 0 and 0.068048
Here is a report from the routine:

Solution Error : 0.042556 > tol (0.000007)
Newton Iterations : 200 of max. iterations (200)
Check that the initial activation is valid, and that the whole
length doesn't produce a pennation angle of 90 degrees, nor a fiber
length less than 0:
Activation : 0.050000
Whole muscle length : nan

Segmentation fault (core dumped)

Re: OpenSim 3.0 on linux server

Posted: Tue Jan 22, 2013 11:15 am
by aymanh
Hi Lode,

A couple possible things may explain what you see:

1. If same setup files are used on windows and Linux there could be a problem with file path specification (e.g. '\' vs. '/' and use of drive letter e.g. C:/ if absolute path is used anywhere in the setup files). Please check the messages window or log files to make sure no errors related to this are reported.
2. The initialization of the muscles acts differently on the two different platforms. This maybe due to using different underlying numerical libraries (lapack) or just a plain bug where some initialization code is not executed (or executed in the wrong sequence). This will be hard to debug as we'll need to reproduce your environment but is not impossible. I'd be tempted to try solving a StaticOptimization problem on a much simpler model (e.g. Arm26) and see if the problem reproduces.

Please let us know how it goes and best of luck,
-Ayman

Re: OpenSim 3.0 on linux server

Posted: Mon Jan 28, 2013 3:42 am
by lode
Dear Ayman,

we were aware of the path definitions in Linux, so they are correct. The necessary files are loaded without any problems.

We installed Opensim 3.0 on Linux 64 bit, and it uses the intel MKL library. However when we run the same example (arm26) that runs successfully with opensim 3.0 on windows, we get an error message like shown below.
Does this mean that our example has a problem with the MKL library or is this rather a bug in opensim 3.0?

Kind regards,
Lode



StaticOptimization.record: WARN- The optimizer could not find a solution at time = 0.916666

The model appears unsuitable for static optimization.
Try appending the model with additional force(s) or locking joint(s) to reduce the following acceleration constraint violation(s):
r_shoulder_elev: constraint violation = -0.316548
r_elbow_flex: constraint violation = 30.4774


time = 0.916666 Performance =0 Constraint violation = 30.4791

MKL ERROR: Parameter 1 was incorrect on entry to DSYEV .

MKL ERROR: Parameter 3 was incorrect on entry to DGELSD.

MKL ERROR: Parameter 3 was incorrect on entry to DGELSD.
SimTK Exception thrown at InteriorPointOptimizer.cpp:261:
Optimizer failed: Ipopt: Unrecoverable exception (status -100)
OPTIMIZATION FAILED...

Re: OpenSim 3.0 on linux server

Posted: Wed Jan 30, 2013 9:15 am
by lode
In addition: the first installation was build with SimTKlapack, however, that didn't work. That's why my colleague tried the MKL pack.

Kind regards,
Lode

Re: OpenSim 3.0 on linux server

Posted: Wed Jan 30, 2013 10:30 am
by sherm
Hi, Lode.

The problem you reported looks at first glance to be a compatibility problem between MKL and the OpenSim build your colleague made. Possibly the Intel MKL binary was not produced with a compatible version of the compiler -- it is hard to say for sure. We have not tested OpenSim with MKL on Linux -- and whether it works may depend on both the MKL and Linux versions. Instead, we advise using the lapack and blas that is provided specifically for your version of Linux; that one will be compatible with the compiler that came with that same Linux system. Do you know why your colleague didn't do it that way? Lapack and blas are often available as an installable package, or if not they can be obtained along with Octave.

Regards,
Sherm

Re: OpenSim 3.0 on linux server

Posted: Wed Mar 26, 2014 2:32 am
by lode
Hello,

a very late reply. But we got it working based on the last replies. Thanks for the help!

Kind regards,
Lode