cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

zeland
Journeyman III

Running two instance of program on two different ATI devices

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.

0 Likes
6 Replies
genaganna
Journeyman III

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.

 

Are you handling events properly?  Please looks at SimpleMultiDevice sample or send your code to streamdeveloper@amd.com

0 Likes

I've seen SimpleMuiltiDevice and i think i'm handling events propertly. Ok, i've sent.

0 Likes

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.

 

0 Likes

ATI dirver 10.8 and sdk 2.2 is not work properly too.

0 Likes

zeland,

Do you still face the issue with with SDK 2.3?

 

0 Likes

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.

 

0 Likes