OpenCL Astropulse on Linux, high CPU usage

Message boards : Number crunching : OpenCL Astropulse on Linux, high CPU usage
Message board moderation

To post messages, you must log in.

AuthorMessage
Profile ivan
Volunteer tester
Avatar

Send message
Joined: 5 Mar 01
Posts: 783
Credit: 348,560,338
RAC: 223
United Kingdom
Message 1385537 - Posted: 28 Jun 2013, 20:45:22 UTC
Last modified: 28 Jun 2013, 20:46:58 UTC

Is there anything wrong with this picture?

top - 21:32:22 up 2 days, 12:34,  1 user,  load average: 5.50, 5.55, 5.55
Tasks: 140 total,   6 running, 134 sleeping,   0 stopped,   0 zombie
Cpu(s):  7.0%us, 15.1%sy, 77.9%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2051072k total,  1759512k used,   291560k free,   493744k buffers
Swap:  8008364k total,        0k used,  8008364k free,   705736k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND           
 7826 ivan      30  10  129m  42m  12m R  100  2.1 229:03.85 astropulse_6.07    
 7804 ivan      39  19 42432  39m   16 R   81  2.0 171:49.80 setiathome_7.01    
 7838 ivan      39  19  164m  96m   12 R   72  4.8 146:54.82 setiathome_7.01    
 7749 ivan      39  19  107m  39m   12 R   71  2.0 210:45.58 setiathome_7.01    
 7794 ivan      39  19  106m  38m   12 R   47  1.9 179:47.20 setiathome_7.01    
 2637 root      20   0  136m  38m  19m S   28  1.9   1079:42 Xorg               

It's this system, a Core2 Quad with an old 8500 GT video card that I never though fast enough to try running CUDA on. But, the new regime has decided it can run OpenCL and is sending it AP work to run alongside the CPUs.

As you can see, it's reporting 100% CPU for the AP task as well as significant extra CPU for Xorg (the percentage can go up to 80%, sometimes down to 1 or 2). It's running Ubuntu 12.04.

I guess the main thing is whether it is providing greater throughput in this situation than with CPU alone. I'm tempted to let it run for a while and see what its RAC does before banning it from GPU work -- I have an identical system (with a different Linux and video card) to compare with, and they've always been neck-and-neck heretofore.
ID: 1385537 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1385549 - Posted: 28 Jun 2013, 21:11:10 UTC - in response to Message 1385537.  
Last modified: 28 Jun 2013, 21:11:25 UTC

I see high CPU usage on own Linux host too.
On Windows there are old drivers that allow to avoid high CPU usage for OpenCL.
maybe same applies to Linux too?
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1385549 · Report as offensive
TBar
Volunteer tester

Send message
Joined: 22 May 99
Posts: 5204
Credit: 840,779,836
RAC: 2,768
United States
Message 1385562 - Posted: 28 Jun 2013, 21:22:46 UTC - in response to Message 1385549.  
Last modified: 28 Jun 2013, 21:36:48 UTC

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;


Open Hardware Monitor
ID: 1385562 · Report as offensive
Profile ivan
Volunteer tester
Avatar

Send message
Joined: 5 Mar 01
Posts: 783
Credit: 348,560,338
RAC: 223
United Kingdom
Message 1385574 - Posted: 28 Jun 2013, 21:59:51 UTC - in response to Message 1385562.  

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;

Open Hardware Monitor

Hmm, I do have gkrellm on that system; I wonder if it can be persuaded to monitor the GPU.
Just remembered that I do have CUDA 4.0 on the system, from when I was trying to get my digital hologram reconstruction software running:
ivan@quad-server:~ $ nvidia-smi 
Fri Jun 28 22:57:32 2013       
+------------------------------------------------------+                       
| NVIDIA-SMI 5.319.32   Driver Version: 319.32         |                       
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce 8500 GT     Off  | 0000:02:00.0     N/A |                  N/A |
| 30%   85C  N/A     N/A /  N/A |       71MB /   511MB |     N/A      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Compute processes:                                               GPU Memory |
|  GPU       PID  Process name                                     Usage      |
|=============================================================================|
|    0            Not Supported                                               |
+-----------------------------------------------------------------------------+

ID: 1385574 · Report as offensive
Urs Echternacht
Volunteer tester
Avatar

