-
Notifications
You must be signed in to change notification settings - Fork 210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problems setting up unit testing framework #2080
Comments
What compiler and compiler version are you using? Can you successfully build a simple case on this machine? |
I am building on skybridge with the Intel compiler, my
I can build and run ACME/E3SM without issues. |
Send the entire output of scripts/fortran_unit_testing/run_tests.py --build-dir |
It looks like it's not linking to libvml.
This should be after the add_executable line |
@mfdeakin-sandia it didn't seem to like that...I get the following error:
See attached: |
I looked at Skybridge's libraries, can you try changing it to |
@mfdeakin-sandia yes but not for a week...I'm on my way out of town at the moment and will have to revisit when I get back. |
Alright, I'll look into it |
I'd be surprised if adding a link line like this in the CMakeLists.txt is the right solution. The CMake build is supposed to pick up the link libraries specified in config_compilers.xml. For skybridge, I see: <ADD_SLIBS> $(shell $(NETCDF_PATH)/bin/nf-config --flibs) -L/projects/ccsm/BLAS-intel -lblas_LINUX</ADD_SLIBS>
<PIO_FILESYSTEM_HINTS>lustre </PIO_FILESYSTEM_HINTS>
<ADD_SLIBS MPILIB="openmpi"> -mkl=cluster </ADD_SLIBS>
<ADD_SLIBS MPILIB="mpi-serial"> -mkl </ADD_SLIBS> My first question is whether those SLIBS are being correctly added to the cmake build. You can run run_tests.py with the -v argument to get the full build commands for each target. It would be helpful to compare the output from this with the output from a system build on this machine/compiler to determine what's missing from the build lines of the unit test builds. |
I agree it's not the correct solution, I just want to understand what needs to happen for this to work at this point, as I don't know how the cmake is configured at this point |
@mfdeakin ah, got it - thanks for the clarification. |
The issue is two-fold: it needs to link to mkl_rt, and the MKL library path isn't specified |
MKL is intel's math kernel library (which includes lapack and blas functionality), so yes, it's compiler-specific.
… On Nov 20, 2017, at 1:52 PM, Michael Deakin ***@***.*** ***@***.***>> wrote:
The issue is two-fold: it needs to link to mkl_rt, and the MKL library path isn't specified
@jgfouca <https://github.com/jgfouca> Is it okay to just add these to the SLIBS variable for Skybridge, or should it only be for a subset of the things we build? Also, is the mkl library compiler specific?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub <#2080 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AF-fdaacDMrPH-fZ2X1utGFE1yKFRMoWks5s4eaRgaJpZM4QhTwP>.
<https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png> <https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png> <https://github.com/ESMCI/cime> <#2080 (comment)>
|
@mfdeakin-sandia , I think it would be OK to just add them. |
) Add mkl_rt library needed for Skybridge This links the Intel Math Kernel Library with vector functions needed for the unit tests when compiling with the Intel compiler. Test suite: scripts_regression_tests.py Test status: all ok Fixes ESMCI/cime#2080 Code review: @jgfouca [BFB] * origin/mfdeakin-sandia/pfunit/skybridge_test: Add mkl_rt library needed for Skybridge
…1914) Add mkl_rt library needed for Skybridge This links the Intel Math Kernel Library with vector functions needed for the unit tests when compiling with the Intel compiler. Test suite: scripts_regression_tests.py Test status: all ok Fixes ESMCI/cime#2080 Code review: @jgfouca [BFB] * origin/mfdeakin-sandia/pfunit/skybridge_test: Add mkl_rt library needed for Skybridge
…1914) Add mkl_rt library needed for Skybridge This links the Intel Math Kernel Library with vector functions needed for the unit tests when compiling with the Intel compiler. Test suite: scripts_regression_tests.py Test status: all ok Fixes #2080 Code review: @jgfouca [BFB] * origin/mfdeakin-sandia/pfunit/skybridge_test: Add mkl_rt library needed for Skybridge
…1914) Add mkl_rt library needed for Skybridge This links the Intel Math Kernel Library with vector functions needed for the unit tests when compiling with the Intel compiler. Test suite: scripts_regression_tests.py Test status: all ok Fixes #2080 Code review: @jgfouca [BFB] * origin/mfdeakin-sandia/pfunit/skybridge_test: Add mkl_rt library needed for Skybridge
…1914) Add mkl_rt library needed for Skybridge This links the Intel Math Kernel Library with vector functions needed for the unit tests when compiling with the Intel compiler. Test suite: scripts_regression_tests.py Test status: all ok Fixes #2080 Code review: @jgfouca [BFB] * origin/mfdeakin-sandia/pfunit/skybridge_test: Add mkl_rt library needed for Skybridge
Not sure if this is the right place to put this, but I am having trouble setting up the unit testing framework, following the instructions here. I have installed pFUnit on a cluster that we have CIME otherwise configured for, adding the configuration to
config_compilers.xml
, and followed the instructions for running the existing unit tests, runningfrom the top-level CIME directory. This seems to fail somewhere short of actually running unit tests for me. The first errors that seem to show up are in reference to undefined references to operators in shr_vmath_mod.F90, e.g.,
There's a handful of these errors, and then a lot more warnings...finally the script exits, with the following error:
I don't know if any of this is helpful, but does anybody have any ideas as to what is going on here? I would really like to get this working so that I can use the framework to write unit tests for new development that I am doing.
The text was updated successfully, but these errors were encountered: