0

I'm running debian jessie and lately switched from fglrx video driver to free ati radeon driver. I've managed to set it up but I've noticed xorg is causing high CPU load: 30-50%.
Googling a little bit, looking at htop and turning off processes I've found that conky is causing that xorg high CPU usage. Default /etc/conky.conf is OK and CPU load stays no higher than 2%.
My custom ~/.conkyrc worked fine and did not caused that high CPU load on fglrx 15.9 driver. So I presume that free radeon driver does not like some settings.
I attach my ~/.conkyrc below. Maybe someone could look at it and tell me what am I missing?

Kernel: Linux 3.16.0-4-amd64 x86_64 Debian
X server: X.Org X Server 1.16.4
Radeon module version: 7.5.0
Conky version: 1.9.0-6

# conky configuration
background no
use_xft yes
xftfont DejaVu Sans Mono:size=8
xftalpha 1
out_to_console no
update_interval 1 
total_run_times 0
own_window yes
own_window_type normal
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 300 760
maximum_width 300
draw_shades no
draw_outline no
draw_borders no
borders 10
border_inner_margin 0
default_color white
default_shade_color black
default_outline_color white
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right
gap_x 4
gap_y 5
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
if_up_strictness link
use_spacer left

TEXT
${color green}${time %a, }${color }${time %Y-%m-%d}${alignr}${color green}${time %Z, }${color }${time %H:%M:%S}  
${color green}UpTime: ${color }${alignr}$uptime  
${color green}Kern:${color }${alignr}$kernel  
${color green}CPU0:${color }${cpu cpu0}% ${acpitemp}°C ${goto 153}${color green}CPU1:${color }${cpu cpu1}% ${acpitemp}°C  
${color dimgrey}${cpugraph cpu0 20,149 006400 00ff00} ${goto 153}${cpugraph cpu1 20,149 006400 00ff00}  
${color green}Load: ${color }$loadavg  
${color green}Processes: ${color }$processes  
${color green}Running:   ${color }$running_processes  

${color green}Top CPU: ${goto 153}${color green}Top MEM:  
${color yellow}${top name 1}${top cpu 1}${goto 153}${color yellow}${top_mem name 1}${top_mem mem 1}  
${color lightgrey}${top name 2}${top cpu 2}${goto 153}${color lightgrey}${top_mem name 2}${top_mem mem 2}  
${color lightgrey}${top name 3}${top cpu 3}${goto 153}${color lightgrey}${top_mem name 3}${top_mem mem 3}  
${color lightgrey}${top name 4}${top cpu 4}${goto 153}${color lightgrey}${top_mem name 4}${top_mem mem 4}  

${color green}MEM: ${color dimgrey}${goto 50}${membar 11,150}  
${color }${voffset -13}${goto 60}$mem/$memmax${goto 170}${memperc}%  
${color green}${voffset 2}SWAP:${color dimgrey}${goto 50}${swapbar 11,150}  
${color }${voffset -13}${goto 60}$swap/$swapmax${goto 170}${swapperc}%  

