Add a test where the rate constants are calculated on the host, then all state data is copied to the device, the solve is performed, output is synched back to host.
Acceptance Criteria
Tests of the CUDA Rosenbrock solver are included in the test suite and pass for all analytical chemistry systems (doesn't include E5, HIRES, Oregonator)
CUDA Rosenbrock tests calculate rate constants on the host before solving on the device and then evaluating results back on the host
Ideas
Add SyncInputsToDevice() and SyncOutputsToHost() functions on micm::State that can be called before and after the ODE solve that copy matrix data in the State between the host and device
Add a test where the rate constants are calculated on the host, then all state data is copied to the device, the solve is performed, output is synched back to host.
Acceptance Criteria
Ideas
SyncInputsToDevice()
andSyncOutputsToHost()
functions onmicm::State
that can be called before and after the ODE solve that copy matrix data in the State between the host and device