-
Notifications
You must be signed in to change notification settings - Fork 31
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
crambin test fails on s390x #78
Comments
I think I know what's wrong here: the s390x is a big-endian machine, whereas most modern processors (i.e. x86) are little-endian. This is example is reading a binary restart file, and it is presumably endian-dependent and failing to read the file correctly. "OLDENS" is part of the error message of detecting a "corrupt" restart file. I can rewrite this restart feature to be endian-independent, but it won't be an immediate fix. Alternatively, I could try to use CMake's system for detecting endian-ness and only run this test on little-endian machines, or figure out how to convert the restart file and have a separate big-endian version of the test prepared. Is there a system to suppress specific combinations of tests and systems in the Fedora test process? |
Yes, I can apply a platform dependent patch that disables the tests on architectures it shouldn't be run on. |
I have a simple solution: I will rewrite the test to generate the binary restart file before reading it instead of loading a pre-generated restart file. Therefore, it will be generated with the same endianness as is read. We don't actually need restart files to be portable between machines of different endianness. The only downside is that the test is slower, since it has to run a full SCF cycle on a large protein rather than starting from a nearly-converged density matrix. |
https://kojipkgs.fedoraproject.org//work/tasks/7437/88727437/build.log
The text was updated successfully, but these errors were encountered: