GithubHelp home page GithubHelp logo

gamingtweaks's Introduction

Felipe#8581 at discord GamingTweaks

A collection of cool hidden and not so hidden tweaks
This is heavily inspired by RevisionOS discord and Calypto's Guide.

Shortlink: https://git.io/JvfJ6

Read this in other languages: Englishp, Portuguesep

Note: Some minimal stuff is Administrator protected/Windows protected, like disabling Scheduler service for example, best and easy method to make everything work in tweaking in Safe Mode.

Table of Contents

Custom ISOs

This is such a important move, will make 50% of work done. Choose your ISO wisely. Removing/stripping too much cause more issues and incompatibility and doesnt help with performance or speed, i blindly trust those ISO community creators because they have much experience.

Windows 7 by EvolveOS 4.0.iso
Learn more about them in Evolve discord

Windows 8.1 by UnifyOS 1.5.iso
Learn more about them in Revision discord

Windows 10 1709 by Revision U3.5.iso
Learn more about them in Revision discord

Windows 10 2004 by Revision BETA.iso
Learn more about them in Revision discord

Note: Installing them in MBR or GPT might give you different feels ingame. Experiment between those two options
DWM (Desktop Window Manager) is prooved to be bad in every scenario, you should remove it in any win version.
Windows 7 is by far the best for performance, but you can wisely pick, experiment and tweak newer versions as well.

Windows Timers

Windows timers are a complex topic. There are different types and results may vary.
To undo a command in bcdedit, do bcdedit /deletevalue X (where X is useplatformclock, x2apicpolicy, etc.)

bcdedit /set disabledynamictick yes (Windows 8+)
This command forces the kernel timer to constantly poll for interrupts instead of wait for them; dynamic tick was implemented as a power saving feature for laptops but hurts desktop performance

bcdedit /set useplatformtick yes (Windows 8+)
Forces the clock to be backed by a platform source, no synthetic timers are allowed
Potentially better performance, lowers timer resolution to .488 instead of .5ms

Time Stamp Counter (TSC) (default) (bcdedit /set useplatformclock false)

TSC is reliable and will give you the lowest latency and highest fps, but not sure if best mouse feeling

ACPI Power Management Timer (PMT) (bcdedit /set useplatformclock true + HPET BIOS OFF)

PMT is a highly stable high frequency clock, it doesn't sync, because it is not set to a fixed heartbeat. It is frequency based, which means that it will never delay another tick from happening. This can eliminate the chance of having stutters.

High Precision Event Timer (HPET) (bcdedit /set useplatformclock true + HPET BIOS ON)

HPET is highly stable high frequency clock, but it is programmed to be synced tightly, since it is set to tick every x amount of time, regardless of hardware configuration. HPET would be good if all cores ticked at the exact same speed and were naturally synced, but that is something that rarely ever happens which is why it is bad for so many people. HPET is a hardware based, synthetic timer, windows made it for debugging purposes and most of the time almost everytime it shouldnt be used. High frequency clocks like HPET may potentially allow for smoother gameplay and better sync at the expense of latency.

Different Windows versions (7/8/8.1/10) all have different ways of using the TSC
Some motherboards have no option to disable HPET, if you are advanced there is custom bios.

Install SetTimerResolutionService

This service increases the resolution of the Windows kernel timer, which will significantly lower latency.
Drop this file in C:/ folder, the file must be there to service work
Open command promt and paste:

cd C:/
SetTimerResolutionService -install

Download SetTimerResolutionService

You can optionally use my settings, but i would love you to understand and try out what i just writed.

bcdedit /set useplatformclock no
bcdedit /set useplatformtick yes
bcdedit /set disabledynamictick yes
bcdedit /set nointegritychecks yes
bcdedit /set bootmenupolicy legacy
bcdedit /set bootux disabled
bcdedit /set hypervisorlaunchtype off
bcdedit /set nx optout
bcdedit /set quietboot yes
bcdedit /set tpmbootentropy default
bcdedit /set {globalsettings} custom:16000067 true
bcdedit /set {globalsettings} custom:16000068 true
bcdedit /set {globalsettings} custom:16000069 true
bcdedit /timeout 3
bcdedit /set uselegacyapicmode no
bcdedit /set usefirmwarepcisettings yes
bcdedit /set tscsyncpolicy legacy
bcdedit /set x2apicpolicy enable
add reg HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Reliability /v TimeStampInterval /t reg_dword /d 0 /f

