I am developing my application so that it runs on multiple CUDA devices of different types, a workload divider makes sure that the fastest GPU gets the highest amount of work. It all appeared to work quite well until some strange acces violation (cudaError_enum at memory location…) error occured. Now I did some reading (I know, should have done it before) and the manual actually states:
The use of multiple GPUs as CUDA devices by an application running on a multi-
GPU system is only guaranteed to work if theses GPUs are of the same type.
The program seemed to work OK in the beginning but now fails for larger inputs. I have tried to find the source of the error but it occurs at random (after 5 minutes or after 2 hours) although it seems that it fails in the same part of the code.
I wondered if anybody tried to create an application that runs on multiple GPU’s of different types and encountered any problems. I dont want to chase a bug that is caused because I am doing something which is not allowed. Could this error really be the result of my program running on multiple GPU’s of different types? Maybe that in the future this will actually be allowed/supported?
Any feedback is appreciated,