Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Lenovo belooft fix voor throttlingproblemen bij Linux op laptops

Lenovo erkent dat het draaien van Linux op recente laptops van het bedrijf tot lagere prestaties leidt dan bij gebruik van Windows. Bij Linux draait de laptop alsof deze altijd op schoot gebruikt wordt, waardoor throttling bij de cpu optreedt. Lenovo komt met een fix.

De oorzaak van de problemen waar Linux-gebruikers van Lenovo-laptops al meer dan een jaar over klagen ligt volgens de fabrikant bij Intels Dynamic Platform and Thermal Framework. Dit is een platform dat Intel al jaren gebruikt en dat sensoren en software inzet om het systeem te laten reageren op temperatuursveranderingen.

Zo kan het aan de hand van de temperatuur detecteren of een laptop op een bureau of op schoot gebruikt wordt. Bij gebruik op schoot verlaagt DPTF de warmteproductie door de spanning te verlagen, Lenovo geeft als voorbeeld een verlaging van het opgenomen vermogen van 51W naar 15W. Het gevolg van deze vorm van thermal throttling is dat de prestaties lager uitvallen.

Het probleem is dat op Linux niet alle DPTF-functies ondersteund worden en de instelling standaard op de 'schoot'-stand blijft staan, met lagere prestaties tot gevolg. Lenovo heeft firmware ontwikkeld die er in combinatie met de sensoren voor zorgt dat het DPTF-gedrag op Linux zoveel mogelijk geïmiteerd wordt.

Het probleem treedt in ieder geval op bij de Lenovo Thinkpad T480, T480s, X1 Carbon 6e gen., X1 Yoga 3e gen., P52, P52s, P53, T470, T490, L380, X1 extreme, Thinkpad 25 Anniversary Edition en de X1 Carbon 7e gen. Voor deze laatste laptop heeft Lenovo inmiddels nieuwe firmware en bios vrijgegeven. Wanneer de overige modellen volgen is nog niet bekend.

Door Olaf van Miltenburg

Nieuwscoördinator

26-09-2019 • 19:15

33 Linkedin

Reacties (33)

Wijzig sortering
Wellicht een beetje mieren,
verlaging van de spanning van 51W naar 15W
maar het zou technisch correcter zijn om te zeggen:
verlaging van de spanning waardoor het vermogen van 51W naar 15W zakt
We zijn hier immers Tweakers en dan is het wel mooi om die technische kennis terug te zien in de artikelen. Gewoon een kleinigheidje die vast is ontstaan bij het overnemen of dergelijke, maar het valt (mij) toch wel op ;)

[Reactie gewijzigd door Helium-3 op 26 september 2019 20:35]

Nee dat is niet echt mieren, hier worden verschillende dingen doorheen gehaald:
- spanning verlagen = undervolting :
Dat doe je om bij gelijke performance lagere temperaturen te verkrijgen of eventueel verder te kunnen overclocken, we spreken hier over 50-200 mV en zeker niet over een vermogen dat van 51W miraculeus naar 15W gaat. En dat wordt zeker niet gebruikt omdat de waarde afhankelijk is van elke cpu op zich, het kan je systeem onstabiel maken.
- Throttling : dat kan op een paar manieren (heeft niks met spanning te maken)
1. de multiplier lager zetten, waardoor de cpu op een lagere clock loopt.
2. clock modulatie : de cpu clock blijft hoog, maar een bepaald percentage van de clocks worden niet gebruikt.


Er staat ook geen enkele verwijzing naar spanning in het rapport van Lenovo, alsook DPTF van Intel verwijst naar beperking van power door middel van beïnvloeding van de clockfrequentie.

[Reactie gewijzigd door redzebrax op 26 september 2019 22:00]

De spanning zorgt er zeker wel voor dat je vermogen van 51W naar 15W gaat. :)

Je CPU verandert namelijk heel de tijd zijn spanning afhankelijk van de load. Elke CPU heeft een spanning-frequentie curve waar die aan vast houdt. Op 4 GHz draai je bijvoorbeeld op 1.3V en en tijdens idle klokt je CPU terug naar 1.2 Ghz op 0.8V. Om op een hogere klokfrequentie te lopen moet je namelijk meer spanning hebben zodat de transistoren sneller kunnen schakelen.
Als je undervolt pas je de fixed offset op je spanningscurve aan, wat dus de spanning op elke frequentie met een vaste waarde verlaagt. ( -200mV undervolt geeft dan 1.1V op 4 Ghz en 0.6V op 1.2 Ghz).

Bij throttling ga je inderdaad de multiplier lagen zetten. De multiplier bepaalt je kloksnelheid en je gewenste kloksnelheid bepaald de nodige spanning.
Theoretisch kan je het voltage constant houden en alleen de kloksnelheid verlagen om het vermogen omlaag te halen. Het verbruikte vermogen P van een transistor volgt echter de formule
P = a * C * V^2 * f, waar C de capaciteit van je gate is, V het voltage op de gate en f de schakelfrequentie. Dat betekent dus dat het verbruikte vermogen kwadratisch afhankelijk is van de spanning, en slechts linear van de frequentie! Het is dus net erg belangrijk om de spanning te verlagen om minder vermogen te gebruiken.
Het vermogen en throttling heeft dus alles met spanning te maken.

[Reactie gewijzigd door Thmz159 op 27 september 2019 01:32]

Dat ontken ik niet, er is inderdaad nu een link tussen frequentie en spanning, sinds intel adaptive core voltage gebruikt en bij undervolt verander je de offset voltage. Je kan trouwens nog altijd kiezen voor een static voltage. En je wil natuurlijk zo weinig mogelijk spanning leveren bij een bepaalde frequentie om het vermogen te beperken.
Je kan wel niet zomaar de spanning verlagen en dan zou je cpu frequentie volgen. Het werkt omgekeerd de spanning verlaagt omdat de frequentie verlaagt. DPTF zegt wat het max vermogen mag zijn en hierbij hoort een zekere max frequentie en beperkt zo bv de maximum turboclock of max multiplier. En ze doen waarschijnlijk nog wat dingen.
Dus throttle speelt in op frequentie, dat de spanning hierbij daalt is een gevolg.
En met miraculeus bedoel ik, je kan gewoon niet van 51W naar 15W gaan zonder een serieuze beperking van je performance, lees max frequentie. Het stoorde me voornamelijk omdat Intel laat uitschijnen alsof er bijna geen performance impact is. "Something that is not an issue with common applications, but in rare cases may have an impact on game performance" en ze gewoon de spanning verlagen, maar in feite spelen ze wel degelijk in op frequentie.

[Reactie gewijzigd door redzebrax op 28 september 2019 13:23]

Nee, het is geen onzin wat @Helium-3 hier verkondigt. Het is de harde waarheid.

De eenheid van spanning is Volt (V), de eenheid van vermogen Watt (W). De fout is vergelijkbaar met het vertellen dat je zojuist je lengte hebt gemeten en die gelijk is aan 1,84 liter. :? Dergelijke fouten worden van wat ik meekrijg zo'n eenmaal per maand gemaakt; dat is zonde. Het is zonde van het aanzien wat Tweakers geniet en wat wij als users van Tweakers genieten. Nu kan een foutje of een vergissinkje altijd, maar er moet dan wel van geleerd worden. :)

[Reactie gewijzigd door Frozen op 27 september 2019 02:59]

Ja het klopt, maar het komt wel gewoon op hetzelfde neer. P = U * I : verlaag je het voltage, dan verlaag je het vermogen. Ja, technisch gezien verlaag je het vermogen daardoor indirect, maar als je het over autorijden hebt zeg je toch ook dat je snelheid minderd en niet dat je de brandstoftoevoer naar de motor verlaagd? De invloed die je gaspedaal heeft op de snelhied die je rijdt is van veel meer factoren afhankelijk dan het voltage op het vermogen heeft. Ik vind het inderdaad mieren.

