arbor icon indicating copy to clipboard operation
arbor copied to clipboard

Fix up our GPU back-end FVM/cable cell tests

Open halfflat opened this issue 6 years ago • 2 comments

They're a bit of a mess!

Ideally, any test currently that checks state or time evolution for cable cells should be able to run with both the cpu and gpu back-ends, and the built unit test should run them on both, if we're GPU-enabled and there is a GPU present.

halfflat avatar Jul 15 '19 08:07 halfflat

The alternative is to make two unit test runs: the runner sets some state or flag that determines the cpu or gpu execution context. Each specific test then runs with that context, and anything that is truly GPU-specific checks the context first.

halfflat avatar Feb 16 '21 13:02 halfflat

Our unit tests don't always go through the execution_context, there are specific parts of the backend code that are (or should be) explicitly tested on the GPU/CPU, for example: matrix assemble/solve and mechanism instantiation. Are those tests in a good state, or is one of the backends more covered than the other? Will it be enough (to your knowledge) to make sure that all existing unit tests that require an execution_context run twice with and without GPU support (when possible) or are there some hidden assumptions made in the code about the backend which will require refactoring/extending?

noraabiakar avatar Mar 01 '21 15:03 noraabiakar