This is my current settings and with HPET BIOS OFF
If you see stutterings, you need to figure out better settings.

MSI-Mode

MSI is Message Signaled-Based Interrupts, a faster and better method that replaces Windows Line-Based interrupt mode.
Some drivers default to using legacy pin-triggered interrupts, which are now emulated and are slower than using MSI.

Only set sata if you have sure its compatible, if you set it wrong you will BSOD

MSI

Changing the values of PCI ISA Bridge and PCI CPU Host with the Interrupt Affinity Policy tool will make them appear in the list if you want. Simple set and unset affinities, most of the time messing with this should be minimal changes for best results.

Download MSI-mode utility v2
Read more Windows Line Based vs MSI Based.

Affinity Policy Tool

This tool sets affinity for a driver’s interrupts,
Using only one CPU affinity for usb and gpu can yield improvements in performance and responsiveness

Mouse device and correspondent USB controler/hub to one single CPU (I use CPU1)
GPU and correspondent PCI to a different one single CPU (I use CPU3)

AFF

AFF

Download Affinity Policy Tool

Process Scheduling

What is Win32Priority:

is the amount of time the Windows process scheduler allocates to a program. Short quantum will improve responsiveness at the expense of more context switching, or switching between tasks, which is computationally expensive. Long quantum will improve performance of programs at the expense of lower responsiveness. Why would you want long quantum, then? Well, it minimizes context switching and will make the game run smoother, resulting in better consistency when aiming. However, short quantum could potentially decrease input lag which would improve consistency as well. The higher the boost, the better the FPS and smoothness will be, but you may experience degraded input response with high boost. Generally, long quantum results in better smoothness but slightly degraded mouse response, whereas the opposite is true for short quantum.

New info by Nimble: Calypto's guide and this text created based on him is written based on mouse interrupts being a background process Thus no foreground boost, but from what I gather its the other way around. That mouse or keyboard determines what is the foreground, and then boost value determines how much more priority that thread gets Which if its a game that uses raw input, the game gets boosted shunning background processes, while polling through raw input with higher priority, thus taking further mouse input over other background processes So the one for smoothness(as he writes), would also be the best for input, on the condition that program is in exclusive fullscreen and using rawinput (not direct input)

42 Decimal = Short, Fixed, High foreground boost. 2A Hex
41 Decimal = Short, Fixed, Medium foreground boost. 29 Hex
40 Decimal = Short, Fixed, No foreground boost. 28 Hex
38 Decimal = Short, Variable, High foreground boost. 26 Hex
37 Decimal = Short, Variable, Medium foreground boost. 25 Hex
36 Decimal = Short, Variable, No foreground boost. 24 Hex
26 Decimal = Long, Fixed, High foreground boost. 1A Hex
25 Decimal = Long, Fixed, Medium foreground boost. 19 Hex
24 Decimal = Long, Fixed, No foreground boost. 18 Hex
22 Decimal = Long, Variable, High foreground boost. 16 Hex
21 Decimal = Long, Variable, Medium foreground boost. 15 Hex
20 Decimal = Long, Variable, No foreground boost. 14 Hex

w

Try to understand the values, try to test the values, choose your desired value.
I will no more recommend a single value, i can barely feel difference, tests in latency barely prove anything.
But seems like those values are the ones people like more: 42, 37, 26, 22, 16

To set Win32PrioritySeparation to 22 Decimal (16 Hex), paste this to Command Promt:

reg add "hklm\system\controlset001\control\prioritycontrol" /v win32priorityseparation /t reg_dword /d 00000022 /f

Read more about Process Scheduling and Win32PrioritySeparation

Power Options

Credit goes to n1kobg who writed this program to merge a good power plan:
What it does: Disable wake timers, USB Suspend setting, Controls CPU Idle, Disable Power Savings, Unpark cores and more.

Open command promt and type:
powercfg -import C:/2.7.pow
Open Power Options and select Revision

Download Revision 2.7 power plan.pow

IF AMD RYZEN

Device Clean Up Tool

This is a usefull utility to remove detached/ghost devices, very safe to do.

wake

Download Device Clean Up Tool

Services

Listen, use regedit, remove the necessary dependencys

Windows 7 REWORKED SOON

FINAL STAGE OF SERVICES WINDOWS 8.1 UNIFYOS MSI

FINAL STAGE OF SERVICES WINDOWS 10 2004 REVISION BETA MSI

BIOS

This is very important for your system, make sure to check every setting

Must do:

Disable C-State (CPU Enhanced Halt (C1E), C3, C6, C7, C8)
Disable Intel (R) Speed Shift Technology
Disable CPU Enhanced Intel Speedstep Technology (EIST) Function
Disable any Active State Power Management (ASPM)/Aggressive Link Power Management (ALPM) settings
Disable OnBoard Video, Audio or Lan Controller if you have a PCI/USB one that is or will be installed.
Disable Platform Power Management
Disable Legacy USB Support, Port 60/64 Emulation
Disable any onboard LED traces/lightsEnable Turbo Boost
Disable not used features
Enable XMP
Set any Fast Boot Settings to OFF
Set your PCI Express Max Link Speed to Gen3

Remove all protections and power savings, enable max performance/power

Internal PLL Overvoltage Disabled
Spread Sprectum Disabled
BCLK Recovery Disabled
Intel Rapid Start Disabled
Intel Smart Connect Disabled
EPU Power Saving mode Disabled
CPU Load-line Calibration(LLC) 7
CPU Power Phase Control Extreme
CPU Power Duty Control Extreme
CPU Current Capability 140%
CPU Frequency Tuning Mode +6%
CPU Frequency Switch Max
DRAM Frequency Switch Max
DRAM Current Capability 130%
DRAM Power Phase Control Extreme
Termination Anti-Aliasing Enabled
Enhanced Intel SpeedStep Technology Disabled
Long Duration Package Power Limit 9999
Short Duration Package Power Limit 9999
CPU Integrated VR Current Limit 9999
Package Power Time Window 9999
Idle Power-in Response Fast
Idle Power-out Responde Regular
Power Current Slope Level-4
Power Current Offset -100%
Power Fast Ramp Response 1.5
CPU C-States Disabled
CFG Lock Enabled
High Precision Timer Disabled
Intel Adaptive Thermal Monitor Disabled
Hyper-threading Disabled
Execute Disable Bit Disabled
Intel Virtualization Technology Disabled
Disable USB xHCI
Disable USB EHCI Hand-Off
Disable Legacy USB(after installing OS, cause you need this i guess for MBR install)

Overclocks

All tools necessary:
Download OCCT 5.4.2
Download MEMTest64

Bat Tweaks

Note: I would love you to read the file first before using it, its open-source and easy to check what he will do.
It contains: Network and adapter tweaks, memory tweaks, gpu tweaks, and misc stuff
Works for all Windows Versions:

Download Reg Tweaks.reg

NVIDIA settings

Uninstall current driver with DisplayDriverUninstaller(DDU)
You should download and use my pre-debloated drivers

Download NVIDIA 445.75 win7 or win8.exe
Download NVIDIA 445.75 win10.exe

USE DATO BASE PROFILE SETTINGS

MSI

Adittionally you can use Nvidia Inspector with this profile:
Download Inspector Dato Base Profile.nip

KMS activator

KMS_VL_ALL_AIO.cmd

Useful links

PC/Windows Stuff
RevisionOS discord
Calypto discord
Fr33thy discord
n1kobg discord
EvolveOS discord
The-Eye.eu
PrivacyTools.io
CHEF-KOCH github
KMS_VL_ALL github

Guides
Revision BIOS Tweaking Guide
Hydro Device Manager Guide
Hydro Affinity Guide
Hydro NVIDIA Panel Guide
Hydro Stripping NVIDIA Driver Guide
Calypto Tweak Guide
Fr33thy Youtube
n1kobg.blogspot.com
Bunny Guides

Peripherals/Aiming/Gaming Stuff
Sparky Aim discord
Setup tips page
Sensitivity calculator
Overclock.net/mices
Reddit/MouseReview
Reddit/MousepadReview
TFT Central Monitor Reviews
RTings Monitor Reviews
Blurbusters Monitor Stuff

Files/Tools
MouseTester
LatencyMonitor
DeviceRemover
NVIDIA Inspector
IO Bit Unlocker
Power Run
DNSBenchmark
Autoruns
CPU-Z + GPU-Z + HWINFO
MSI-Mode v2 + Affinity Policy Tool

Game Configs
Quake Live Config
DIABOTICAL Config
CSGO Config

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.