Windows 10 optimization github
🚀 Windows 10 Latency Optimization – гайд про оптимизацию Windows и уменьшение задержек (latency, input-lag, throttling и stuttering), а так же про повышение FPS.
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Да-да, это очередной гайд по настройке Windows. Здесь не будет настроек, которые относятся к внешнему виду и прочей мишуры. Это так же не является каким-то ультимативным гайдом, но здесь я попытался собрать именно те твики и настройки, которые работают. Здесь нет бессмысленного переписывания не нужных и старых твиков – в основном это попытка собрать оптимизации, которые служат для уменьшения задержек, инпут-лага и троттлинга путём отключение таймера HPET в Windows, настройки и приоритизации прерываний устройств и их драйверов, а так же отключение энергосберегающих функций. Благодаря этим настройкам система становится более отзывчивой, пропадают фризы и микролаги в Windows и ресурсоёмких приложениях, а так же увеличивается плавность в играх. Кроме этого данный гайд так же может решить проблемы с задержками при движении мыши, заиканием звука при использовании других устройств и прочие неприятности связанные с задержками между устройствами.
Настройки для игр
✨ Если у вас есть конкретные рекомендации как улучшить или изменить данный гайд или какие-то предложения и пожелания, то можете написать обо всём в Обcуждениях.
About
🚀 Windows 10 Latency Optimization – гайд про оптимизацию Windows и уменьшение задержек (latency, input-lag, throttling и stuttering), а так же про повышение FPS.
Windows 10 optimization github
Windows 10 optimization script
What does this script do?
This script removes potential bloatware comes with Windows 10 and optimizes some settings.
Clone or download zip this repo, simply unzip it and run optimize.bat file.
optimize.bat is recommended for use after clean Windows install.
optimize — partial system apps remove.bat is recommended for average users, recommended for running Windows installation.
optimize — minimal no apps remove.bat is recommended for Windows fanboys who likes to keep apps and don’t want to change anything.
enable UAC.bat is a simple script to enable UAC who likes to keep it.
Please verify the SHA256 hash of SetACL.exe with the given one to verify the integrity of the file.
What does it optimizes?
The thing it does is listed here.
- Disable metro boot menu (For BIOS/Legacy MBR dual boot users)
- Uninstall OneDrive
- Hide PerfLogs folder
- Reveal Public Desktop folder
- Set Hibernation type to Reduced
- Delete «Microsoft Edge» shortcut from Desktop
- Delete «Your Phone» shortcut from Desktop
- Disable some Services
- Enable Developer mode (disabled due to unwanted issues)
- Change Folder options
- Disable Slideshow during Lock Screen
- Enable Dark Mode
- Remove «- Shortcut» text from shortcuts
- Enable Peek at desktop
- Disable Windows Defender SmartScreen Filter
- Disable first login animation
- Disable all Content Delivery Manager features
- Disable all suggested apps
- Disable mouse acceleration
- Disable User Account Control prompts (Use enable UAC.bat to enable it)
- Disable Network Location Wizard prompts
- Disable Gamebar
- Disable Game Mode
- Disable automatic updates
- Change Performance Options to Adjust for best appearence
- File Explorer opens to This PC
- Disable Aero Shake
- Disable «Look for an app in the Store» dialogue
- Disable «You have new apps that can open this type of file» notification
- Disable Automatic Maintenance
- Disable «Windows protected your PC» dialogue
- Disable Malicious Software Removal Tool from installing
- Disable Error Reporting
- Keep thumbnail cache upon Restart
- Increase System Restore point frequency
- Disable Cortana
- Disable JPEG wallpaper quality reduction
- Increase 15 file selection limit that hides context menu items
- Replace «Personalize» with «Appearance» in desktop context menu
- Replace «Display Settings» with «Settings» in desktop context menu
- Add «Open Command Prompt here» to context menus
- Remove «Open PowerShell window here» from Shift+Right-click context menus
- Enable Windows Installer in Safe Mode
- Increase 3 pinned contacts limit on taskbar
- Disable online tips in Settings
- Set «Do this for all current items» checked by default
- Add «.bat» to «New» submenu of Desktop context menu
- Add «.reg» to «New» submenu of Desktop context menu
- Disable wide context menu
- Remove Desktop from This PC
- Remove Documents from This PC
- Remove Downloads from This PC
- Remove Music from This PC
- Remove Pictures from This PC
- Remove Videos from This PC
- Remove 3D Objects from This PC
- Disable search history in File Explorer
- Remove OneDrive from Navigation Pane
- Remove Network from Navigation Pane
- Remove external drives from Navigation Pane
- Disable suggested apps Windows Ink WorkSpace
- Disable Sharing of handwriting data
- Disable Sharing of handwriting error reports
- Disable Inventory Collector
- Disable Camera in login screen
- Disable Advertising ID
- Disable transmission of typing information
- Disable Microsoft conducting experiments with this machine
- Disable advertisements via Bluetooth
- Disable Windows Customer Experience Improvement Program
- Disable syncing of text messages to Microsoft
- Disable application access to user account information
- Disable tracking of application startups
- Disable application access of diagnostic information
- Disable password reveal button
- Disable user steps recorder
- Disable telemetry
- Disable synchronization of all settings to Microsoft
- Disable Input Personalization
- Disable updates for Speech Recognition and Speech Synthesis
- Disable functionality to locate the system
- Disable peer-to-peer functionality in Windows Update
- Disable ads in File Explorer and OneDrive
- Disable feedback reminders
- Remove Search/Cortana, Task View and People button from taskbar
- Hide frequently used folders in «Quick access»
- Hide recent files in «Quick access»
- Disable Timeline
- Enable clipboard history
- Disable Open File security warning
- Remove «Edit with photos» from context menus
- Remove «Edit with Paint 3D» from context menus
- Remove «Include in library» from context menus
- Disable Microsoft Edge prelaunching
- Disable Microsoft Edge tab preloading
- Change active title bar color to black (not in partial and minimal scripts)
- Change inactive title bar color to grey (not in partial and minimal scripts)
- Remove acrylic blur on sign-in screen
- Removes potential bloat except Photos, Music, Paint 3D, Snip and Sketch in partial and nothing removes in minimal. Microsoft store and Edge cannot be removed.
- Delete startup shortcut
kolossalkernel for making the script and this thread for run as admin code.
Windows 10 optimization github
We have moved to a new location. There will be no additional updates to this repository. Moving forward, all updates, fixes, and improvements will be made in the following location on GitHub:
Automatically apply settings referenced in white papers:
«Optimizing Windows 10, version 1909, for a Virtual Desktop Infrastructure (VDI) role»
URL: https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/rds_vdi-recommendations-1909
This information will be updated once later versions are published on docs.microsoft.com.
A new version of this paper for Windows 10 2004 is pending publication as of 06/18/2020.
You can customize your deployments by editing the .JSON or .TXT input files.
.TXT input file (DefaultUserSettings.txt): If you wish to change registry settings set by this optimization package, you can edit this file and make those changes. .JSON input files: .JSON files have a code block for each respective setting. You can edit the .JSON input files and remove a particular block. For example:
If you wish to keep the Calculator UWP app, locate and delete this block of code from the file ‘AppxPackages.Json’:
- LGPO.EXE (available at https://www.microsoft.com/en-us/download/details.aspx?id=55319) stored in the ‘LGPO’ folder.
- Download and expand the entire repository to your target machine.
NOTE: This script now takes just a few minutes to complete on the reference (gold) device. The total runtime will be presented at the end, in the status output messages.
A prompt to reboot will appear when the script has comoletely finished running. Wait for this prompt to confirm the script has successfully completed.
Also, the «-verbose» parameter in PowerShell directs the script to provide descriptive output as the script is running.
Full Instructions (for Windows 10 2004, OR Windows 10 1909)
NOTE The PowerShell command to start the optimization tool is the same on 1909 or 2004
- Download to the reference machine, in a folder (ex. C:\Optimize), this entire GitHub repository:
- Start PowerShell elevated
- In PowerShell, change directory to the scripts folder (ex. C:\Optimize)
- Run the following PowerShell commands:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
.\Win10_VirtualDesktop_Optimize.ps1 -WindowsVersion -Verbose
IMPORTANT ISSUE (06/18/2020) (Resolved)
Windows 10 Multi-Session has different ‘Privilege Rights’ than standard Windows 10. To this point, these optimization scripts have been based on «normal» Windows 10.
As of 6/18/2020, the «Secedit» and «Audit» files have been deleted from the LGPO backup. Now the only settings applied are local registry settings
Therefore, any differences in security settings based on SKU will not be change by this optimization tool.
Note on disk cleanup (06/11/2020)
Starting with the 2004 version of these scripts, we no longer invoke the Disk Cleanup Wizard (Cleanmgr.exe). DCW is near end-of-life, but also sometimes «hangs» during running of the scripts. Instead some basic disk cleanup has been incorporated into the ‘Win10_VirtualDesktop_Optimize.ps1’ script. There are logs, traces, and event log files deleted. If you wish to maintain log files, you can edit the .PS1 script and remove those entries.
Note on Servicing (06/11/2020)
The 2004 scripts, as currently configured, pause all updates, including Quality Updates. These settings do not affect Windows Defender, which gets it updates independently. If you want to allow your target machine(s) to contact Windows Update to download and apply updates, you can change the following group policy setting either locally, or in central group policy:
Computer Configuration\Administrative Templates\Windows Components\Windows Update\Windows Update for Business\
Select when Quality Updates are received Not configured
You would also want to reset the ‘Update Orchestrator’ service to it’s initial setting of «Automatic (Delayed Start)».
MINOR ISSUE (06/11/2020)
We had removed the «OneConnect» (Mobile Plans) entry from the input file ‘AppxPackages.json’, because that UWP app is no longer in Windows 10, starting with 2004. However, the 2004 scripts are backward compatible with 1909, though have not been tested on any build prior to 1909. Therefore the ‘OneConnect’ app entry was added back to the AppxPackages.json file.
1909 Medium-impact ISSUE (05/11/2020) (Resolved)
WINDOWS UPDATE NOT WORKING With the settings included in the LGPO backup, which is restored to the target during the processing of these scripts, if you attempt to run Windows Update manually, you may not be able to connect. This is because Feature Updates are disabled via local policy in these scripts. If you set all Windows Update policies back to «not configured», then run «GPUPDATE /force», now your machine will connect to Windows Update. The reason these settings are in place in these scripts, is in case you deploy these to a target that is Internet connected, your VM may try to «Feature Update» to the current Windows 10 build, which is termed «2004» (as of May 11, 2020). The settings in place currently, prevent Feature Updates, but also seem to inhibit just downloading monthly updates to the current build. To address this for implementations that prefer to allow Windows Update, a new «fork» of these optimization scripts has been created under the main code folder. The new folder is called «1909_WindowsUpdateEndabled». Within this folder, the local policy settings (LGPO) have all Windows Update settings «not configured». If you need to have Windows Update enabled out of the gate, try the scripts under this folder and raise an issue if any problems are found.
NOTE (05/11/2020): New settings added to default user profile
Disable «Inking & typing personalization» in Settings
1909 Low-impact ISSUE (04/29/2020) (Resolved)
Apps running in the background Several of the built-in UWP apps, such as Skype, Phone, and Photos, will start processes and run in the background, even though the user has not started the app(s). On a single machine this is near-zero impact, but on multi-session Windows, it can be a slightly larger impact issue. There is a setting in the ‘Settings’ app, under ‘Background apps’ that allows you to control this behavior on a per-user basis. However, there is currently no way to change this behavior as a global setting, other than to completely uninstall the app.
If you would like to keep one or more of these apps in your image, and still control the background behavior, you can edit the default user registry hive and set the following settings:
«HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.Windows.Photos_8wekyb3d8bbwe /v Disabled /t REG_DWORD /d 1 /f «HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.Windows.Photos_8wekyb3d8bbwe /v DisabledByUser /t REG_DWORD /d 1 /f «HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.SkypeApp_kzf8qxf38zg5c /v Disabled /t REG_DWORD /d 1 /f «HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.SkypeApp_kzf8qxf38zg5c /v DisabledByUser /t REG_DWORD /d 1 /f «HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.YourPhone_8wekyb3d8bbwe /v Disabled /t REG_DWORD /d 1 /f «HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.YourPhone_8wekyb3d8bbwe /v DisabledByUser /t REG_DWORD /d 1 /f
You could also set these settings with Group Policy Preferences, and should take effect after a log off and log back on.
Low-impact ISSUE (04/22/2020) (Resolved)
In some virtual environments, such as Azure Windows Virtual Desktop, some of the application windows will have no border. An example is Windows File Explorer. You can replicate this by opening Wordpad and File Explorer, then move then around and note that you may not see a border where one app starts and the other ends. One of the optimizations in the latest drop changes the Visual Effects settings (found in System Properties) to reduce animations and effects, while still maintaining a good user experience such as «smoothing screen fonts». The other two optimizations: «show shadows under mouse pointer» and «Show shadows under windows» will enable a shadow effect around the windows like File Explorer, so that the border of the app is now visible. These settings are written to the default user profile registry hive, so would apply only to users whose profile is created after these optimizations run, and on this computer.
Low-impact ISSUE (04/20/2020) (Resolved)
Previously these scripts had a local policy setting at this location set to disabled:
Local Computer Policy \ Computer Configuration \ Administrative Templates \ System \ Internet Communication Management \ Internet Communication settings
With the active tests disabled, Office 365 is not able to contact it’s licensing service, and therefore would not run any of the Office apps. This setting has been changed back to «Not configured» in the included LGPO file.
IMPORTANT ISSUE (01/17/2020) (Resolved)
IMPORTANT: There is a setting in the current LGPO files that should not be set by default. As of 1/17/10. a fix has been checked in to the «Pending» branch. Once we confirm that resolves the issue we will merge. into the «Master» branch. The issue is that Windows will not check certificate information, and thus. program installations could fail. The temporary workaround is to open GPEDIT.MSC on the reference image. The set the policy to «not configured». Here is the location of the policy setting:
Local Computer Policy \ Computer Configuration \ Administrative Templates \ System \ Internet Communication Management \ Internet Communication settings
About
Windows 10 optimization script for VDI configurations