Uiteindelijk draait het hele probleem hier om het vermogen van de CPU, dat minder zou moeten zijn als je een laptop op schoot gebruikt. Dus ik zie het probleem niet dat er over vermogen ipv. voltage gepraat wordt.

Edit: Ik zie nu dat de discussie ging over verlagen van de spanning in watt. Dat klopt inderdaad niet nee :9 Het artikel was al aangepast, vandaar dat ik eroverheen keek.

[Reactie gewijzigd door soulcrusher op 27 september 2019 08:57]

Heb ik ook niet gezegd, "nee dat is niet echt mieren" waarmee ik bedoel dat zijn opmerking volledig terecht was.
Lenovo geeft als voorbeeld een verlaging van de spanning van 51W naar 15W.
Nee hoor, da's gewoon fout. Je mag van een tweakers auteur verwachten dat hij weet dat de eenheid voor spanning Volt is.
Het was keihard fout inderdaad en uiteraard weet ik het verschil. Helaas heb ik voor publicatie lopen klooien met de volgorde van die zinnen waardoor spanning er bleef staan en de update van gisteravond na er op gewezen te zijn was niet doorgevoerd. Gelukkig is er het reinigend vermogen van de reacties waarin netjes wordt uitgelegd hoe het wel zit, maar slordig is het wel. |:(
Vergissen is menselijk :)
Uitermate storend dat dit zo vaak fout wordt gedaan door journalisten. Ik zie het ook regelmatig op televisie. Hoe moeilijk kan het zijn om hier een beetje aandacht aan te besteden?
Het lijkt er op dat snelheid steeds vaker boven kwaliteit gaat.
Dat is (enigszins) te begrijpen als het om Twitter gaat, maar niet als het webpagina's zijn die onder toezicht van een redactioneel team gepubliceerd worden.
Dan is er altijd nog wel tijd om een tekst nog even door te lezen voor je op de publish knop duwt.
Dit is de gemakzucht waardoor mensen het verschil niet meer zien tussen serieuze websites en het eerste beste fake news Facebook account uit Rusland.
Dat is niet mieren, er staat gewoon rotzooi geschreven. Dit kan echt niet, niet op Tweakers en niet in de Telegraaf.
Voor de populaire X1 Carbon 6th gen is er in ieder geval al een fix voor:
https://github.com/erpalma/throttled

En zoals altijd biedt de Arch Linux wiki hele goede info :)
https://wiki.archlinux.or...hinkPad_X1_Carbon_(Gen_6)
throttled heb ik onlangs geprobeerd op mijn L380 Yoga, maar ik vond dat het er alleen maar slechter op werd. Ik wacht dus wel op een officiële fix.
FYI, deze work-around is niet enkel voor de X1C6. Ook de T480/T480s is ondersteund (draai deze al maanden op m'n T480). Mooi dat Lenovo het probleem nu zelf aanpakt, een dezer proberen mijn FW + bios te updaten.
Dus als ik het goed heb treedt het probleem enkel op bij Intel-processoren en dus niet bij AMD?
Het is een functie die alleen op intel processoren aanwezig is. Misschien heeft AMD ook wel zoiets maar dan zal het anders heten?

Maar alle modellen die genoemd worden zijn intel modellen. De Txx0 series zijn intel, de Txx5 zijn AMD. Van de P-serie en X1 is nog geen AMD variant.
Maar als het aan Intel zou liggen, zou het toch meer fabrikanten moeten treffen dan alleen Lenovo?
Het is een extra functie van Intel, wellicht is Lenovo een van de weinige die het geïmplementeerd heeft.
Als ik zo de issues bekijk, staan er meerdere laptops tussen.

https://github.com/erpalma/
Inderdaad, alle genoemde zijn intel-modellen (de AMD'ers eindigen op 5).
Dus als ik het goed heb treedt het probleem enkel op bij Intel-processoren en dus niet bij AMD?
Mischien wel maar daar heeft het helemaal niets mee te maken.... Stop een AMD processor er in en de Lenovo software zal nogsteeds dynamisch het verbruik beperken.
Wat raar dat de verlaging van 51W naar 15W maar iets van 20% snelheid scheelt volgens die eerste slide??

In dat geval zou ik daar voor kiezen, veel langere accuduur en maar weinig performance impact.

Als ik het zo begrijp hebben ze de functionaliteit van de driver naar de firmware verplaatst. Slim idee inderdaad. Alleen heb je nu als gebruiker wellicht wat minder controle hierover.

[Reactie gewijzigd door GekkePrutser op 26 september 2019 19:25]

Waarom is dat vreemd? In de natuurkunde is bijna niets liniair. Kijk maar naar vermogen versus topsnelheid van een auto. Een met 100 pk rijdt maximaal zo’n 180 km/h, dat wil niet zeggen dat je met 400 pk meer dan 700 km/h haalt. Met elektrisch vermogen werkt dat ook zo. Bij hogere vermogens gaat de warmteontwikkeling drastisch omhoog en de efficiëntie neemt af.

De pentiumprocessoren zijn hier een mooi voorbeeld van. Bij elke generatie verdubbelde de prestatie niet, maar het verbruik wel. De pentium 4 was een mooie kachel.

[Reactie gewijzigd door Conzales op 27 september 2019 03:00]

25 jaar geleden was het nieuws als je probleemloos Linux kon installeren op een (windows) laptop.
Nu is het nieuws als het niet kan (of niet goed werkt)...

Desondanks koop ik nog steeds geen laptop waarop geen Linux is voorgeinstalleerd door de fabrikant.
Het probleem is dat op Linux niet alle DPTF-functies ondersteund worden en de instelling standaard op de 'schoot'-stand blijft staan, met lagere prestaties tot gevolg. Lenovo heeft firmware ontwikkeld die er in combinatie met de sensoren voor zorgt dat het DPTF-gedrag op Linux zoveel mogelijk geïmiteerd wordt.
Waarom brengt lenovo dan niet een patch uit voor de linux kernel die de nodige ondersteuning biedt? De huidige aanpak lijkt mij een beetje de omgekeerde wereld?
Ik heb net twee dagen geleden een nieuwe Lenovo X1 Carbon 7th Gen gekocht. Is er ook een manier om te checken of deze fix al is toegepast?
T490 met Ubuntu gebruiker hier. Niks van gemerkt tot nu toe, behalve dat de accu altijd belachelijk lang mee gaat :Y)
Hoe lang gaat 'ie bij normaal gebruik mee bij jou, en welke kernelversie draai je?

Edit; oh en je schrijft T490. Is dat daadwerkelijk de T490 of de T490s? Kan ik me vast orienteren op mijn volgende laptop :)

[Reactie gewijzigd door Freeaqingme op 26 september 2019 23:48]

It's not a bug, it's a feature.

De comment boven je zegt dat het gaat om 20% minder performance. Een verlaging van 51 naar 15 Watt is best veel, dat kan wel die 20% minder performance een prima trade-off maken.
Heb sinds wiensdag een nieuwe Lenovo: een Legion 740.
Moet er nog Debian op installeren, dus ik ben benieuwd of ook mijn laptopje dit euvel heeft.
I am wondering whether this update could bring any improvements for macOS on ThinkPad, as the power management especially using T480S and X1C6 is currently very bad and even undervolting doesn't get us even close to the 12 hours we achieve when using Windows. Fingers crossed :Y)

Op dit item kan niet meer gereageerd worden.


Apple iPhone SE (2020) Microsoft Xbox Series X LG CX Google Pixel 4a CES 2020 Samsung Galaxy S20 4G Sony PlayStation 5 Nintendo Switch Lite

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2020 Hosting door True