[Being Updated...ironing out a bug or two]
NTLite Profile:
Ongoing tweaking of LTSC 2019, aimed at mimimal runtime overhead and interference for (competitive) gaming, reducing security attack vectors, whilst retaining maximum compatibility (Not breaking stuff, no guarantees though)
Component removal is pretty much where I want it to be so I don't expect more tweaking there. Profile is NOT aimed towards completely minimizing installation/iso size, as this is more catered towards a different goal.
Games do not care how much and which parts of Windows installation are actually stored on the drive, the only thing that matters is what is currently running (in the background) that could potentially interfere with a gaming session, frametimes, fps etc. The profile aims to minimize overhead, services, and anything that can NOT be disabled through services or otherwise could ruin performance, will be ripped out. Anything that CAN be disabled optionally we keep around if it might impair general compatibility. Profile is Microsoft Store Compatible.
Rest of the profile is aimed at power user configuration. Adjust to your liking, this is at the end a personal preference profile catered to myself, just sharing how I run my gaming OS
__________________________________________________________________________________________________________________________________________________________
ISO: SW_DVD5_WIN_ENT_LTSC_2019_64-bit_English_MLF_X21-96425.ISO
NTLite: v1.9.0.7276 (Stable)
Prepping original .iso:
1. Add -> Template -> .NET Framework 3.5 (Optional, but if you use apps that still require it..)
2. Integrate latest cumulative update for this Windows build. i.e. KB4530715, Integrate latest .NET3/4 cumulative update, latest servicing stack. Skip Adobe Flash Player, Skip Intel microcode updates? (Not sure on performance impact).
3. Create .iso and use this to apply further tweaking i.e. apply NTLite.xml profile. Saves some time when problems occur, otherwise you'd have to do the reintegration process over and over again.
Apply customized profile:
1. Apply NTLite.xml profile.
2. Adjust to your own liking, not everything I changed might be desirable for you. Maybe I removed something that you want, and vice versa.
3. Get hardware profile from your target computers and import them into the profile. Then go to Compatibility -> Machine Support -> Select your hardware profiles. (If you don't do this, you can end up with non-functioning hardware/drivers and there will be no in-box microsoft drivers for some of your hardware! In-box drivers are often least bloated versus vendor ones, and thoroughly tested. Your mileage may vary)
(I import all of it, virtual machine guests, and all the hardware I have available here at home (Different boxes)
4. Unattended, Auto-fill and use built-in Administrator account and set password. Anything else is filled in pretty much as desired out of the box.
5. Registry files:
Look them up in attachment, the path will differ from when I used the the profile so you'll have to re-add them yourself.
THANKS TO CLANGER FOR SOME ADDITIONAL REG FILES WHICH I FOUND USEFUL! To keep them separate, my own reg files will start with MT-LTSC- suffix.
6. Post-setup
powercfg /hibernate off (Disables hibernation file)
net accounts /maxpwage:unlimited (No password expiration)
powercfg /d a1841308-3541-4fab-bc81-f71556f20b4a (Remove unnecessary power plan, only keep balanced/Ultimate)
powercfg /d 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (Remove unnecessary power plan, only keep balanced/Ultimate)
bcdedit /set nx AlwaysOff (No clue if it affects performance)
bcdedit /set bootmenupolicy legacy (Gives ability to press F8 for selection screen, doesn't affect boot speed)
bcdedit /set bootlog yes (Creates boot log Ntbtlog.txt file in the %WINDIR% directory, could be useful for debugging)
.....
Lots of other things to disable Task scheduler tasks, unhide power plan settings, etc.
Some screenies:
Desktop
View attachment 2640
Personalization
View attachment 2641
Control Panel
View attachment 2642
Services
View attachment 2704
Task Manager
View attachment 2707
______________________________________________________________________________________________________________________________________________________________
Some stuff to do after installation:
1. Use OldNewExplorer tool to fix explorer windows black outline not existing in 1809, see example.
The middle and top one are broken by default, there is no 1 pixel wide black line between the white titlebar and drop shadows.
View attachment 2646
2. Apply post-registry file 'DisableFSOGlobally.reg' to disable Full Screen Optimizations system wide (At least for most DX9/10/11 games).
Its not conclusive whether it is actually desired to disable it or not. Some tests show better frametimes, albeit in margin of error.
3. Go over 'Settings' and configure everything, some sections will 'crash' settings, this is because the services for these elements are disabled (this is actually a good thing), so there really isn't much to configure there to begin with as it is already disabled from executing/interfering ;-)
Never touch the network section in 'settings' at all! This just starts adding random WAN miniport devices to device manager by default, there's nothing to configure here that cannot be configured elsewhere anyway.
4. Go over Computer management/Task scheduler/Control Panel etc and disable/configure stuffz.
This part only if you know what you're doing:
5. Use 'MSIUtil' from Guru3D forums to enable MSI on devices (Becareful, this can cause BSOD if you dont know what you're doing!)
6. Disable unnecessary devices from device manager (Just to illustrate)
i.e. Set Write cache flushing off on your gaming/windows NVMe, turn off power saving and offloading and other unnecessary functionality from network adapter.
View attachment 2647
7. Run LatencyMon on max core clock and check your DPC latency. I'm sitting at 5-10~us idle.
8. If you want balls deep (High chance of breaking boot with bsod);
- MSIUtil to set MSI mode and priorities. i.e. set USB/NET to High, Audio devices to Low.
- Interrupt Affinity Policy Tool can keep interrupts for devices on assigned CPU's. I put my USB and NET on core 0 (Testing showed lower latency).
- TCPOptimizer useful to alter/disable network device settings.
______________________________________________________________________________________________________________________________________________________________
MS Store integration possible, everything should work. Tested with a few small games in a VMware machine; Roblox, Candy Crush, etc.
Integrate: Copy to C:\ then extract and run script.
drive.google.com
(Potentially) required services (That are potentially initially disabled by this profile):
- Windows Update
- Update Orchestrator (UsoSvc, Enable through Registry)
- Delivery Optimization
- Background Intelligence Transfer Service
- Network Connection Broker
- Microsoft Account Sign-in Assistant
- WPNServices* (Enable through registry)
- ClipSvc (Enable through registry)
- AppReadiness (Enable through registry)
Other services may be required depending on the specific app/game.
Some services are set on manual, only trigger on running Store or UWP apps (Hence why they are not disabled but on manual)
Troubleshooting:
1. Ask away, maybe it is just incompatibility with your hardware/needs or wrong image/ntlite version!
2. Test in a VM first (i.e. VMware).
Make sure to select 'I will install an operating system later', otherwise the installation seems to use its own autoattend version. This can disguise problems which could popup on installation on a physical computer.
3. Reg file MT!-LTSC (With exclamation mark) unloads more drivers/services and is highly experimental and not yet thoroughly tested. Could break on non-efi or csm compatibility setup)