I have system:
OpenSUSE 11.2 amd64, ATI driver 10.7, Stream SDK 2.2, 2x ATI HD 5870(connected in 1st and 3rd slots), NVIDIA GTX470(7th slot), ASUS P6T7 WS SuperComputer , i7 , 3x2GB 1066 DDR3. One monitor connected to each ATI card and noone to NVIDIA.
I've installed ATI and NVIDIA drivers . I've done aticonfig --adapter=all --initial -f.
I've login on init level 3 under "root" and done "startx" so i could see all 4 OpenCL devicesin ./CLinfo. 1 NVIDIA 1 CPU and 2 ATI GPU after connecting on ssh under root.
I run my one OpenCL program in witch I choose OpenCL device to run.
if I run two instance of my program one on NVIDIA GPU and one on ATI GPU, all works fine programs run parallel.
But if I run two instance of my program both on ATI GPU, IN PROFILING i could not see difference execution time of kernels but total working time of program increases in about 2 times.
I've attempted to set
"export DISPLAY=:0.0" for one instance and "DISPLAY=:0.1" to another in this case my programs see only one ATI GPU device for each instance.
in case "export DISPLAY=:0" for both instance each of them see both ATI GPU card so I can choose one gpu for each instance.
But both case didn't solve my problem. Total execution time increased in about 2 times.
Are you handling events properly? Please looks at SimpleMultiDevice sample or send your code to streamdeveloper@amd.com
Originally posted by: zeland I have system:
OpenSUSE 11.2 amd64, ATI driver 10.7, Stream SDK 2.2, 2x ATI HD 5870(connected in 1st and 3rd slots), NVIDIA GTX470(7th slot), ASUS P6T7 WS SuperComputer , i7 , 3x2GB 1066 DDR3. One monitor connected to each ATI card and noone to NVIDIA.
I've installed ATI and NVIDIA drivers . I've done aticonfig --adapter=all --initial -f.
I've login on init level 3 under "root" and done "startx" so i could see all 4 OpenCL devicesin ./CLinfo. 1 NVIDIA 1 CPU and 2 ATI GPU after connecting on ssh under root.
I run my one OpenCL program in witch I choose OpenCL device to run.
if I run two instance of my program one on NVIDIA GPU and one on ATI GPU, all works fine programs run parallel.
But if I run two instance of my program both on ATI GPU, IN PROFILING i could not see difference execution time of kernels but total working time of program increases in about 2 times.
I've attempted to set
"export DISPLAY=:0.0" for one instance and "DISPLAY=:0.1" to another in this case my programs see only one ATI GPU device for each instance.
in case "export DISPLAY=:0" for both instance each of them see both ATI GPU card so I can choose one gpu for each instance.
But both case didn't solve my problem. Total execution time increased in about 2 times.
I've seen SimpleMuiltiDevice and i think i'm handling events propertly. Ok, i've sent.
I find workaroud (awfull) use sdk 2.1 and driver 10.7(not beta withoout logo). In this case i able to run two instance of program on different ATI device BUT kernels work in 1.7 time slower.
ATI dirver 10.8 and sdk 2.2 is not work properly too.
zeland,
Do you still face the issue with with SDK 2.3?
Yes, without export GPU_USE_SYNC_OBJECTS=1 my programms are not work on full speed.
stream sdk 2.3, 10.12, openSuse 11.2 x64.