Skip to content

Conversation

@boegel
Copy link
Member

@boegel boegel commented Dec 13, 2019

I ran into problems with running the WRF 4.0.1 test cases (using the easyconfigs in easybuilders/easybuild-easyconfigs#7085) when too many cores were available.
Some tests were crashing because too many MPI ranks were used, and the domain size was too small...

It took me a while to realize why the tests were failing, because they were just exiting with exit code 1, not producing any output, so I've also enhanced the test step to read the rsl.error.0000 output file (from MPI rank 0) and include the output in the error message that is produced when the test failed to run.

…ontents of rsl.error.0000 output file in case test failed
test_cmd = "ulimit -s unlimited && ./ideal.exe && ./wrf.exe >rsl.error.0000 2>&1"

# regex to check for successful test run
re_success = re.compile("SUCCESS COMPLETE WRF")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why move this outside of run_test ??

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because there's no point in recompiling the same regex over and over again :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thought that would be it, but doesn't it have to be in self. then??
Still don't quite understand Python...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, should have looked at the whole file...
run_test is inside test_step, that explains it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

run_test is an inner method, sort of like a local variable in the test_step method (but it's a function, not a variable), so it has access to all local variables in test_step

Copy link
Contributor

@akesandgren akesandgren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@akesandgren
Copy link
Contributor

Going in, thanks @boegel!

@akesandgren akesandgren merged commit 04d46ff into easybuilders:develop Dec 14, 2019
@boegel boegel deleted the WRF_tests branch December 14, 2019 13:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants