Dell XPS 15 runs hot on linux

8,242

Solution 1

This is what I do on my box. It is not a Dell XPS and I do not run openSUSE, so your mileage may vary. There are some steps that might be slightly different for openSUSE but you seem to know your way around. If you need any help just comment.

acpi_call is brought to us by Hybrid Graphics Linux. Visit here or follow this post for instructions to disable/ activate your discrete card . For me, I disabled the discrete card and only make use of the integrated card. This was the main culprit for the heat emissions.

Check your output of lspci -mvknn | grep -B8 i915. If it returns non-empty, you may add i915.i915_enable_rc6=1 i915.i915_enable_fbc=1 i915.lvds_downclock=1 to your boot parameters.

pcie_aspm=force can also be added if all PCIe hardware on the system supports Active State Power Management.

Please, use this options with care. This post explains what does each of these parameters do and their consequences.

Solution 2

I am still using opensuse 11.4, but I solved this problem (as well as the battery life) by using "bumblebee", a bit hard to configure but it really gets to manage notebooks (like my dell XPS 1502) with optimus technology.

Solution 3

Just yesterday I messed with an Dell XPS 15 w/ Ubuntu 11.10 that was also running very hot most of the time. I was able to make it chill out by installing laptop-mode-tools and cpufreqd using apt-get.

sudo apt-get install laptop-mode-tools cpufreqd cpufrequtils

Solution 4

I'm completely new to all of this stuff, but I found out my notebook has both intel and nvidia gpus. It is similar to the accepted answer - Still, I'm posting this to inform users who stumble upon this problem today. Do:

lspci -k|grep -iEA5 'vga|3d'
cat /etc/X11/xorg.conf

To find out if you have both dedicated and integrated cards - it should return some info containing the word 'intel' for vga and 'nvidia' for 3d.

Just like you, I did not need my nvidia card on linux (maybe in the future I will when I start exploring gpu computing). And when running with nvidia drivers laptop overheats, when running nouveau I experience other problems - not going to diverge on that. So I found out that you can swith to your intel gpu with sudo prime-select intel. Reboot and use sudo prime-select query and it should return intel - using intel GPU should stop the overheating just like the accepted answer, but the prime function to swith to intel now comes with the nvidia drivers. Use sudo prime-select nvidia if you want to switch back to nvidia.

Some people experience problems when switching back to nvidia, some ppl might not be able to switch to intel at all. But this worked on my dell xps 15 (9560). We're a couple years from the date of the original post, so it could be the PRIME technology is something new.

Share:
8,242

Related videos on Youtube

Breno Salgado
Author by

Breno Salgado

Updated on September 18, 2022

Comments

  • Breno Salgado
    Breno Salgado over 1 year

    I'm worried about my Dell XPS notebook.

    When I'm on Linux, its temperature is always higher than on Windows. I was facing some pretty ugly slowdowns earlier today and it shut itself down the first time today too (then I noticed it was really hot).

    I'm on openSuse 12.1 currently, but on Ubuntu (10.10, 11) and Mint (Lisa, I think) I got worried about the notebook being too hot too.

    I know there's the Optimus stuff, but I'm thinking this is not the answer I need, I'm on Linux most of the time because I'm working and browsing and I switch to Windows only when I'll play something so I'm not worried about running Minecraft or anything too graphical on Linux. I'm worried about it overheating, slowing down, shutting down and eventually breaking.

    Let's go to the numbers.

    sensors in openSuse 12.1 running gnome-shell (probably was higher when I had slow downs/shut down)

    temp1: +84.0°C (crit = +100.0°C)
    temp2: +84.0°C (crit = +100.0°C)
    
    nouveau(GPU)
    
    temp1: +73.0°C (high = +100.0°C, crit = +110.0C
    

    sensors in openSuse 12.1 with iceWM (lighter graphical interface)

    temp1: +74.0°C (crit = +100.0°C)
    temp2: +74.0°C (crit = +100.0°C)
    
    nouveau
    
    temp1: +68.0°C (high = +100.0°C, crit = +110.0°C)
    

    On Windows, the CPU stays between 40°C-50°C and GPU in the mid 50°C.

    I'm guessing 84°C is too high.

    lspci

    00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
    00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09)
    00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
    00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
    00:1a.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
    00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
    00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
    00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5)
    00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5)
    0    0:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5)
    00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5)
    00:1d.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
    00:1f.0 ISA bridge: Intel Corporation HM67 Express Chipset Family LPC Controller (rev 05)
    00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05)
    00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
    01:00.0 VGA compatible controller: nVidia Corporation Device 0df5 (rev a1)
    03:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000
    04:00.0 USB Controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)
    06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
    

    So what to do? Is the GeForce card always running here (Linux) while on Windows it's on the Intel GPU?
    If so, can I make it so it will only always on the Intel card? Can this help? Will I lose graphics acceleration (and gnome-shell) in this case?

    I had uninstalled the Nouveau Nvidia driver in hopes that it would turn the Nvidia card off to see if I had a better luck. I don't know if this is related, but just now my notebook was idle, I was watching a movie, and then came back to my laptop to check on it on imdb. I had a terminal open and 2 or 3 tabs of chrome, on gnome-shell, and when I ran sensor CPU was at 98.0°C, and GPU at 92.0°C.

    @Icarus I'd guess it's the second option, before when it was slowing down I was running top and the 'offending' processes were Chrome and Gnome-shell, but really it was probably that the CPU/GPU getting too hot and lagging; it doesn't make much sense because this is a potent notebook, I play Battlefield 3 on 64 person maps without any problems

    I've switched the Nouveau driver to the proprietary Nvidia one, I've lost graphic acceleration (this has always happened when using Nvidia driver on this notebook) but 'sensors' now is constant on 74.0°C and I can at least feel comfortable enough to work here.

    I'm intrigued because there's got to be more people on this new Dell XPS running Linux, but it's being way too hard to find any useful info on this.

    • Gilles 'SO- stop being evil'
      Gilles 'SO- stop being evil' over 12 years
      Run powertop to get an idea of what's using power.
    • tcoolspy
      tcoolspy about 12 years
      Please don't edit answers into the question. If you have something to add to an answer you can leave a comment on it. If you have a new answer of your own that solves the issue, you can self-answer. Thank you, and glad you got it fixed!
  • Breno Salgado
    Breno Salgado over 12 years
    I can't get acpi_call to work :( RockerCoder ~/acpi_call (master) $ sudo ./test_off.sh sudo: ./test_off.sh: command not found
  • J M Rossy
    J M Rossy over 12 years
    Can you state what you have done so far?
  • Breno Salgado
    Breno Salgado over 12 years
    the scripts were missing permissions... I think it's good now, they couldve mentioned it in the tutorials :P
  • J M Rossy
    J M Rossy over 12 years
    Yes. I agree that they could have mentioned it. You have to make it executable. Always check that when running a script. chmod +x would be fine already. chmod 777 creates an issue where any user can read, write and execute it. It won't really affect anything now, but it is good practice to restrict permissions.
  • Breno Salgado
    Breno Salgado over 11 years
    HOW IT WENT: I set up another box with ubuntu and right after logging in my laptop temperature was already at 95°C, first thing I did was try the ACPI module again, what the posts in the answer doesn't mention is that you may need to add permission to the scripts, so I did chmod +x ./test_off.sh and sudo chmod +x /proc/acpi/call right before using the command my full battery would say '1:22mins left', it jumped to '2:22mins left' after, and temperature seems its going to be stable at 64°C now(it would never go below 74°C before)
  • jahmed31
    jahmed31 almost 4 years
    Doesn't work for me on Linux mint 19.3, with Dell XPS 15 9570