[Intel-gfx] High power use from Xorg on skylake dual graphics with intel

Marc MERLIN marc_xorg at merlins.org
Fri Feb 26 06:39:03 UTC 2016


Can you help me find out why my laptop uses about 6W extra when X is
running with the intel graphics running?
Are there special kernel options I can give to the i915 driver to use less power,
or include in xorg.conf to do the same?

Is there also a way to make sure my nvidia chip I'm not using, is truly
off and not using power?

Details:
Laptop: Thinkpad skylake based P70 with dual graphics
legolas:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Device 191b (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GM107GLM [Quadro M600M] (rev a2)
Kernel: 4.4.2

Bios is setup for hybrid graphics instead of discrete since I'd like to
try not to use the nvidia chip.
I've disabled the nouveau kernel module and the nouveau X driver
(otherwise they load and talk to the nvidia card even if it doesn't
drive the display).
I did note that battery use wasn't good with them loaded either, but
maybe I need to do something special to make sure they're really off,
not sure.

When X wasn't running, in a text console, I was able to get this from
powertop:
LCD Off: 8.8W
LCD On:  13W

Sadly, when running X, and switch back to text terminal, I then get:
LCD Off: 14.2
LCD On:  17W

And inside X, I get:
The battery reports a discharge rate of 17.7 W
The estimated remaining time is 3 hours, 22 minutes

Summary: 113.6 wakeups/second,  0.0 GPU ops/seconds, 0.0 VFS ops/sec and 11.8% CPU use

Power est.              Usage       Events/s    Category       Description
  5.57 W     10.0%                      Device         Display backlight
  216 mW      2.8 ms/s      17.1        Process        /usr/bin/enlightenment
  172 mW    363.3 µs/s      13.8        Timer          tick_sched_timer
  164 mW    135.6 µs/s      13.2        Process        [rcu_sched]
  131 mW    101.7 ms/s       2.8        Process        powertop


If I let the LCD turn off:
The battery reports a discharge rate of 14.5 W
The estimated remaining time is 4 hours, 2 minutes

Summary: 108.9 wakeups/second,  0.0 GPU ops/seconds, 0.0 VFS ops/sec and 11.5% CPU use

Power est.              Usage       Events/s    Category       Description
  168 mW    337.7 µs/s      13.8        Timer          tick_sched_timer
  152 mW      1.8 ms/s      12.3        Process        /usr/bin/enlightenment
  134 mW     99.8 µs/s      11.0        Process        [rcu_sched]
  108 mW     97.9 ms/s       1.1        Process        powertop

In other words, whether I'm in X or on a text console, apparently having X run
causes a fairly high battery draw (4-6W extra).

Currently, I'm booting with:
[    0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-4.4.2-amd64-i915-volpreempt-20160214bc2  usbcore.autosuspend=1 acpi_backlight=vendor pci=noaer
[    1.721963] [drm] Initialized i915 1.6.0 20151010 for 0000:00:02.0 on minor 0
[    2.908854] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device

i915 is built in the kernel.
xserver-xorg-video-intel 2:2.99.917+git20151217-1~exp1
xorg 1:7.7+12

Xorg log says:
[  1109.972] (II) xfree86: Adding drm device (/dev/dri/card0)
[  1109.975] (--) PCI:*(0:0:2:0) 8086:191b:17aa:222d rev 6, Mem @ 0xd2000000/16777216, 0x60000000/536870912, I/O @ 0x00006000/64
[  1109.975] (--) PCI: (0:1:0:0) 10de:13b2:17aa:222d rev 162, Mem @ 0xd3000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00005000/128, BIOS @ 0x????????/524288
[  1109.975] (II) LoadModule: "glx"
[  1109.975] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  1109.976] (II) Module glx: vendor="X.Org Foundation"
[  1109.976] 	compiled for 1.17.3, module version = 1.0.0
[  1109.976] 	ABI class: X.Org Server Extension, version 9.0
[  1109.976] (**) AIGLX enabled
[  1109.976] (==) Matched intel as autoconfigured driver 0
[  1109.976] (==) Matched intel as autoconfigured driver 1
[  1109.976] (==) Matched modesetting as autoconfigured driver 2
[  1109.976] (==) Matched fbdev as autoconfigured driver 3
[  1109.976] (==) Matched vesa as autoconfigured driver 4
[  1109.976] (==) Assigned the driver to the xf86ConfigLayout
[  1109.976] (II) LoadModule: "intel"
[  1109.976] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[  1109.976] (II) Module intel: vendor="X.Org Foundation"
[  1109.976] 	compiled for 1.17.3, module version = 2.99.917
[  1109.976] 	Module class: X.Org Video Driver
[  1109.976] 	ABI class: X.Org Video Driver, version 19.0
[  1109.976] (II) LoadModule: "modesetting"
[  1109.976] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[  1109.977] (II) Module modesetting: vendor="X.Org Foundation"
[  1109.977] 	compiled for 1.17.3, module version = 1.17.3
[  1109.977] 	Module class: X.Org Video Driver
[  1109.977] 	ABI class: X.Org Video Driver, version 19.0
[  1109.977] (II) LoadModule: "fbdev"
[  1109.977] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[  1109.977] (II) Module fbdev: vendor="X.Org Foundation"
[  1109.977] 	compiled for 1.17.1, module version = 0.4.4
[  1109.977] 	Module class: X.Org Video Driver
[  1109.977] 	ABI class: X.Org Video Driver, version 19.0
[  1109.977] (II) LoadModule: "vesa"
[  1109.977] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
[  1109.977] (II) Module vesa: vendor="X.Org Foundation"
[  1109.977] 	compiled for 1.17.3, module version = 2.3.4
[  1109.977] 	Module class: X.Org Video Driver
[  1109.977] 	ABI class: X.Org Video Driver, version 19.0
[  1109.977] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
	i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
	915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
	Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
	GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[  1109.977] (II) intel: Driver for Intel(R) HD Graphics: 2000-6000
[  1109.977] (II) intel: Driver for Intel(R) Iris(TM) Graphics: 5100, 6100
[  1109.977] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics: 5200, 6200, P6300
[  1109.977] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
(...)

[  1110.007] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20151010
[  1110.007] (II) intel(0): SNA compiled: xserver-xorg-video-intel 2:2.99.917+git20151217-1~exp1 (Timo Aaltonen <tjaalton at debian.org>)
[  1110.007] (II) intel(0): SNA compiled for use with valgrind
[  1110.007] (WW) Falling back to old probe method for modesetting
[  1110.007] (WW) Falling back to old probe method for fbdev
[  1110.007] (II) Loading sub module "fbdevhw"
[  1110.007] (II) LoadModule: "fbdevhw"
[  1110.008] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[  1110.008] (II) Module fbdevhw: vendor="X.Org Foundation"
[  1110.008] 	compiled for 1.17.3, module version = 0.0.2
[  1110.008] 	ABI class: X.Org Video Driver, version 19.0
[  1110.008] (WW) Falling back to old probe method for vesa
[  1110.008] (--) intel(0): gen9 engineering sample
[  1110.008] (--) intel(0): CPU: x86-64, sse2, sse3, ssse3, sse4.1, sse4.2, avx, avx2; using a maximum of 4 threads
[  1110.008] (II) intel(0): Creating default Display subsection in Screen section
	"Default Screen Section" for depth/fbbpp 24/32
[  1110.008] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[  1110.008] (==) intel(0): RGB weight 888
[  1110.008] (==) intel(0): Default visual is TrueColor
[  1110.009] (II) intel(0): Output eDP1 has no monitor section
[  1110.028] (--) intel(0): Found backlight control interface intel_backlight (type 'raw') for output eDP1
[  1110.028] (II) intel(0): Enabled output eDP1
[  1110.028] (--) intel(0): Using a maximum size of 256x256 for hardware cursors
[  1110.028] (II) intel(0): Output VIRTUAL1 has no monitor section
[  1110.028] (II) intel(0): Enabled output VIRTUAL1
[  1110.028] (--) intel(0): Output eDP1 using initial mode 3840x2160 on pipe 0
[  1110.028] (==) intel(0): TearFree disabled
[  1110.028] (==) intel(0): DPI set to (96, 96)
(...)
[  1110.029] (==) Depth 24 pixmap format is 32 bpp
[  1110.029] (II) intel(0): SNA initialized with generic backend
[  1110.029] (==) intel(0): Backing store enabled
[  1110.029] (==) intel(0): Silken mouse enabled
[  1110.029] (II) intel(0): HW Cursor enabled
[  1110.029] (II) intel(0): RandR 1.2 enabled, ignore the following RandR disabled message.
[  1110.029] (==) intel(0): DPMS enabled
[  1110.029] (==) intel(0): Display hotplug detection enabled
[  1110.029] (II) intel(0): Textured video not supported on this hardware or backend
[  1110.029] (II) intel(0): [DRI2] Setup complete
[  1110.029] (II) intel(0): [DRI2]   DRI driver: i965
[  1110.029] (II) intel(0): [DRI2]   VDPAU driver: va_gl
[  1110.029] (II) intel(0): direct rendering: DRI2 enabled
[  1110.029] (II) intel(0): hardware support for Present enabled
[  1110.029] (--) RandR disabled
[  1110.036] (II) SELinux: Disabled on system
[  1110.081] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[  1110.081] (II) AIGLX: enabled GLX_ARB_create_context
[  1110.081] (II) AIGLX: enabled GLX_ARB_create_context_profile
[  1110.081] (II) AIGLX: enabled GLX_EXT_create_context_es2_profile
[  1110.081] (II) AIGLX: enabled GLX_INTEL_swap_event
[  1110.081] (II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
[  1110.081] (II) AIGLX: enabled GLX_EXT_framebuffer_sRGB
[  1110.081] (II) AIGLX: enabled GLX_ARB_fbconfig_float
[  1110.081] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[  1110.081] (II) AIGLX: enabled GLX_ARB_create_context_robustness
[  1110.081] (II) AIGLX: Loaded and initialized i965
[  1110.081] (II) GLX: Initialized DRI2 GL provider for screen 0
[  1110.094] (II) intel(0): switch to mode 3840x2160 at 60.0 on eDP1 using pipe 0, position (0, 0), rotation normal, reflection none
[  1110.094] (II) intel(0): Setting screen physical size to 1016 x 571

Thanks,
Marc
-- 
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
                                      .... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/                         | PGP 1024R/763BE901


More information about the Intel-gfx mailing list