Hi! On Tue, 14 Apr 2015 15:15:02 +0100, Julian Brown <jul...@codesourcery.com> wrote: > The other problem is that it appears that the ACC_DEVICE_TYPE > environment variable is not getting set properly on the target for (any > of) the OpenACC tests: this means a lot of the time the "wrong" plugin > is being tested, and means that the above tests (and several others) > still fail. That will apparently need some more engineering (on our > part).
This should be working fine for "local" testing (that is, build-tree testing, without a remote board). Setting/communicating environment variables to remote boards (which we use a lot for our internal testing) indeed does not work in DejaGnu. This has been reported several times in the last years, by different people, but nobody ever came up with a solution that was sufficiently generic so that was acceptable for inclusion. (Need a way to specify whether environment variables should be set for the host and/or target system, and so on.) For the problem at hand, I once had a different suggestion, which I'm paraphrasing here: the existing code should be changed such that when -foffload=nvptx,intelmic,... is specified (also considering a comple-time default value based on --enable-offload-targets=[...]), the first offloading target (nvptx in my example) is the one that is used by default (acc_device_default) with OpenACC, and for OpenMP as device ID 0, and so on. That way, we could compile the libgomp test cases with -foffload=$offload_target_openacc (see libgomp/testsuite/libgomp.oacc-c/c.exp for context), and wouldn't have to care about the ACC_DEVICE_TYPE environment variable anymore. Does that make sense? Grüße, Thomas
pgpEHUSQ73e15.pgp
Description: PGP signature