Send message
Joined: 15 May 99
Posts: 692
Credit: 135,197,781
RAC: 211
Germany
Message 1385588 - Posted: 28 Jun 2013, 22:59:00 UTC - in response to Message 1385562.  

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;

...
Open Hardware Monitor

Thanks for that hint. Do you know if it will also show GPU load for NV GPUs ? It is (maybe) the first one with a GUI for Linux.

For ATI/AMD GPUs the GPU load can be displayed on the commandline using the driver configuration commandline tool aticonfig. The command

> aticonfig --adapter=all --odgc --odgt

will show actual frequencies, temperatures and GPU loads of all installed ATI/AMD GPUs working with that driver.
_\|/_
U r s
ID: 1385588 · Report as offensive
Profile arkayn
Volunteer tester
Avatar

Send message
Joined: 14 May 99
Posts: 4438
Credit: 55,006,323
RAC: 0
United States
Message 1385591 - Posted: 28 Jun 2013, 23:02:22 UTC - in response to Message 1385588.  

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;

...
Open Hardware Monitor

Thanks for that hint. Do you know if it will also show GPU load for NV GPUs ? It is (maybe) the first one with a GUI for Linux.

For ATI/AMD GPUs the GPU load can be displayed on the commandline using the driver configuration commandline tool aticonfig. The command

> aticonfig --adapter=all --odgc --odgt

will show actual frequencies, temperatures and GPU loads of all installed ATI/AMD GPUs working with that driver.


I will try tomorrow after I get off work on my 650Ti.


ID: 1385591 · Report as offensive
EdwardPF
Volunteer tester

Send message
Joined: 26 Jul 99
Posts: 389
Credit: 236,772,605
RAC: 374
United States
Message 1385657 - Posted: 29 Jun 2013, 3:45:51 UTC - in response to Message 1385591.  

I am using windows 7 and nvidia 560 ti and am new to AP.

Since I started I am consuming 1 cpu per AP WU run.

CPU time ~= wall time.

3054354982 1258059942 27 Jun 2013, 23:59:08 UTC 29 Jun 2013, 3:06:05 UTC Completed and validated 3,057.43 3,044.92 604.14 AstroPulse v6 Anonymous platform (NVIDIA GPU)
3054250558 1269400209 27 Jun 2013, 22:31:06 UTC 29 Jun 2013, 1:20:19 UTC Completed and validated 3,082.32 3,073.61 671.94 AstroPulse v6 Anonymous platform (NVIDIA GPU)
3053962976 1270717922 27 Jun 2013, 16:19:30 UTC 28 Jun 2013, 19:34:03 UTC Completed and validated 3,407.61 3,402.23 703.03 AstroPulse v6 Anonymous platform (NVIDIA GPU)
3053960500 1257887012 27 Jun 2013, 16:03:10 UTC 28 Jun 2013, 18:37:27 UTC Completed and validated 4,098.92 4,093.75 718.38 AstroPulse v6 Anonymous platform (NVIDIA GPU)

I ASSUME this correct behavior.

Ed F
ID: 1385657 · Report as offensive
Profile Mike Special Project $75 donor
Volunteer tester
Avatar

Send message
Joined: 17 Feb 01
Posts: 34253
Credit: 79,922,639
RAC: 80
Germany
Message 1385723 - Posted: 29 Jun 2013, 7:11:40 UTC

Yes, Eduuard it is for nvidia.



With each crime and every kindness we birth our future.
ID: 1385723 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1396667 - Posted: 30 Jul 2013, 21:46:52 UTC - in response to Message 1385537.  
Last modified: 30 Jul 2013, 22:01:37 UTC

For X11 load You could try disabling the "Sync to vblank" in NVIDIA X Server Settings (X Screen 0 - OpenGL settings).

The AP in linux NVIDIA has a high CPU usage. I wonder if this would help:

https://bitcointalk.org/index.php?topic=181328.0

I downloaded and compiled and put it in my boinc startup script like this:

        ...
        daemon --check $BOINCEXE --user $BOINCUSER +10 "LD_PRELOAD=~boinc/projects/setiathome.berkeley.edu/libsleep.so $B\
OINCEXE $BOINCOPTS --dir $BOINCDIR >>$LOGFILE 2>>$ERRORLOG &" >& /dev/null
        ...


