Skip to content
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

conda build failures with KOSMAPOSL #512

Closed
KrisThielemans opened this issue Apr 22, 2020 · 6 comments
Closed

conda build failures with KOSMAPOSL #512

KrisThielemans opened this issue Apr 22, 2020 · 6 comments

Comments

@KrisThielemans
Copy link
Collaborator

I'm trying to get STIR 4.0.0 to build on conda-forge. Weirdly all 3 Linux jobs gives an error like this

------------- Running KOSMAPOSL consistency test -------------
(a Kernel with no neighbourhood should be equivalent to OSMAPOSL)
Running KOSMAPOSL
---- Comparing output of KOSMAPOSL subiter 5 (should be identical up to tolerance)
Running compare_image

Maximum absolute error = 0.00191893
Maximum in (1st - 2nd) = 0.00191893
Minimum in (1st - 2nd) = -0.000357639
Error relative to sup-norm of first image = 1.42392 %

Image arrays deemed different
(tolerance used: 0.05 %)

There were problems here!

See here

Windows jobs work fine.

This is a test introduced after 4.0.0a. Travis doesn't complain. It's possible that the conda-forge build uses more cores or something.

This isn't going to be easy to debug, but can people run the test with release_4.0.0 and report back?
@danieldeidda @ashgillman @rijobro

@rijobro
Copy link
Collaborator

rijobro commented Apr 23, 2020

Successfully built, ran all ctests and ran run_tests.sh on my MacOS and 24 core linux (in case you were worried about many cores).
On linux, KOSMAPOSL images agree to 0.0097%.

@rijobro
Copy link
Collaborator

rijobro commented Apr 23, 2020

Could it be possible that different CMake options could somehow have a knock-on effect on the KOSMAPOSL result?
Things that I can see possibly affecting the result:

  • Different CMake parameters
  • Different library versions

I notice that there is ${MPIRUN} in front of the KOSMAPOSL command. Could it be possible that it's an MPI problem?

@KrisThielemans
Copy link
Collaborator Author

KrisThielemans commented Apr 23, 2020

thanks @rijobro for checking. It's reassuring!

There's nothing special about the CMake options for the conda build:
https://github.com/conda-forge/stir-feedstock/blob/cd857b98c5bf38eb9fef3b6e96a26675144d7eb6/recipe/build.sh

${MPIRUN} will be empty. The conda build doesn't enable MPI, only OPENMP.

Of course, library dependencies are a worry, and they're going to be different for conda. I'd have hoped we'd be independent of that, but who knows. a mystery.

@KrisThielemans
Copy link
Collaborator Author

KrisThielemans commented May 9, 2020

@KrisThielemans
Copy link
Collaborator Author

And now I've done a build on my VM using conda build. That works fine. So I still don't know what's going on on the conda Azure build.

@KrisThielemans
Copy link
Collaborator Author

This problem has disappeared, so closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants