Problem running and compiling FEBio

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • jogomez
    Junior Member
    • Jul 2011
    • 15

    Problem running and compiling FEBio

    I have downloaded, and compiled febio 1.4 from source code.

    Then, when I try to run any example, I got the following error message:

    "FATAL ERROR: The Pardiso solver is not available on this platform"

    The lines for the Pardiso solver library are commented in the Makefile file. Then, FEBio should use Slyline solver, which is included with the source code. Then, I do not understand why I have this problem.

    After that, I have to compile with SuperLU 4.2, and in this case, I got a lot of compilation errors.

    Any help!.

    Thank you. Regards,
    José Antonio
  • maas
    Lead Code Developer
    • Nov 2007
    • 3400

    #2
    Hi Jose,

    You need the pardiso solver library if you want to compile with FEBio. You can either download the pardiso library from their website or use the MKL flavor (which is what we use).

    However, the skyline solver should work. Check your febio.xml file. This is the FEBio configuration file and it defines the default linear solver. You probably have to change this to use the skyline solver. Alternatively, you can define the linear solver in the input file in the Control section.

    Code:
    <linear_solver type="skyline"/>
    That will override the default and use the skyline solver for this problem. Hope this helps.

    Cheers,

    Steve.
    Department of Bioengineering, University of Utah
    Scientific Computing and Imaging institute, University of Utah

    Comment

    • jogomez
      Junior Member
      • Jul 2011
      • 15

      #3
      Thank you very much.

      I have changed febio.xml configuration file, and now it works. However, with skyline solver it works very slow.

      Then, I have downloaded Intel MKL libraries, version 10.3.7.256. After compilation correctly, when running febio, I get the error message:

      febio.lnx: error while loading shared libraries: libmkl_intel.so: cannot open shared object file: No such file or directory

      However, the libmkl_intel.so file is in the mkl directory instalation (/opt/intel/mkl/lib/ia32/), and I have included in compilation.

      I have compiled with the following options in Makefile:

      DEF += -DPARDISO
      # Put the path to the MKL library directory here
      MKL_PATH = /opt/intel/mkl/lib/ia32/
      MKL_LIB = -m32 -L$(MKL_PATH) -lmkl_intel
      MKL_LIB += -Wl,--start-group -lmkl_intel_thread -lmkl_core -Wl,--end-group
      MKL_LIB += -L/opt/intel/composer_xe_2011_sp1.7.256/compiler/lib/ia32 -liomp5 -lpthread -lm

      LIBS += $(MKL_LIB)

      Any help on this problem?

      Thank you very much.
      Regards.
      José Antonio

      Comment

      • jogomez
        Junior Member
        • Jul 2011
        • 15

        #4
        Problem solving!:

        I have found the solution for this problem: Before runing febio, I have to update the system variable LD_LIBRARY_PATH to include the libraries location:

        export LD_LIBRARY_PATH=/opt/intel/mkl/lib/ia32/:$LD_LIBRARY_PATH

        export LD_LIBRARY_PATH=/opt/intel/composer_xe_2011_sp1.7.256/compiler/lib/ia32:$LD_LIBRARY_PATH

        Regards, José Antonio

        Comment

        • maas
          Lead Code Developer
          • Nov 2007
          • 3400

          #5
          Hi Jose,

          Glad to hear you got it working. A small comment on your observation that Skyline is slow. This does not surprise me. The skyline solver cannot use multiple threads and does not optimize the memory storage of the nonzero elements as well as the pardiso solver. Thus, the skyline solver will always be slower than pardiso, in some cases, the difference can be quite large. Pardiso is definitely our preferred linear solver for these reasons.

          Cheers,

          Steve.
          Department of Bioengineering, University of Utah
          Scientific Computing and Imaging institute, University of Utah

          Comment

          Working...
          X
          😀
          😂
          🥰
          😘
          🤢
          😎
          😞
          😡
          👍
          👎