I have not had an opportunity to check wheter it helps since I have not had any AP tasks after the modification.
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1396667 · Report as offensive
Urs Echternacht
Volunteer tester
Avatar

Send message
Joined: 15 May 99
Posts: 692
Credit: 135,197,781
RAC: 211
Germany
Message 1396723 - Posted: 30 Jul 2013, 22:56:31 UTC - in response to Message 1396667.  

Is the -use_sleep commandline switch not working with AP on NV ?

No effect at all ?
_\|/_
U r s
ID: 1396723 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1396753 - Posted: 31 Jul 2013, 0:13:06 UTC - in response to Message 1396723.  
Last modified: 31 Jul 2013, 0:16:01 UTC

I'll have to check that out too when I get some AP tasks. I did not know that existed.
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1396753 · Report as offensive
Bernd Noessler

Send message
Joined: 15 Nov 09
Posts: 99
Credit: 52,635,434
RAC: 0
Germany
Message 1396867 - Posted: 31 Jul 2013, 5:11:46 UTC - in response to Message 1396667.  


I have not had an opportunity to check wheter it helps since I have not had any AP tasks after the modification.

I have tried that some days ago. It will bring down your CPU load
(in my case below 5%).
But the GPU performance penalty is very high.

ID: 1396867 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1397069 - Posted: 31 Jul 2013, 17:53:04 UTC - in response to Message 1396667.  
Last modified: 31 Jul 2013, 18:14:36 UTC

(replied to my own message)

http://setiathome.berkeley.edu/workunit.php?wuid=1275892000

I have not had time to investigate other effects, but the libsleep.so did reduce the cpu time.

btw. The AP took 20 minutes to finish along with 2 MB on same GPU and 3 MB on an other and 5 (edit: thre may have been 6 since only 1 AP 0.5 CPU was running) MB on CPU (i7-3930K ht on use 50% of cpus BOINC).

Only 6 cores were 100% active during the run according to SystemMonitor.
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1397069 · Report as offensive
Profile robl

Send message
Joined: 8 Dec 12
Posts: 47
Credit: 2,587,572
RAC: 0
United States
Message 1403603 - Posted: 15 Aug 2013, 20:11:19 UTC - in response to Message 1385591.  
Last modified: 15 Aug 2013, 20:12:19 UTC

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;

...
Open Hardware Monitor

Thanks for that hint. Do you know if it will also show GPU load for NV GPUs ? It is (maybe) the first one with a GUI for Linux.

For ATI/AMD GPUs the GPU load can be displayed on the commandline using the driver configuration commandline tool aticonfig. The command

> aticonfig --adapter=all --odgc --odgt

will show actual frequencies, temperatures and GPU loads of all installed ATI/AMD GPUs working with that driver.


I will try tomorrow after I get off work on my 650Ti.


arkayn,

did you ever get a chance to try the "open hardware monitor" on your 650Ti?
ID: 1403603 · Report as offensive
Profile arkayn
Volunteer tester
Avatar

Send message
Joined: 14 May 99
Posts: 4438
Credit: 55,006,323
RAC: 0
United States
Message 1403614 - Posted: 15 Aug 2013, 20:17:37 UTC - in response to Message 1403603.  

I'm running a 'new' ATI card on Linux and it's CPU usage is much higher than I would think it should be. I'm about to try and change an XP host to Linux, so, I'll see how the 6850 does in Linux.

BTW, I found an App that shows GPU load in Linux. I know it says Windows, but, it runs in Ubuntu with the MonoDevelop package. It's the first one I've found;

...
Open Hardware Monitor

Thanks for that hint. Do you know if it will also show GPU load for NV GPUs ? It is (maybe) the first one with a GUI for Linux.

For ATI/AMD GPUs the GPU load can be displayed on the commandline using the driver configuration commandline tool aticonfig. The command

> aticonfig --adapter=all --odgc --odgt

will show actual frequencies, temperatures and GPU loads of all installed ATI/AMD GPUs working with that driver.


I will try tomorrow after I get off work on my 650Ti.


arkayn,

did you ever get a chance to try the "open hardware monitor" on your 650Ti?


I could never get it too work.

ID: 1403614 · Report as offensive

Message boards : Number crunching : OpenCL Astropulse on Linux, high CPU usage


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.