${color green}HDD:${color }${diskio_read /dev/sda} ${goto 153}${diskio_write /dev/sda} ${alignr}${hddtemp}°C  
${color dimgrey}${diskiograph_read /dev/sda 20,149 006400 00ff00 100000} ${goto 153}${diskiograph_write 20,149 006400 00ff00 100000}  
${color green}ROOT:${color dimgrey}${goto 50}${fs_bar 11,150 /}  
${color }${voffset -13}${goto 60}${fs_size /}/${fs_free /}${goto 170}${fs_used_perc /}%${goto 200}  
${color green}${voffset 2}USR:${color dimgrey}${goto 50}${fs_bar 11,150 /usr}  
${color }${voffset -13}${goto 60}${fs_size /usr}/${fs_free /usr}${goto 170}${fs_used_perc /usr}%${goto 200}  
${color green}${voffset 2}VAR:${color dimgrey}${goto 50}${fs_bar 11,150 /var}  
${color }${voffset -13}${goto 60}${fs_size /var}/${fs_free /var}${goto 170}${fs_used_perc /var}%${goto 200}  
${color green}${voffset 2}TMP:${color dimgrey}${goto 50}${fs_bar 11,150 /tmp}  
${color }${voffset -13}${goto 60}${fs_size /tmp}/${fs_free /tmp}${goto 170}${fs_used_perc /tmp}%${goto 200}  
${color green}${voffset 2}HOME:${color dimgrey}${goto 50}${fs_bar 11,150 /home}  
${color }${voffset -13}${goto 60}${fs_size /home}/${fs_free /home}${goto 170}${fs_used_perc /home}%${goto 200}  
${color green}${voffset 2}DATA:${color dimgrey}${goto 50}${fs_bar 11,150 /mnt/data}  
${color }${voffset -13}${goto 60}${fs_size /mnt/data}/${fs_free /mnt/data}${goto 170}${fs_used_perc /mnt/data}%${goto 200}  

${if_up wlan0}${color green}NET: ${color yellow}wlan0 ${alignr}${addrs wlan0}  
${color }${color red}Down: ${color }${downspeedf wlan0} KiB/s${goto 153}${color royalblue}Up: ${color }${upspeedf wlan0} KiB/s  
${color dimgrey}${downspeedgraph wlan0 20,149 8b0000 ff0000 6104}${goto 153}${upspeedgraph wlan0 20,149 00008b 4169e1 1221}${else}${voffset -13}${endif}  
${if_up eth0}${color green}NET: ${color yellow}eth0 ${alignr}${addrs eth0}  
${color }${color red}Down: ${color }${downspeedf eth0} KiB/s${goto 153}${color royalblue}Up: ${color }${upspeedf eth0} KiB/s  
${color dimgrey}${downspeedgraph eth0 20,149 8b0000 ff0000 6104}${goto 153}${upspeedgraph eth0 20,149 00008b 4169e1 6104}${else}${voffset -13}${endif}  
${if_up ppp0}${color green}NET: ${color yellow}ppp0 ${alignr}${addrs ppp0}  
${color }${color red}Down: ${color }${downspeedf ppp0} KiB/s${goto 153}${color royalblue}Up: ${color }${upspeedf ppp0} KiB/s  
${color dimgrey}${downspeedgraph ppp0 20,149 8b0000 ff0000 64}${goto 153}${upspeedgraph ppp0 20,149 00008b 4169e1 64}${else}${voffset -13}${endif}  

${color green}BAT0:${color dimgrey}${goto 50}${battery_bar 11,150 BAT0}  
${color }${voffset -13}${goto 60}${battery_short BAT0}${alignr}${battery_time BAT0}  
1
  • if the driver is slow then the driver is slow. make your conky window smaller for lower xorg usage. Nov 3, 2016 at 11:21

1 Answer 1

0

Well, your comment was not actual answer but gave me a hint. I dug deeper into man radeon and https://wiki.archlinux.org/index.php/ATI (debian wiki is rather enigmatic or outdated: still recommends EXA for performance tunning), looked at Xorg.0.log and found the reason:
Xorg auto detection loads EXA acceleration method for pre-TAHITI GPUs (mine is ARUBA). And - indeed - EXA is slow.

So, the solution is custom /etc/X11/xorg.conf.d/20-radeon.conf which loads glamor acceleration method:

Section "Device"  
    Identifier  "Radeon"  
    Driver "radeon"  
    Option "AccelMethod" "glamor"  
    Option "DRI" "3"  
    Option "TearFree" "on"  
EndSection  

NOTE: I've found some articles that DRI3 requires Xorg version 1.17 or higher and ati/radeon driver 7.6 or higher so don't be surprised if it doesn't work.
Now Xorg is using no more than 2% CPU. Problem solved.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .