Hi,
Sebastian Galindo wrote:
- How do you test support for different devices or targets? I assume
each
target or device requires a specific hardware configuration.
When adding generic support for feature, just testing with any offload
device usually works fine. For Nvidia-specific parts, of course an
Nvidia GPU is required and for AMD-specific code an AMD GPU. (And
depending on specific features, not all will do, e.g. for unified-shared
memory, it helps to be able to test with one which supports it and one
which doesn't.)
[If you have a specific piece of code that you want us to test, tell us.]
Otherwise, for Nvidia GPUs, there is also
https://portal.cfarm.net/news/56 + https://gcc.gnu.org/wiki/CompileFarm
The following is for post-commit issue detection. Obviously, detecting
it before is better, but it does not always work, esp. if it only occurs
on rarer systems:
At BayLibre, we have a weekly job that tests AMD + Nvidia with the usual
GCC testsuite and a bit more – and if we spot a regression, we report
it. Additionally, we run it occasionally with some other hardware than
the one used by that weekly run. And there are other users than run the
code occasionally with offloading.
For the non-offload parts of the tests (host fallback, not related-to
offload code etc.) there are many that build GCC for the weirdest
machines + run the testsuite on it. If it fails, they will report back.
Tobias