Friday, November 21, 2014

Video game performance - increase framerates and reduce lag

Update Punkbuster

Windows: Set power plan to High Performance
- Known issue where other performance plans do not allow the maximum resource usage

Disable antivirus (or uninstall and reboot)
- Option 1: Add game folder and executable to exclusion list
- Option 2: Disable real time scan
- Option 3: Uninstall completely and reboot (removes file system filter driver). Testing has shown a significant performance difference between "installed but disabled," "removed, not rebooted," and "removed, rebooted."

Graphics card: Disable power saving (set to maximum performance)

Windows: Configure to use no pagefile

Windows: Stop unnecessary services and processes
- List at the bottom of this post
- Stop, but don't disable. Some services are needed for general use, but not needed for gameplay

Windows: Set game executable, Punk Buster A, and Punk Buster B process priority to High

Windows: Use a standard, non-Aero theme
- Reduces GPU memory used by OS
- GPU memory usage can be verified in EVGA precision or similar

Browsers (Firefox, IE, Chrome, etc): Disable graphics acceleration
- Frees up GPU resources

BIOS: Verify RAM settings
- Use XMP auto profile to detect correct CAS & latency (don't use auto settings)
- Manually configure the correct memory bandwidth (don't use auto)
- Manually configure correct UCLK frequency
- Use CPU-Z to verify the settings before changes and after changes
- Example: 7.3 Windows Experience Index on "auto" settings. 7.7 Windows Experience Index on correct "manual" settings

BIOS: Disable Hyper-threading

BIOS: Disable CPU power saving features
- Including SpeedStep, C1, C2, C3 states

BIOS: Verify use of the correct QPI setting
- Don't use auto - configure manually

Network: Disable flow control on the network adapters on your network

Network: Install router / cable modem as close to the d mark as possible

Network: Do not use wireless
- No bandwidth lost to frequency competition with neighbors
- Physical connection will always perform better

Network: Direct wire to the router / cable modem with no cable interruptions and no intermediate switches / routers
- Use a CAT6 shielded cable

Network: Power down other devices on the network
- Performance will be poor if someone or something else is using your network (Netflix, cable box firmware or schedule updates)
- This includes powering off your cable boxes, which will use data channels to download programming and firmware updates on an unknown / unpredictable schedule
- If you are experiencing sudden but momentary lag in game, drops in framerates, etc - this could be the culprit

Network: Make sure all devices are running at 100/Full or 1000/Full
- 100/full devices will need to be manually configured
- Some low cost switches are not configurable, but support 100/full if the endpoint specifies it

Disk Performance: Verify AHCI mode is enabled
- If using single disk, use AHCI (Doesn't apply if using motherboard RAID)

Disk Performance: Use an SSD
- Samsung 840 or 850 pro at 256GB or greater (smaller sizes have lower throughput)

Game: Use lowest graphics settings

Game: Disable anti-aliasing and other post-processing effects, including motion blur

Applies to:
- Battlefield 4 BF4
- Battlefield 3 BF3

Appendix: Services to stop
Computer Browser
WLAN AutoConfig
Extensible Authentication Protocol
Peer Networking Grouping
HomeGroup Provider
Adobe Acrobat Update Service
Apple Mobile Device
Application Experience
Application Information
Background Intelligent Transfer Service
Bonjour Service
Certificate Propagation
CNG Key Isolation
Cryptographic Services
DCOM Server Process Launcher
Desktop Window Manager Session Manager
DHCP Client
Diagnostic Policy Service
Diagnostic Service Host
Distributed Link Tracking Client
Encrypting File System (EFS)
Function Discovery Provider Host
Function Discovery Resource Publication
Group Policy Client
HomeGroup Listener
IKE and AuthIP IPsec Keying Modules
Intuit Update Service v4
IP Helper
iPod Service
IPsec Policy Agent
NVIDIA Display Driver Service
NVIDIA GeForce Experience Service
NVIDIA Network Service
NVIDIA Stereoscopic 3D Driver Service
NVIDIA Streamer Service
Offline Files
Peer Name Resolution Protocol
Peer Networking Identity Manager
Plug and Play
Portable Device Enumerator Service
Print Spooler
Program Compatibility Assistant Service
Remote Desktop Configuration
Remote Desktop Services UserMode Port Redirector
Remote Desktop Services
Smart Card
UPnP Device Host
SSDP Discovery
VMware Workstation Server
VMware Authorization Service
VMware DHCP Service
VMware NAT Service
VMware USB Arbitration Service
Windows Font Cache Service
Windows Image Acquisition (WIA)
Windows Media Player Network Sharing Service
Windows Update

Appendix: Tasks to stop

Appendix: Script to stop services and tasks
- Save services to stop list as SERVICES.TXT
- Save tasks to stop list as TASKS.TXT

@echo off
Echo Services
for /f "delims=" %%x in (C:\custom\services.txt) do @echo %%x&net stop "%%x"
Echo Tasks
for /f "delims=" %%x in (C:\custom\tasks.txt) do @echo %%x&taskkill /im "%%x" /f
Echo Press Enter to run again
Echo CTRL+C to exit
goto :Start