Prestandaförsämring på datorer med Windows XP Service Pack 2 och flera processorer med stöd för processorenergisparfunktioner

Artikelöversättning Artikelöversättning
Artikel-id: 896256 - Visa produkter som artikeln gäller.
Visa alla | Dölj alla

På den här sidan

Symptom

Datorer med flera processorer som stöder energisparfunktioner, till exempel ACPI-processorprestandatillstånd (Advanced Configuration and Power Interface), kräver Microsoft Windows XP Service Pack 2 (SP2). Det finns ytterligare uppdateringar för optimering av prestanda och funktioner på datorer med Windows XP SP2. Utan de uppdateringarna kan datorer som är utrustade med mobila processorer med dubbla kärnor och energisparfunktioner bli långsammare eller inte fungera som förväntat.

Obs! Det här problemet gäller även x64-versioner av Microsoft Windows Server 2003. Den här artikeln och den tillhörande privata snabbkorrigeringen är emellertid inte avsedda att lösa tidsproblem i spel och andra program som körs på AMD-datorer med dubbla kärnor. Om du vill veta mer om prestandaproblem på datorer med dubbla kärnor klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
909944 Dåliga spelprestanda på en dator med Windows XP och processor med dubbla kärnor

Lösning

Uppdateringsinformation

Följande fil kan hämtas från Microsoft Download Center:

Dölj bildenVisa bilden
Hämta
Hämta paketet WindowsXP-KB896256-v4-x86-ENU.exe nu.

Utgivningsdatum: 19 december 2006

Om du vill ha mer information om hur du hämtar Microsoft-supportfiler, klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
119591 Hämta Microsoft-supportfiler från Onlinetjänster
Microsoft har genomsökt denna fil med ett antivirusprogram. Genomsökningen har gjorts med det mest aktuella antivirusprogram som var tillgängligt när filen lades upp. Filen finns sparad på servrar med utökad säkerhet, vilket bidrar till att förhindra otillåtna ändringar av den.

Förutsättningar

Inga särskilda förutsättningar måste vara uppfyllda.

Krav på omstart

Datorn måste startas om efter installation av uppdateringen.

Ersättningsinformation

Den här uppdateringen ersätter inte några andra uppdateringar.

Filinformation

Den engelska versionen av den här uppdateringen har filattributen som visas i följande tabell (eller senare). Datum och tider för dessa filer anges i UTC-tid (Coordinated Universal Time). Innan du läser filinformationen konverteras den till lokal tid. Du kan se skillnaden mellan UTC-tid och lokal tid med hjälp av fliken Tidszon i verktyget Datum och tid på Kontrollpanelen.
Dölj tabellenVisa tabellen
File nameFile versionFile sizeDateTimePlatformSP requirement
Halmacpi.dll5.1.2600.3023134,40030-Oct-200611:27x86SP2
Ntkrnlmp.exe5.1.2600.30232,137,60030-Oct-200612:11x86SP2
Ntkrnlpa.exe5.1.2600.30232,059,26429-Oct-200619:27x86SP2
Ntkrpamp.exe5.1.2600.30232,017,28030-Oct-200611:27x86SP2
Ntoskrnl.exe5.1.2600.30232,182,01630-Oct-200612:13x86SP2

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet "Gäller" i den här artikeln.

Mer Information

Windows XP SP2 krävs på datorer med flera processorer som stöder ACPI-processorprestandatillstånd. Det här kravet omfattar datorer som stöder följande:
  • Flera fysiska sockets
  • Konstruktioner med flera kärnor
  • Flera logiska trådar, till exempel Intels hyper-threading-teknik
Eftersom Windows XP ursprungligen inte konstruerades för att stödja prestandatillstånd i konfigurationer med flera processorer, krävs vissa ändringar för att på ett riktigt sätt realisera detta stöd på datorer med flera processorer. Windows XP Service Pack 2 har de ändringar som krävs av kernel-energisparfunktionerna. Ändringarna säkerställer att Windows XP fungerar på rätt sätt på datorer med flera processorer och processorprestandatillstånd.

Den här snabbkorrigeringen löser även följande problem på datorer med flera processorer som stöder processorprestandatillstånd:
  • En eventuell prestandaminskning i entrådiga arbetsbelastningar när demand-based switching används i processorprestandatillstånd.
  • Synkroniseringen av processorns TSC-register (tidstämpelräknare) mellan processorer när ACPI-energispartimern används på datorer med flera processorer.
  • Befordran- och degraderingsproblem med ACPI C-tillstånd i kernel-energisparfunktionerna.

Information om uppdateringen

Eventuell prestandaförsämring under demand-based switching

DBS (Demand-Based Switching) är användning av ACPI-processorprestandatillstånd (dynamisk spännings- och frekvensskalning) som svar på systembelastningar. I processorenergisparfunktionerna i Windows XP implementeras DBS med hjälp av den anpassningsbara processorbegränsningsprincipen. Genom principen justeras processorns aktuella prestandatillstånd dynamiskt och automatiskt som svar på systemets CPU-användning utan några åtgärder från användaren.

När entrådiga arbetsbelastningar körs på datorer med flera processorer och konfigurationer med dubbla kärnor kan arbetsbelastningarna förflyttas mellan tillgängliga processorkärnor. Detta är ett naturligt resultat av hur Windows-scheman fungerar mellan tillgängliga processorresurser. På datorer med processorprestandatillstånd som körs med den anpassningsbara processorbegränsningsprincipen kan den här trådöverflyttningen emellertid medföra att kernel-energisparfunktionen i Windows gör en felaktig beräkning av processorns optimala målprestandatillstånd. Detta beror på att en enskild processorkärna, logisk eller fysisk, kan förefalla mindre upptagen än hela processorpaketet i själva verket är. I prestandatester där entrådiga arbetsbelastningar används kan den här artefakten visa sig genom minskade prestandaresultat eller en hög grad av variation mellan på varandra följande körningar av identiska prestandatester.

I den här snabbkorrigeringen ingår ändringar av kernel-energisparfunktionerna för registrering av processoranvändning i hela processorpaketet. Ändringarna gör den verkliga aktivitetsnivån i ett processorkomplex synlig och bidrar därmed till en korrekt beräkning av ett ökat målprestandatillstånd.

Obs! I den här lösningen läggs vikten vid prestandaökning i stället för energibesparing. Även om testpoängen ökar påverkas batteriets livslängd kanske negativt. Därför kan den här kernel-principändringen inaktiveras med en registernyckel för maximal flexibilitet.

Inaktivera den nya prestandatillståndsprincipens funktion

Viktigt! Den här artikeln innehåller information om hur du redigerar registret. Det kan uppstå allvarliga problem om du gör detta felaktigt. Följ därför instruktionerna noga, och säkerhetskopiera registret innan du gör några ändringar i det. Då kan du återställa registret om det uppstår problem. Om du vill veta mer om hur du säkerhetskopierar och återställer registret, klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
322756 Säkerhetskopiera, redigera och återställa registret i Windows XP och Windows Server 2003


När du har installerat snabbkorrigeringen som beskrivs i den här artikeln kan du använda registerinställningar för att inaktivera den nya prestandatillståndsprincipens funktion.

Om du vill att vi ska inaktivera den nya prestandatillståndsprincipens funktion åt dig, går du till avsnittet Lös det åt mig. Om du hellre vill göra det själv går du till avsnittet Jag löser det själv.

Lös det åt mig



Om du vill att problemet ska åtgärdas automatiskt klickar du på knappen eller länken Fix it. Klicka sedan på Kör dialogrutan Filhämtning och följ anvisningarna i guiden.


Lös det här problemet
Microsoft Fix it 50608

Obs!
  • Installera snabbkorrigeringen som beskrivs i den här artikeln innan du kör det här paketet.
  • Guiden finns endast på engelska. Den automatiska korrigeringsfilen fungerar dock även för andra språkversioner av Windows.
  • Om du inte sitter vid datorn där problemet finns kan du spara lösningen på ett flashminne eller en cd och sedan köra den på rätt dator.

Gå sedan till avsnittet Löste det här problemet?.



Jag löser det själv

Så här använder du registerinställningar för att inaktivera den nya prestandatillståndsprincipens funktion:
  1. Klicka på Start, Kör, skriv regedit och klicka på OK.
  2. Högerklicka på HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager, peka på Nytt och klicka på Nyckel.
  3. Skriv Begränsning som nytt nyckelnamn.
  4. Högerklicka på Begränsning, peka på Nytt och klicka på DWORD-värde
  5. Skriv PerfEnablePackageIdle som värdenamn.
  6. Högerklicka på PerfEnablePackageIdle och klicka sedan på Ändra.
  7. Skriv 0 i rutan Data. Se till att Hexadecimal är markerat i dialogrutan Redigera DWORD-värde och klicka på OK.

    Obs! Du kan skriva 1 i rutan Data om du vill aktivera den nya prestandatillståndsprincipens funktion.
  8. Avsluta Registereditorn.

Löste det här problemet?

  • Kontrollera om problemet har lösts. Om problemet har lösts är du klar med det här avsnittet. Om problemet inte är åtgärdat kan du kontakta supporten.
  • Skicka oss gärna dina synpunkter. Om du vill ge oss feedback eller rapportera eventuella problem med den här lösningen kan du skriva en kommentar på bloggen Lös det åt mig eller skicka ett e-postmeddelande till oss.

Korrigera TSC-synkronisering

I vissa operativsystem kan processorns TSC ändra räknefrekvensen. Dessutom kan processorns TSC sluta räkna när vissa processorenergisparfunktioner används. På datorer med flera processorer är TSC vanligen operativsystemets maskinvarutimer som stöder anrop till kernel-funktionen KeQueryPerformanceCounter. När TSC inte ökar monotont fungerar kanske inte systemkomponenter där kernel-funktionen KeQueryPerformanceCounter används på rätt sätt. Microsoft löser det här problemet genom att göra det möjligt att använda ACPI-energibesparingstimern som operativsystemtimer till stöd för kernel-funktionen KeQueryPerformanceCounter. Vissa program kan emellertid ha direkt tillgång till TSC genom att kringgå Windows-timer-API:erna. Flerprocessor-HAL (Hardware Abstraction Layer) säkerställer att alla TSC-register på alla processorer på en dator med flera processorer är noga synkroniserade. Därför ger inte åtkomst genom systemprogram som kan dirigeras till olika processorer olika resultat. Den här ändringen säkerställer att flerprocessor-HAL fortfarande synkroniserar alla TSC:er mellan alla processorer på en dator, även om ACPI-energispartimern används som operativsystemets maskinvarutimer.

Korrekt befordran och degradering för C-tillstånd

Genom den här ändringen korrigeras problem i kernel-energisparfunktionen så att befordran och degradering för processor-ACPI-C-tillstånd hanteras på rätt sätt på datorer med flera processorer.

Mer Information

Om du vill veta mer om ett närliggande ämne klickar du på artikelnumret nedan och läser artikeln i Microsoft Knowledge Base:
835730 Ljud spelas upp långsamt eller musik spelas upp med avbrott i Windows XP eller Windows 2000
Om du vill veta mer om standardterminologi för Microsoft-programuppdateringar klickar du på artikelnumret nedan och läser artikeln i Microsoft Knowledge Base:
824684 Standardterminologi för beskrivning av Microsoft-programuppdateringar
De produkter från andra tillverkare som diskuteras i denna artikel tillverkas oberoende av Microsoft. Produkternas funktion eller tillförlitlighet kan därför inte garanteras.

Egenskaper

Artikel-id: 896256 - Senaste granskning: den 10 juni 2013 - Revision: 2.1
Informationen i denna artikel gäller:
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
Nyckelord: 
atdownload kbwinserv2003sp2fix kbqfe kbhotfixserver kbfix kbbug kbfixme kbmsifixme KB896256

Ge feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com