When assigned to first GPU it works just OK.
One of host on that app tested uses 4 HD5970 GPUs.
App uses only 1 GPU so 4copies will be run to use all of them.
When first task assigned to first GPU no errors occured.
But all subsequent assignments end with error: CL_INVALID_PROGRAM_EXECUTABLE for first kernel call.
I use this code to select other than first GPUs:
EDIT: with new build it just caused driver restarts instead of any error.
When 1 app instance launched - all OK, when 2 - driver restart.
Microsoft Windows Server 2008 "R2"
Enterprise x64 Edition, (06.01.7600.00),
driver 1.4.636
device_id=devices[assigned_device]; cq = clCreateCommandQueue( context, device_id, CL_QUEUE_PROFILING_ENABLE, &err);