How do you prove what video card is really used on laptops with two cards?

Someone on fedoraforum has this lspci output:

 lspci -k | grep -iE -A 3 'display|vga'
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
        Subsystem: Lenovo Device 221e
        Kernel driver in use: i915
        Kernel modules: i915
--
01:00.0 VGA compatible controller: NVIDIA Corporation GK208M [GeForce GT 730M] (rev a1)
        Subsystem: Lenovo Device 221e
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia_drm, nvidia

So how can you prove that the Nvdia card is doing the work if the lspci shows both i915 and nvidia modules loaded? His systems inxi looks like this in the “G” section:
(note the closed driver is akmod-nvidia-470xx and Xorg is in use and not Wayland)


Graphics:
  Device-1: Intel 4th Gen Core Processor Integrated Graphics vendor: Lenovo
    driver: i915 v: kernel arch: Gen-7.5 ports: active: eDP-1 empty: DP-1,
    DP-2, HDMI-A-1, HDMI-A-2, VGA-1 bus-ID: 00:02.0 chip-ID: 8086:0416
  Device-2: NVIDIA GK208M [GeForce GT 730M] vendor: Lenovo driver: nvidia
    v: 470.239.06arch: Kepler pcie: speed: 2.5 GT/s lanes: 8 bus-ID: 01:00.0
    chip-ID: 10de:1290
  Device-3: Lite-On Integrated Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 bus-ID: 1-12:6 chip-ID: 04ca:7035
  Display: x11 server: X.Org v: 1.20.14 with: Xwayland v: 23.2.6
    compositor: kwin_x11 driver: X: loaded: modesetting,nvidia
    alternate: fbdev,nouveau,nv,vesa dri: crocus gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96
  Monitor-1: eDP-1 model: ChiMei InnoLux 0x15c3 res: 1920x1080 dpi: 142
    diag: 394mm (15.5")
  API: EGL v: 1.5 platforms: device: 0 drv: nvidia device: 1 drv: crocus
    device: 3 drv: swrast gbm: drv: crocus surfaceless: drv: crocus x11:
    drv: crocus inactive: wayland,device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 24.0.7 glx-v: 1.4
    direct-render: yes renderer: Mesa Intel HD Graphics 4600 (HSW GT2)
    device-ID: 8086:0416
  API: Vulkan v: 1.3.280 surfaces: xcb,xlib device: 0 type: integrated-gpu
    driver: N/A device-ID: 8086:0416 device: 1 type: discrete-gpu driver: N/A
    device-ID: 10de:1290 device: 2 type: cpu driver: N/A device-ID: 10005:0000

I was thinking the “Display:” section is what matters and that says “nvidia” but the lspci output makes me not so sure.

switcherooctl
intel_gpu_top
nvtop

In games that use DXVK you can do DXVK_HUD=full to get the GPU name

GPU top/perf tools can also make it pretty clear with GPU usage; NVIDIA has their own, and Intel has intel_gpu_top.

On Optimus laptops, I think this was more optimal: Chapter 35. PRIME Render Offload in which case environment variables like these can force NVIDIA (I set it specifically on game launchers only):

__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia