Key points
- The most popular and widely supported family of operating system among PC users.
- Backward compatibility is high, with newer versions of the operating system capable of running decades old software with minimal issues.
- Transitioned to periodic biannual major upgrades since the introduction of Windows 10.
Resources
- Official support
- Update history for Windows 11, Windows 10
- Microsoft Update Catalog - Allows for manual download of updates or device drivers. See related KB article.
Communities
- Microsoft Community - Official community for everything related to Microsoft
- Microsoft Community Discord - Official Discord server
- /r/windows10 - Subreddit dedicated to Windows 10
- /r/windows - Subreddit dedicated to Windows in general
General
PowerShell is the more capable one of the two command-line interpreters provided by Microsoft for Windows systems. It can be accessed by opening the Start menu and typing powershell, then opening it from the search results. To open it with admin rights, right-click on the search result and choose "Open as Administrator".
Task Manager
The Task Manager is an application built into Windows that allows for the managing running processes as well as providing information about computer performance.
It can be accessed by any of the following ways:
- (Windows ≤10) Right-click on the taskbar of Windows and select Task Manager.
- (Windows ≥8.1) Right-click on the Windows icon in the taskbar (or press Win+X), and select Task Manager
- Press Ctrl+Alt+Delete and select Task Manager.
- Press Ctrl+⇧ Shift+Esc to open it directly.
Device Manager
The Device Manager is an application built into Windows that allows for the management of device drivers. It can be accessed from the Control Panel.
Registry Editor
The Registry Editor allows users to edit the Windows registry. It can be accessed by going to 'run' and typing 'Regedit.exe'.
Basic Editing
|
- Push ⊞ Win+R, type regedit, then click OK.
- Navigate to the desired registry key, such as
HKEY_CURRENT_USER , under the Computer category.
- Double click on any entries on the right side, right after selecting a registry key, under the Name category, in order to edit them.
|
(Windows ≤8) Advanced Search
|
- Download RegJump, extract it inside the root directory of the main Local Disk location.
- Copy any desired path into the clipboard.
- Open a Command prompt as an admin.
- Write
CD YourRootFolder:\ , regjump.exe and regjump -c .
Notes
- The last command tells Windows to open the Registry Editor at the path which was currently stored inside the clipboard.
- Windows 10 added a native text field in Registry Editor for jumping to folders.
|
DirectX is a collection of APIs for Windows that allows programs to interact directly with hardware.
.NET Framework
The .NET Framework is a software framework for Windows that is required for games built in .NET-aware languages (such as C# or Visual Basic), including those that use XNA. Different games may require different versions of .NET Framework. A list with download links for most versions can be found here[Note 1]. Windows 8 and 10 users may want to read this.
DLLs
Dynamic-link libraries (DLL, .dll
) are Windows' shared library files containing code and data that can be used over several applications and are dynamically linked during runtime, as opposed to statically linked where such libraries would be embedded within each individual application at compile-time. Dynamic-link libraries often save time for developers as shared system libraries only need to be installed once for multiple applications to make use of them, and is also a popular method for mod creators to use for their shims which intercepts API calls and injects their custom code.
A possible downside with dynamic-link libraries, although rare nowadays, is that it can be the cause of issues for the end users when an application relies on a specific version of the system library, while another application relies on another version, and only one can be installed at once. This is commonly referred to as DLL Hell and were more common for older applications, in particular legacy 16-bit applications. This can often be resolved through various ways, such as uninstalling the conflicting version and re-installing the needed version, or by inserting the required DLL files of the needed version in the installation folder of the application as this would result in the system prioritzing loading those libraries instead of the system-wide installed libraries.
Third-party utilities that makes use of DLL files range from game-specific fixes, such as NAIOM, to more generic tools like ReShade, dgVoodoo 2, and Special K. There are also so-called ASI loaders such as Ultimate ASI Loader which allows loading additional third-party DLL files (renamed to .asi
) through the use of an existing DLL filename that the game loads at runtime.
Windows 10 and 11
Fullscreen optimizations
Windows 11 and 10 (v1607 "Anniversary Update" and later) includes fullscreen optimizations (sometimes shortened as FSO) that attempts to convert games running in the "classic" exclusive fullscreen mode into using borderless window mode with flip model presentation instead. This optimization is completely transparent to the game, and it as well as injected tools (such as Special K) will believe and report that the game is running in exclusive fullscreen mode. This allows the use of Windows 10's Game bar as well as other system overlays in games that otherwise would not support them. A side-effect of the flip model presentation used is that it still allows the use of variable refresh rate techniques such as G-Sync/FreeSync syncing the monitor to the frame rate despite them being configured for fullscreen only.
Earlier versions[4] of Windows 10 (v1607-1709) also tried forcing games running in regular window modes (including borderless window mode) to use flip model presentation, however this was discovered to cause issues with some games. As a result, in Windows v1803 Microsoft had disabled that aspect of the feature and limited the fullscreen optimizations to only apply for games running in exclusive fullscreen mode.[5] In February 2022 Microsoft announced that this feature is making a return in Windows 11, and will go public in Windows 11 22H2.[6]
- Available for DirectX ≥9 and automatically engaged, the optimizations combines the benefits of classic exclusive fullscreen mode with that of borderless window mode.
- Despite information stated elsewhere online, there is currently no built-in way of system-wide disabling fullscreen optimizations for all executables in Windows 10 v1803 and later. The third-party tool Bulk Application Compatibility Editor can be used instead to easily disable the optimizations for multiple games.
- See Demystifying Fullscreen Optimizations on the DirectX blog for more information.
Disable fullscreen optimizations for an executable
|
- Navigate to <path-to-game> and locate the executable of the game.
- Right-click on the executable and select Properties.
- Open the Compatibility tab.
- Check Disable fullscreen optimizations and click OK.
Notes
- On Windows 10 v1803 "April Update" and later, some users might experience an issue while using an injector based on dxgi.dll where fullscreen optimizations are forcefully enabled despite being "disabled" because of the presence of that DLL file. Using another supported DLL filename for the injector works around the issue.[7]
|
Check if fullscreen optimizations are being used or not
|
- Enable the Game bar of Windows 10 and verify that it can be toggled using ⊞ Win+G.
- Launch the particular game and configure it to run in exclusive fullscreen mode, then restart the game.
- Allow the main menu of the game to appear, then click on ⊞ Win+G and inspect the results:
- If the screen flashes brightly twice the game is running in "classic" exclusive fullscreen mode, and fullscreen optimizations are disabled.
- If the Game bar appears fullscreen optimizations are enabled or the "fullscreen mode" of the game is actually just a misnamed borderless window mode (typically seen with Unity-based games).
Notes
- To verify whether the fullscreen mode of the game is "classic" exclusive fullscreen mode, or simply a borderless maximized window referred to as "fullscreen mode", a third-party tool such as Special K might be needed.
- An alternative method to check if the Game bar is disabled is to use the volume media keys that some keyboards have. If the volume overlay appears, fullscreen optimizations are enabled. If it does not, fullscreen optimizations are disabled.
|
Game bar
The Game bar (⊞ Win+G) allows easy capture recording of gameplay screenshots and video while playing a game and is enabled by default in Windows 10.
Toggle Game bar
|
- Open Settings, click on Gaming, and navigate to the Game bar page.
- Toggle Record game clips, screenshots, and broadcast using Game bar.
|
Toggle Game DVR background recording
|
- Open Settings, click on Gaming, and navigate to the Game DVR page.
- Toggle Record in the background while I'm playing a game.
|
Game Mode
- Game Mode attempts to remove distractions while playing by applying minor changes to the behavior of Windows Update and may on some systems also help achieve a more stable frame rate in some games.[8][9]
- Earlier versions of the feature also prioritized CPU and GPU resources to the game running in the foreground, but this was removed in v1803 as it was found to negatively impact some games and scenarios.[10]
- Microsoft's official support article: Use Game Mode while gaming on your Windows 10 device
Toggle Game Mode for a game
|
- Launch the game.
- Open the Game Bar using ⊞ Win+G.
- Use the Turn Game Mode on/off option (a speedometer icon) to toggle Game Mode.
Notes
- The Game bar is not available for games running in exclusive fullscreen mode. For those games, temporarily change the display mode to windowed or borderless windowed mode and enable Game Mode, then change back to exclusive fullscreen mode.
- To fix the problem when key pressing is registered with huge delay with Game Mode turned on see here
|
Disable driver updates delivered through Windows Update
- Depending on how device manufacturer has configured their published drivers in Windows Update, users may sometimes receive undesirable drivers through Windows Update that are installed on top of an existing driver, such as Microsoft's generic ones, which may sometimes affect functionality and/or install additional unwanted applications on the system.
Instructions:
|
- Uninstall the driver that was installed through Windows Update using either Add or remove programs or Device Manager.
- Restart the system.
- Use the Windows Show or Hide Updates Troubleshooter to "hide" the unwanted driver update.
- If the driver is not listed the system may still think one of its critical components are installed. An additional third-party tool, such as Driver Store Explorer may be required to uninstall any remaining traces of the device/driver.
- After the driver has been "hidden", Windows Update will no longer attempt to install it.
|
Disable memory compression
Change settings in Powershell
|
Search for the name Powershell in the system, and launch it as administrator via RBM.
Write: Get-MMAgent to check the current state of memory compression. If it's false, there is nothing to be done. It can be disabled by default while using SSD as system disk. To disable it, write: Disable-MMAgent -mc To enable, write Enable-MMAgent -mc
- Disabling memory compression can increase application stability while using demanding games for CPU.[11] Although some games benefit from the memory compression enabled.
|
Turn on ReadyBoost
- This is only necessary on low-end devices with memory concerns, such as on machines with 4 GB RAM or less.
Configure USB flash drive in Computer to use with ReadyBoost
|
- Plug in the USB flash drive to the computer.
- Open File Explorer and browse to This PC.
- Right-click on the USB flash drive and click on Properties.
- Click on the ReadyBoost tab and enable Dedicate this device to ReadyBoost.
- Click OK.
- After this, game may stutter less on 4 GB RAM configurations when in HDD/page file demanding scenarios.
Notes
- Before playing, make sure that background processes and services like System, SysMain (SuperFetch), svchost.exe, Windows Update, or others, are not using the storage device as they may cause additional stuttering.
- The page file on an SSD outperforms ReadyBoost, hence the feature will be unavailable on systems with SSD.
|
Backward compatibility and 1990's games
Compatibility mode
- See Windows Compatibility Mode for information on how to use the built-in backward compatibility mode of Windows.
DOS compatibility
For modern versions of Windows (both 32-bit and 64-bit), it is recommended to use DOSBox.
- If facing trouble getting DOS games to run on older versions of NT (XP and 2000), check out The Sierra Help Pages.
- In the transition from Windows 9x to NT based versions, DOS compatibility was temporarily maintained, at least for 32-bit editions. For Windows 10 32-bit, NTVDM support has to be manually enabled via Windows Features.[12]
Running 16-bit applications on 64-bit systems
- 64-bit versions of Windows can not natively run 16-bit applications.
- Use winevdm or NTVDMx64 to emulate them.
IPX protocol deprecated
- IPX was a LAN protocol commonly used with older programs, especially games. Unfortunately it was removed entirely from Vista and later with no indication of returning.
Try a wrapper (recommended)
|
Try one of the following:
- IPXWrapper - often distributed in official digital re-releases of older games
- ipxemu
- Kali - this one's more for tunneling IPX over the internet rather than LAN, but still works.
|
Copy support files from Windows XP[13]
|
Requires a working installation of Windows XP SP2 or files available here.
- Create a new folder
C:\temp .
- Copy the following files to the
C:\temp directory *and* to the corresponding new OS directories:
Note: An "elevated" command prompt (running as administrator) is required to have proper write access to directories.
Windows\System32\drivers\nwlnkipx.sys
Windows\System32\drivers\nwlnkflt.sys
Windows\System32\drivers\nwlnkfwd.sys
Windows\System32\drivers\nwlnknb.sys
Windows\System32\drivers\nwlnkspx.sys
Windows\System32\rtipxmib.dll
Windows\System32\wshisn.dll
Windows\System32\nwprovau.dll
Windows\inf\netnwlnk.inf (*)
Windows\inf\netnwlnk.pnf (*)
(*) The directory "inf" is hidden
3. Go to "manage network connection" (in Control Panel -> Network). Right-click the active LAN adapter connection, click "install", "protocol", "Add". Do not select the IPX that is already in the list, instead select "have disk". Navigate to C:\temp and select netnwlnk.inf . Now select "WLink IPX/SPX/NetBIOS". A warning will be shown that it is not verifiable, but ignore it. If an error message about a missing module appears, the above files are not properly copied to the new OS directories.
4. Reboot computer.
- Only works on 32-bit versions of Vista and later.
- Some parts of protocol do not work (e.g. properties button greyed out in setting)
|
Missing MIDI Mapper
- Over the last versions of Windows, Microsoft have slowly but steadily deprecated the original Microsoft MIDI Mapper of Windows.
DirectDraw is broken
- Since Windows 8.1[15], DirectDraw emulation has been broken.
- See Glossary:DirectX/DirectDraw troubleshooting.
Issues unresolved
Screen recorders, overlays, injectors won't work with Windows Apps
See Windows Store article for this and other Windows Apps related issues.
Hardcoded display limits in Windows 10
There are two hardcoded display limits in Windows 10:[16]
- Arbitrary refresh rate hard-coded limit of 512 Hz; this is a confirmed Windows limitation.
- Arbitrary pixel clock hard-coded limit; this may be caused by other limitation such as graphics drivers.
Issues fixed
Alt+F4 doesn't terminate frozen applications
Set older 32-bit games to use 4 GB RAM instead of 2
- 32-bit processes that have the LAA flag set on their executable are limited to 4 GB on a 64-bit OS, and 3 GB on a 32-bit OS.
- Increasing the memory limit of are generally compatible with most games, and can make them compatible with higher and more modern resolution or third-party mods that may otherwise push them past the original 2 GB RAM limit.
Force IMAGE_FILE_LARGE_ADDRESS_AWARE flag in executables
|
- Download and run the Large Address Aware enabler.
- Browse to the game executable.
- Tick the LAA checkbox and save the changes.
Notes
- The LAA flag is set in the header of the executable, which may not be compatible with some anti-cheat or DRM protections, such as the obfuscation performed by Steam DRM. For Steam titles, the third-party Steamless tool can undo the obfuscation which which allows the LAA flag to be set.
|
Windows Vista and later (x86 only): edit boot configuration database[17]
|
- Open an elevated command prompt
- Type
BCDEdit /set increaseuserva 2048
Notes
- Windows default setting of 2048 MB of user-mode virtual address space is used in the examples. Higher values may be attempted at risk of various system instabilities[18][19]
|
Windows XP and Server 2003 (x86 only): edit boot configuration file[20]
|
- Open command prompt under administrator privileges
- Type
bootcfg /raw "/3GB /userva=2048" /A /ID 1 (where 1 is the boot entry id)
|
Shoddy coded applications mess system-wide registry setting
Edit key ACL
|
- Open regedit
- Navigate to the relevant key
- Right-click over it, then Permissions and Advanced
- Depending on the Windows version, either untick Permissions inheritance from parent or press Disable Inheritance
- When asked, choose to add/convert/copy previous permissions to the object
- Click on Administrators group and edit its permissions
- Select changes to apply This key only
- Last untick Set Value advanced permission
Notes
- In some situations
reg flags "<key>" set DONT_VIRTUALIZE may also be needed[21][Note 2]
|
Non-Unicode applications might not work properly
- This is most commonly an issue with Japanese games and visual novels, and may prevent a game from being installed, launched, or even work properly (may have scrambled text or bugs).
- Locale Emulator/Microsoft AppLocale runs the application with the correct localization without affecting the rest of the operating system.
Use Locale Emulator
|
- Developed primarily for Windows 10, although it is also compatible with both 7 and 8.1.
- Supports only 32-bit executables.
Instructions
- Download Locale Emulator and extract the archive to where the application is to be installed.
- Run
LEInstaller.exe and select Install for current user.
- After the installation have finished, use
LEGUI.exe to set up desired localization profiles.
- Finally, right-click on a 32-bit executable (or its shortcut) and select the desired profile under the Locale Emulator context menu.
|
Use Microsoft AppLocale
|
- Might not work on modern versions of Windows as the tool has not been updated since 2004.
Instructions
- Download Microsoft AppLocale here and install it.
- With Windows versions after XP installation will fail. Simply put installer to XP SP3 compatibility mode to continue.
- Open AppLocale follow instructions. It should automatically detect programs language.
|
Change non-Unicode language system-wide[22]
|
- Easiest way to fix the issue, but may introduce unwanted changes to other programs; especially if the display language of Windows is non-English. This includes some basic characters being incorrectly replaced, programs defaulting to set non-Unicode language and other programs suddenly not being able to launch or crash.
Instructions
- Go to Control Panel, Clock, Language and Region and Regional and Language Options.
- From Administrative tab change non-unicode language to the country/localization the game originated from.
- Restart computer for changes to take effect.
|
Lowered volume when using background Metro/UWP apps
Instructions[citation needed]
|
- Push ⊞ Win+R, type
mmsys.cpl , then select OK.
- Open the Communications tab, then select Do nothing and save.
|
SafeDisc protected games do not work with Windows 10
Microstuttering in multiplayer games
- The Multimedia Class Scheduler Service has built-in network throttling which can greatly degrade performance of online games.
Edit the registry[23][24]
|
- Go to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile
- There will be an entry for network performance throttling, default value is
10 or a ; set it to FFFFFFFF (will look like 0xFFFFFFFF to the right of the entry). Windows Vista and 7 users can stop here.
- There will be an entry for system responsiveness, default value is
20 ; set it to 00000000 for pure gaming/streaming.
- Go down the registry tree further to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games .
- There will be an entry for priority and GPU priority; set GPU to 8 and priority to 6.
- Reboot
|
Wi-Fi background scan causes latency
- Wi-Fi adapters periodically perform background scans to discover additional networks. Unfortunately this induces latency, see here for more info.
Atheros adapters[26]
|
- Go to the Control Panel.
- Choose Networks and Sharing → Change Adapter Settings (in the left column).
- Right-click on the Wi-Fi adapter icon and select Properties.
- Click Configure (under "Connect Using").
- Go to the Advanced tab.
- Set Background Scan to Disabled.
- Set Foreground Scan to Disabled.
|
Intel adapters[26]
|
- Type
ncpa.cpl into the Windows search box (or type it in the start menu).
- This pops up the Network Connections control panel (a laptop/desktop user will probably see Ethernet and Wi-Fi adapters in there).
- Right-click on the Wi-Fi adapter icon and select Properties.
- Click the Configure button on the driver property page.
- On the Advanced tab, scroll down the Property list and set Roaming Aggressiveness to Lowest.
- Click OK to all the settings pages.
|
Crashes in some games
Change Data Execution Prevention setting[27]
|
Add a DEP Exception for the game executable. A reboot may be needed afterwards.
- The problem of crashes occurs mostly in cases when DEP is enabled for all applications, except included on the list.
|
Set the NXCOMPAT:NO flag for the game executable[28]
|
Stuttering in games on Windows 10 v1709 and later
- Some games might experience stutters once all memory has been allocated. This might be solved by freeing some up by clearing the standby memory.[29]
Issues fixed (missing files, codecs or APIs)
Older games missing .dll file on Windows Vista and later
- Some .dll files have different names on Windows Vista and later.
- See also DLL is missing from your computer in PCGW's launch problem guide.
Copy DLL to folder
|
- Make a note of the name of the missing .dll.
- Go to
%WINDIR%\SysWOW64 (or %WINDIR%\System32 if running a 32-bit version of Windows).
- Find the .dll that has the same name as the missing .dll but with an additional
x in the name (e.g. if the game can not find dplay.dll , look for dplayx.dll ).
- Copy that .dll into the game's installation folder (do not move it).
- Rename the copy to the name of the .dll that was missing (so
dplayx.dll becomes dplay.dll , etc.)
- The game should now see the .dll and play normally.
|
Older games refuse to start on Windows 8 and later
Install DirectPlay
|
- Open the Start screen, type
OptionalFeatures.exe and press ↵ Enter.
- Expand Legacy Components.
- Ensure DirectPlay is checked.
- Click OK to save the changes.
Notes
- Normally, Windows 8 and newer automatically detect if an application needs DirectPlay or other legacy components when it launches and prompts the user to install DirectPlay, but this requires a certain combination of services to be active, such as the Diagnostic Policy Service, which are sometimes disabled by the user.
|
Games cannot connect to servers on Windows XP / Vista
Game files missing after upgrading or refreshing Windows
- Upgrading or refreshing the Windows installation will move some files and folders to a
Windows.old
folder on the system drive.
- Note that this folder is automatically deleted 30 days after the upgrade/refresh.
Retrieve files from windows.old[31]
|
- Open the Start screen/Start menu, type
Computer and press ↵ Enter.
- Go into the system drive (usually
C: ).
- Go into the
Windows.old folder.
- Go to the equivalent location for the respective files and move them to their intended location.
|
Missing/conflicting codecs
Install the Windows Media Source Filter automatically[32]
|
- Download the Windows Media Source Filter Installer v1.7
- Extract the contents from the
.zip file into a folder.
- Right-click the
ApplyPatch.bat in the folder and click "Run as Administrator".
- Antivirus software might stop the file from executing - if so, manually allow it or add the file to the antivirus program's exception list.
- The game may also require the DivX 3.11 audio codec. If so, download and extract the zip file and run
DivX_Register.exe as administrator.
|
Install the Windows Media Source Filter manually[32]
|
- Download the Windows Media Source Filter Installer v1.7
- Extract the contents from the
.zip file into a folder
- Make a new directory in
%WINDIR%\SysWOW64 called Windows-Media-Source-Filter .
- Copy
drmclien.dll , strmdll.dll and dxmasf.dll from the .zip file to the Windows-Media-Source-Filter folder.
- Open the DirectShow Filter Manager and register the
dxmasf.dll in the Windows-Media-Source-Filter folder.
- The game may also require the DivX 3.11 audio codec. If so, download and extract the zip file and run
DivX_Register.exe as administrator.
|
Install the Indeo codec (Windows Vista and later)[33][34]
|
- Start Command Prompt as an Administrator.
- Run the command
regsvr32 "%WINDIR%\SysWOW64\ir50_32.dll" . If using a 32-bit version of Windows, replace SysWOW64 with System32 .
- Click OK on the message box that comes up.
Notes
- There appear to be certain security issues with the codec.[35] Unregister the codec when done with the game by using the command
regsvr32 /u "%WINDIR%\SysWOW64\ir50_32.dll" . Ignore the runtime error that may come up.
|
Install the Indeo codec (Windows XP and below)[33]
|
- Download the Ligos Indeo 5 codec installer
- Install the Ligos Indeo 5 from step 1 using the "typical" installation option
Notes
- There appears to be certain security issues with the codec.[35] Unregister the codec when done with the game by using the command
regsvr32 /u "%WINDIR%\System32\ir50_32.dll" . Ignore the runtime error that may come up. To re-register, see the Vista and later instructions.
|
Install QuickTime for Windows[36]
|
- Download QuickTime 7.79.80.95 (Vista or later) from Apple's site.
- Run the installer, but select Custom after accepting the license agreement.
- Make sure only QuickTime Essentials is checkmarked (certain programs may also require QuickTime Player also checked).
- For the Destination Folder page, uncheck make desktop shortcuts and automatic updates.
- Upon completing the install, open control panel and type "quicktime" in the search box to get QuickTime settings. To make this easier to access, right-click, Create shortcut, rename to Configuration and copy it to
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\QuickTime (this folder might be hidden) for it to appear in the start menu under QuickTime.
- In the Update tab uncheck Check for updates automatically and in the Advanced tab uncheck Install QuickTime icon in system tray.
- This installer also installs Apple Software Update, which can be uninstalled in "add or remove programs", as QuickTime for Windows no longer receives updates. Also note that if using other Apple software, such as iTunes for Windows, this QuickTime installer may replace Apple Software Update with an outdated version, forcing Apple Software Update to update itself.
- Install QT Lite (based on QuickTime 7.6) for Windows XP or below.
|
Install ffdshow[37]
|
- Choose the release with the number of bits the troublesome application is compiled for, regardless of the actual OS instruction set.
|
Issues fixed (CPU bottlenecks)
Force CPU affinity
- Prevents processes from using other CPU cores than the ones allowed, which can work around threading synchronization issues that might exist.
- This can have a detrimental effect on performance as the game is unaware that it is restricted to a limited number of CPU cores.
Since the game is still aware of the real number of CPU cores on the system, it may create more worker threads than the CPU cores it is limited to can process simultaneously, harming performance.
Provisional solution: Task manager
|
- Open Windows Task Manager.
- Find process for the application by Right-click on its task and press Go to process/details.
- Right-click on the process and select Set affinity.
- Deselect all other CPU cores than the ones the process should be allowed to run on. To prevent the process from using Intel's Hyper-Threading (HT) or AMD's Simultaneous Multi-Threading (SMT) CPU cores, deselect all odd-numbered CPU cores (1, 3, 5, 7, etc).
- Click OK to apply the change. It will take effect immediately.
Notes
- Task Manager does not store the tweak permanently. It needs to be reapplied each time the process launches.
|
Permanent solution: customized shortcut
|
- Right-click on the desktop.
- Make a new shortcut to
%WINDIR%\System32\cmd.exe .
- Open its properties and add the following to the "Target" field:
/C start "" /D "<path-to-game>\" /AFFINITY 1 "<path-to-game>\game.exe"
Notes
- Shortcut name and icon can be customized to match game's ones.
- Additional parameters can be normally added at the end of the target field.
- Affinity value must be in hex. To assign more than a core check this table.
|
Permanent solution: Batch file
|
- Run Notepad.
- Type the following command:
start /affinity 1 game.exe
- Save as BAT file (e.g. "example.bat") where the game executable is located.
- Run the game directly from the BAT file.
Notes
- It is also possible to make a shortcut to the BAT file and save it wherever you want.
- Affinity value must be in hex. For further details, check out this table.
|
Permanent solution: flag game executable
|
- Download ImageCFG.
- Place it in the same folder of the game executable.
- Open a command prompt, point it to the appropriate directory and run:
imagecfg -a 0x1 game.exe
Notes
- The executable will not be backed up, so it has to be done manually.
- Affinity value is in hex. Configuration examples are available on the download site mentioned above and also here.
- Modifies executable file, not compatible with some forms of Anti-Cheat and DRM.
|
Use PsExec
|
- Download Sysinternals's PsTools.
- Extract PsExec in the game executable folder.
- Run the game through the following command (command line and/or a batch file can be used):
psexec -a 0 game.exe
Notes
- Additional cores can be specified with a comma after the previous ones.
|
Use RunFirst
|
- Download RunFirst.
- Create a shortcut to
RunFirst.exe with the path to game executable as a parameter.
Notes
- This will not work if game requires to be launched through an external client.
|
Windows NT, 2000 & XP only: use StartAffinity
|
- Download StartAffinity.
- Unzip
StartAffinity.exe to the WinNT or system32 directory.
- Run the game through the following commands (command line and/or a batch file can be used):
cd <path-to-game>
StartAffinity game.exe 0
Notes
- Additional cores can be specified with a space after the previous ones.
|
Core parking causes problems with games
Quick registry hack[38]
|
- Open the Registry Editor and find key
0cc5b647-c1df-4637-891a-dec35c318583 .
- Set the key
ValueMax from 64 to 0 .
|
Quick registry hack (extended, adjustable in power settings)[39]
|
- Open the Registry Editor and find key
0cc5b647-c1df-4637-891a-dec35c318583 .
- Add a new key
Attributes with type DWORD and value 00000000 or save the following as a .reg file and run it to add entries:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\0cc5b647-c1df-4637-891a-dec35c318583]
"Attributes"=dword:00000000
Now adjustable in Start -> Control Panel -> Power Options -> 'Change Plan settings' -> 'Change advanced power settings' -> Processor Power Management -> Processor performance core parking min cores; 100% means all are used.
|
Limiting CPU usage per process
- Can fix freezes due to insufficient threads or CPU in some games on dual-core CPU, such as The Witcher 3, Steel Panthers: World at War, and Kingdom Come: Deliverance.
Download Battle Encoder Shirase[40]
|
- Run the application as administrator
- Target the game process after launching the game, and set the CPU to the desired percentage.
|
Other information
Speed up loading of web pages in Windows
- This affects all applications that relies on the internal subsystem of Windows to resolve proxy configurations, such as Google Chrome, Steam, and more.
Windows ships with the Automatically detect settings feature enabled by default for compatibility reasons to allows automatic configuration of internet connectivity in networks that supports it by using the DNS or DHCP services of said network. This option is not normally relevant for home or small network users as support for this type of automatic configuration is usually only found within corporate or academic networks that relies on some form of proxy to allow users to browse the web. The feature has in some instances been found to add noticeable delays when loading content from the Internet, and users might therefor want to disable it for troubleshooting purposes or permanently if they are connected to a network that does not rely upon it.
Disable Automatically detect settings in Internet Options[44]
|
- Open the Start menu and type Internet Options.
- Open the Connections tab, click the LAN Settings button.
- Uncheck the Automatically detect settings checkbox.
Notes
- Re-enable the setting if Internet access is lost entirely within 48 hours.
|
Changing default timer resolution
- This only concerns systems where the CPU is the limiting factor, and not the GPU, and can in some cases have a detrimental effect on performance.[45][46]
- Timer resolution can not be set system-wide as of Windows 10 v2004 as requests are intended to be per-process only.[47] Windows 11 users can restore the original behavior, see one of the fixboxes below.
Windows 10 v2004 or newer: Use Special K or the frame limiter of RTSS to increases per-process timer resolution[48]
|
Windows 10 v1909 or earlier: Use TimerTool to set the resolution to the maximum (0.500ms)
|
- Windows 10 changes timer resolution every several dozen of seconds, so keep TimerTool enabled in the background.
- On Windows 8 and CPU-limited systems, changing the timer resolution from 10ms to 0.500ms can result in upwards of 30% more FPS in Crysis 3.[49][citation needed]
- Other applications might already be requesting a higher resolution, such as the Steam client[50] and Discord,[50] making this tool unnecessary.[Note 3]
|
Windows 11 only: Restore legacy system-wide timer resolution behavior[51]
|
- Download the appropriate registry file.
- Open the registry file to add it to the registry of Windows.
- Restart the system to allow the change to take effect.
- After the restart the timer resolution will be set system-wide again as in Windows 10 v1909 or older.
|
File systems
Windows 10 has native support for 4 file systems: NTFS, exFAT, ReFS, and FAT32. The best one to install and play games on is considered to be NTFS. exFAT has problems with some legacy games,[52] ReFS is believed to be unable to install Microsoft Store apps[53] and cannot be used as a boot drive, while FAT32 is unable to store individual files larger than 4 GB (many modern games have individual files considerably larger than 4 GB).
Additionally, there are two so-called disk types supported by Windows: GPT and MBR. GPT is the official recommendation for Windows 10 and enables the use ≥2 TB hard drives and ≥5 primary partitions on the same drive; but many older drives that were involved in upgrades from Windows 7 to Windows 10, still remain as MBR. Windows 10 v1703 and newer comes bundled with the mbr2gpt.exe
tool which can be used to convert MBR disks to the GPT format without any additional tools necessary.
Use the MBR2GPT tool:[54]
|
- It is recommended to only convert secondary disks and not the Windows OS disk as otherwise the system might become unbootable without changing boot settings around in the UEFI/BIOS menu of the computer.
- Launch the Command Prompt as an administrator.
- Run the
diskpart command, followed by list disk .
- Note the disks that lack a
* below the Gpt column, as these are MBR disks.
- Type
exit to exit Diskpart.
- Now validate the MBR disk using
MBR2GPT /validate /allowFullOS /disk:# where # is the disk number from step 2-3.
- To perform the conversion if all validation tests pass, use
MBR2GPT /convert /allowFullOS /disk:#
- The MBR disk should now have been converted to GPT.
|
Trusted Platform Module (TPM)
Windows 11 requires a feature referred to as TPM 2.0, a hardware chip that improves the OS security and encryption abilities. Most CPUs from 2015 or later have a firmware based one embedded within the processor, but the feature is not usually enabled by default.
Enable TPM in BIOS/UEFI:[55]
|
- Enter the BIOS/UEFI firmware settings of the system.
- If available, set the settings screen to the Advanced or Expert mode.
- The exact position of the TPM setting differ between motherboard producers but are usually found in Security Settings or similarly named menus.
- The setting name is typically one of the following:
- fTPM (firmware TPM) - the firmware based TPM of AMD CPUs.
- PTT (Intel Platform Trust Technology) - the firmware based TPM of Intel CPUs.
- TPM - discrete TPM chips separate from the processor.
|
Disable security measures
- The following methods lowers the integrity and security of the system. Use at your own risk!
- This should only be attempted if no other option remains, and on systems where the risk of infection and exploits is minimized (e.g. systems without an active Internet connection).
Disable control flow guard (CFG)
- Control flow guard (CFG) has been found to cause stuttering in some games, such as GTA IV and PUBG.
Disable through Windows Security[56]
|
- Open Windows Security.
- Navigate to the App & browser control and click on Exploit protection settings.
- Click on the Program settings header, followed by Add program to customize.
- Add the program by its executable filename or by browsing to it.
- Scroll down to Control flow guard (CFG).
- Enable Override system settings and ensure the toggle is set to Off.
- Click on Apply to save the changes.
- Restart the system to allow the changes to take effect.
|
Disabling core isolation memory integrity
- Memory integrity works by creating an isolated environment using hardware virtualization, and may lead to CPU bottlencks.[57]
Disable through Windows Security
|
- Open Windows Security.
- Navigate to the Device security and click on Core isolation details.
- Disable Memory integrity.
- Restart the system to allow the changes to take effect.
|
Disabling Specter- and Meltdown-patches
Use InSpectre
|
- May lower stuttering and FPS-issues in CPU-heavy games on configurations with low RAM and older Intel CPUs (Skylake, Haswell, or older).[58][59]
- Restart needed after changes.
|
Force the use of the motherboard microcode version instead of the one from the OS
The current microcode update version loaded into the CPU can be loaded either from the motherboard or the operating system (if newer). Because of this, it is on some computers possible to downgrade the microcode version used by the CPU by forcing the use of the version present in the motherboard if said version is older by deleting the microcode version present in the OS.
Downgrading the microcode version can in some rare cases fix stuttering in some games, such as for Fortnite on Intel i5-4690K (e.g. when the OS microcode is revision 25, and the motherboard microcode is revision 24).[60][61]
Within %WINDIR%\System32 , delete the mcupdate_GenuineIntel.dll and/or mcupdate_AuthenticAMD.dll DLL file(s).
|
- Current loaded microcode version in the CPU can be checked through HWiNFO64's main window > Central Processor(s) > relevant CPU > Microcode Update Revision row. Note that this value indicates which microcode version is currently loaded into the CPU regardless of source, so the microcode version may have either been loaded through the motherboard or the OS (if newer than the motherboard version).
- To determine what microcode version is stored within the motherboard, consult the BIOS/UEFI settings menu and/or the motherboard manual for further instructions.
|
Version table
Windows 11
Released |
Version |
OS build |
"Friendly name" |
Codename
|
September 20, 2022 |
Windows 11 v22H2 |
22621 |
22H2 |
Sun Valley 2
|
October 5, 2021 |
Windows 11 |
22000 |
21H2 |
Sun Valley
|
Windows 10
Released |
Version |
OS build |
"Friendly name" |
Codename
|
October 18, 2022 |
Windows 10 v22H2 |
19045 |
22H2 |
22H2
|
November 16, 2021 |
Windows 10 v21H2 |
19044 |
21H2 |
21H2
|
May 18, 2021 |
Windows 10 v21H1 |
19043 |
21H1 |
21H1
|
October 20, 2020 |
Windows 10 v20H2 |
19042 |
October 2020 Update |
20H2
|
May 27, 2020 |
Windows 10 v2004 |
19041 |
May 2020 Update |
20H1, Vibranium
|
November 12, 2019 |
Windows 10 v1909 |
18363 |
November 2019 Update |
19H2, Vanadium
|
May 21, 2019 |
Windows 10 v1903 |
18362 |
May 2019 Update |
19H1
|
November 13, 2018 |
Windows 10 v1809 |
17763 |
October 2018 Update |
Redstone 5
|
April 30, 2018 |
Windows 10 v1803 |
17134 |
April 2018 Update |
Redstone 4
|
November 17, 2017 |
Windows 10 v1709 |
16299 |
Fall Creators Update |
Redstone 3
|
April 5, 2017 |
Windows 10 v1703 |
15063 |
Creators Update |
Redstone 2
|
August 2, 2016 |
Windows 10 v1607 |
14393 |
Anniversary Update |
Redstone 1
|
November 10, 2015 |
Windows 10 v1511 |
10586 |
November Update |
Threshold 2
|
July 29, 2015 |
Windows 10 v1507 |
10240 |
Windows 10 |
Threshold 1
|
- Also known as being version NT 10.0.
Previous versions
Released |
Version |
OS build |
Release version |
Codename
|
October 17, 2013 |
Windows 8.1 |
9600 |
NT 6.3 |
Blue
|
October 26, 2012 |
Windows 8 |
9200 |
NT 6.2 |
'8'
|
October 22, 2009 |
Windows 7 |
7600 |
NT 6.1 |
'7'
|
January 30, 2007 |
Windows Vista |
6000 |
NT 6.0 |
Longhorn
|
April 25, 2005 |
Windows XP Professional x64 Edition |
3790 |
NT 5.2 |
Anvil
|
October 25, 2001 |
Windows XP |
2600 |
NT 5.1 |
Whistler
|
September 14, 2000 |
Windows Me |
3000 |
4.90 |
Millennium
|
February 16, 2000 |
Windows 2000 |
2195 |
NT 5.0 |
Windows NT 5.0
|
May 5, 1999 |
Windows 98 Second Edition |
2222 A |
4.10 |
n/a
|
June 25, 1998 |
Windows 98 |
1998 |
4.10 |
Memphis, ChiCairo
|
August 24, 1996 |
Windows NT 4.0 |
1381 |
NT 4.0 |
Shell Update Release (SUR)
|
August 24, 1995 |
Windows 95 |
950 |
4.00 |
Chicago
|
May 30, 1995 |
Windows NT 3.51 |
1057 |
NT 3.51 |
?
|
September 21, 1994 |
Windows NT 3.5 |
807 |
NT 3.5 |
Daytona
|
November 22, 1993 |
Windows 3.2 |
153 |
3.2 |
?
|
November 8, 1993 |
Windows for Workgroups 3.11 |
300 |
3.11 |
Snowball
|
July 27, 1993 |
Windows NT 3.1 |
528 |
NT 3.1 |
Razzle
|
October, 1992 |
Windows for Workgroups 3.1 |
102 |
3.10 |
Winball, Sparta
|
April 6, 1992 |
Windows 3.1 |
103 |
3.10 |
?
|
May 22, 1990 |
Windows 3.0 |
? |
3.00 |
?
|
March 13, 1989 |
Windows 2.11 |
? |
2.11 |
?
|
May 27, 1988 |
Windows 2.10 |
? |
2.10 |
?
|
December 9, 1987 |
Windows 2.03 |
? |
2.03 |
?
|
April 10, 1987 |
Windows 1.04 |
? |
1.04 |
?
|
August 21, 1986 |
Windows 1.03 |
? |
1.03 |
?
|
May 14, 1986 |
Windows 1.02 |
? |
1.02 |
?
|
November 20, 1985 |
Windows 1.0 |
? |
1.01 |
?
|
Notes
- ↑ There are only 3 major .NET CLR versions[1][2][3] that at worst should be needed to be installed.
- ↑ Running with the RunAsInvoker compat layer effectively discounts any application manifest consideration here.
- ↑ Users can run
powercfg /energy
in an elevated command line prompt to generate a power efficiency diagnostics report in Windows which will gather data for a minute. After a minute have passed, check the report in C:\WINDOWS\system32\energy-report.html
to identify (labeled Platform Timer Resolution:Outstanding Timer Request) which running processes requested a higher resolution and what resolution they requested.
References
- ↑ Frequently Asked Questions About the .NET Framework 1.1 - MSDN (retrieved)
- ↑ .NET Framework & Windows OS versions | Microsoft Docs
- ↑ .NET Versioning and Multi-Targeting - .NET 4.5 is an in-place upgrade to .NET 4.0 - Scott Hanselman - last accessed on May 2023
- ↑ Reddit - BUG: DX9/DX11 Games do not enter Independent FLIP mode presentation in builds newer than 1709 in borderless mode. - last accessed on 2020-07-21
- "I ran presentmon and compared borderless games from 1709, and 1803-1903, and it seems all newer builds than 1709 run games in borderless as COPY with GPU GDI"
- ↑ Reddit - BUG: DX9/DX11 Games do not enter Independent FLIP mode presentation in builds newer than 1709 in borderless mode. - MSFTJesse (Jesse Natalie @ Microsoft's DirectX team) - last accessed on 2020-07-21
- "FYI, this is by design. There are some behaviors that flip model (a prereq for independent flip) cannot replicate. The fact that they used to get upgraded to flip model in windowed mode (note that from the API point of view, borderless windowed is still just windowed) meant that there was a risk of breaking some games. As we're trying to more broadly enable the use of independent flip for all apps, that risk became unacceptable, so we enabled the promotion to only apply while the games are in fullscreen exclusive mode."
- ↑
DirectX Developer Blog - Updates in Graphics and Gaming - last accessed on 2022-08-20
- ↑ Verified by User:Aemony on 2018-08-19
- I have now experienced this on two different systems, with both Special K and ReShade while injected into games using "dxgi.dll", despite fullscreen optimizations being disabled.
- ↑ Xbox Support - Use Game Mode while gaming on your Windows 10 device - last accessed on 2020-05-09
- "When you use Game Mode, Windows prioritizes your gaming experience. When you’re running a game, Game Mode:
- Prevents Windows Update from performing driver installations and sending restart notifications.
- Helps achieve a more stable frame rate depending on the specific game and system."
- ↑ Reddit - /r/pcgaming - hamiltonia comments on Does Windows 10 Game Mode still hurt performance? - last accessed on 2020-05-09
- "In these later builds Game Mode is intended to help by removing distractions while playing. In particular it tries to stop Windows Update from updating drivers and stops it from notifying the user of non-critical updates. It also causes the CPU to run at a minimum of 100% (on desktop, not laptops) to help reduce CPU fluctuations which may cause performance issues."
- ↑ Reddit - /r/pcgaming - hamiltonia comments on Does Windows 10 Game Mode still hurt performance? - last accessed on 2020-05-09
- "In the latest versions of Windows (1809 & 1903) Game Mode no longer does GPU/CPU prioritization. This prioritization was intended to give more resources to the running game at the cost of background processes, but we found it impacted some games and other scenarios. As an example streaming was impacted in apps like OBS because we were starving them of resources needed to encode."
- ↑ [1] Blog entry of memory compression tests
- ↑ [2]
- ↑ IPX on Windows 7 - last accessed on 9 June 2023
- ↑ What happened to MIDI Mapper on Windows 8 (and later)? | CoolSoft
- ↑ DirectDraw emulation still broken in Windows 10 - last accessed on May 2023
- ↑ Microsoft Windows 512Hz Limit And Pixel Clock Limit | Blur Busters
- ↑ BCDEdit /set (Windows Drivers) - Microsoft Developer Network - last accessed on May 2023
- ↑ The oft-misunderstood /3GB switch – The Old New Thing (retrieved)
- ↑ Kernel address space consequences of the /3GB switch – The Old New Thing (retrieved)
- ↑ /3GB (Windows Drivers) - Microsoft Developer Network (retrieved)
- ↑ Windows Vista File and Registry Virtualisation – Richard's Weblog - last accessed on 9 June 2023
- ↑ Change the system locale - Windows Help - last accessed on May 2023
- ↑ "lag" in online games with Windows 7 - Windows 7 Help Forums - last accessed on May 2023
- ↑ [ALL] Problem with lag on Windows 7 and 10 - Forums de l'Alliance Francophone Sudden Strike
- ↑ Is there any way to stop Windows 10 from scanning for Wi-Fi networks in - Microsoft Community - last accessed on May 2023
- ↑ 26.0 26.1 Turn off Wi-Fi scanning on Windows 8 - Super User
- ↑ Fix for Rayman 2 crash on Woods of Light and other levels - make DEP exception or restore def. settings - Rayman Pirate-Community - last accessed on 9 June 2023
- ↑ Gaurav Bodar's Blog : Disable DEP on applications (retrieved)
- ↑ Standby memory issue causing stutters on creators : Windows10 - Reddit - last accessed on May 2023
- ↑ Windows XP Users: step-by-step guide to get Tequila to work again. - Homecoming Forums - last accessed on May 2023
- ↑ Retrieve files from the Windows.old folder - Microsoft Windows Help - last accessed on May 2023
- ↑ 32.0 32.1 Monopoly Tycoon Music Fix | mrpenguinb's blog
- ↑ 33.0 33.1 RockRaidersUnited - Stunt Rally Runtime Error/abnormal termination Win10
- ↑ Indeo 5.x problem with Vista - last accessed on 9 June 2023
- ↑ 35.0 35.1 Microsoft Security Advisory: Vulnerabilities in the Indeo codec could allow remote code execution: December 8, 2009
- ↑ QuickTime Installation Guide - K-Lite Codec Pack - last accessed on May 2023
- ↑ Tomb Raider 6 Modding Thread - www.tombraiderforums.com - last accessed on 9 June 2023
- ↑ Windows 7 & Core Parking .... a *better* way to Turn It OFF .... | Cakewalk Forums
- ↑ Core Parking in Windows (Disable for more performance) | Overclock.net
- ↑ 4-5 second complete freezes - Comment #24 - last accessed on 9 June 2023
- ↑ 4-5 second complete freezes - last accessed on May 2023
- ↑ 4-5 second complete freezes - Comment #14 - last accessed on 9 June 2023
- ↑ Process Priority Saver for Windows: 6 Best Toos We Tested - HAL900 - raymond.cc - last accessed on 2023-02-18
- ↑ Reddit Gaming Subreddit - Make Big Picture Quicker - last accessed on May 2023
- ↑ Microsoft Docs - timeBeginPeriod function - last accessed on 2019-05-31
- ↑ Random ASCII - Windows Timer Resolution: Megawatts Wasted - last accessed on 2019-05-31
- ↑ Random ASCII - Windows Timer Resolution: The Great Rule Change - last accessed on 2021-10-21
- ↑ Verified by User:Aemony on 2023-01-02
- Forgot the defaults, but I think RTSS automatically sets 1ms per-process, while SK sets 0.5ms per-process?
- ↑ Crysis 3 - 30% Framerate and Performance Boost, and FPS Cap Removal [120Hz.Net - HyperMatrix] - YouTube
- ↑ 50.0 50.1 Verified by User:Aemony on 2019-05-31
- ↑ Random ASCII - Windows Timer Resolution: The Great Rule Change - Comment by schizobeyond, posted December 20, 2022 - last accessed on 2023-01-02
- ↑ How can I fool Steam to think my exFat drive is NTFS? - last accessed on 2021-07-03
- ↑ What I learned after 30 minutes with ReFS - last accessed on 2021-07-03
- ↑ Microsoft Learn - Windows Deployment - MBR2GPT - last accessed on 2023-01-02
- ↑ Verified by User:Dandelion Sprout on 2021-07-03
- ↑ Disabling "Control Flow Guard" in Windows Defender Improved stuttering and low FPS : PUBATTLEGROUNDS - Reddit - last accessed on May 2023
- ↑ https://www.purepc.pl/test-wplywu-funkcji-izolacja-rdzenia-na-wydajnosc-w-grach-na-systemie-windows-11?page=0,2
- ↑ Understanding the performance impact of Spectre and Meltdown mitigations on Windows Systems - Microsoft Security - last accessed on 2020-09-15
- ↑ Benchmarks for all the security patches and microcode updates on a Skylake 6700K : hardware - last accessed on 2020-09-15
- ↑ https://www.purepc.pl/rozrywka/wkrotce_beta_gears_of_war_5_znamy_wymagania_sprzetowe_na_pc#comment-586406
- ↑ Intel/AMD uCode fix for Spectre, HT bug fix and Meltdown. | NotebookReview