TornadoVM icon indicating copy to clipboard operation
TornadoVM copied to clipboard

Extend the TestFields unittest with lazy and partial copy-out tests and fix reading offsets

Open mairooni opened this issue 1 year ago • 0 comments
trafficstars

Description

This PR extends the TestFields unittest by providing three new tests. The first test uses the DataRange object to implement a partial copy-out. The second uses the UNDER_DEMAND mode to lazily copy-out the output data. Finally, the third test is a combination of the two. In addition, the device offset in the reading function is fixed to read the full dataset from the device. The problem was that the device offset was set to always be equal to the header size, so only the first part of the dataset was copied back to the host.

Backend/s tested

Mark the backends affected by this PR.

  • [x] OpenCL
  • [x] PTX
  • [x] SPIRV

OS tested

Mark the OS where this PR is tested.

  • [x] Linux
  • [ ] OSx
  • [ ] Windows

Did you check on FPGAs?

If it is applicable, check your changes on FPGAs.

  • [ ] Yes
  • [x] No

How to test the new patch?

Run the three new tests: tornado-test -V uk.ac.manchester.tornado.unittests.fields.TestFields#testFieldsPartialCopyout tornado-test -V uk.ac.manchester.tornado.unittests.fields.TestFields#testFieldsLazyCopyout tornado-test -V uk.ac.manchester.tornado.unittests.fields.TestFields#testFieldsPartialLazyCopyout

mairooni avatar May 13 '24 12:05 mairooni