- Messages
- 16
- Reaction score
- 65
- Points
- 90
Fixing PERPheads on Linux: The Complete Performance & Stutter Guide (NVIDIA / AMD / Intel)
Before I start, I don't exactly know how helpful this will be to users, and I don't know if people even play perp on linux, but I had alot of issues so here it is :3
If you’ve tried running PERPheads on Linux , you’ve probably ran into the exact same issues I did: the game locking up when joining the server, FPS freezing when going into the baz, or the game crashing during asset downloads/ lua downloads.
Because GMod’s native Source engine is getting old and PERP relies on hundreds of custom vehicle models, high-res skins, and heavy Lua scripts, the default ootb Linux config just doesn't work.
I spent the last couple days testing different engine flags, Mesa drivers, and launch parameters across NVIDIA, AMD, and Intel hardware. Here is the full breakdown to get it running smoothly.
---
1. The Core Requirement: x86-64 Chromium Branch
Do NOT skip this. The default 32-bit branch caps GMod at ~3.5 GB of RAM usage. When PERPheads tries to mount all server content, you will hit an Out Of Memory (OOM) crash before you even spawn at the Transit Center.
How to switch:
1. Open Steam -> Right click Garry's Mod -> Properties
2. Click the Betas tab.
3. Under Beta Participation, select:
4. Let Steam download the ~1.2 GB update.
---
2. GPU Launch Options (Pick Yours)
Go to Garry's Mod Properties -> General -> Launch Options and paste the corresponding string for your graphics card.
NVIDIA GPUs (Proprietary Drivers)
NVIDIA’s OpenGL driver on Linux performs fine, but its thread management is disabled by default for GMod, causing severe micro-stutters when driving past dense areas like Suburbs or Business Square.
Additional NVIDIA fix:
Open your NVIDIA Settings control panel from your terminal/app menu, go to PowerMizer, and set it to "Prefer Maximum Performance". On Linux, NVIDIA GPUs love downclocking to lowest power states during Source engne loading screens, which causes massive hang times.
---
AMD GPUs (Mesa RADV / ACO)
Mesa’s open-source drivers are incredible, but OpenGL pipeline compilation stutters hard whenever new vehicle shaders load in. Forcing Mesa's GL threading and the ACO compiler fixes this completely.
AMD / Wayland Tip:
If you are on Wayland (KDE or GNOME) and experience weird floaty mouse lag or click misalignment on the F1 menu, add `m_rawinput 1` into your in-game console or force Xwayland.
---
Intel iGPU & Arc Graphics
Intel GPUs struggle heavily with Source 1’s memory allocation overhead. Pushing pinned memory allocations directly into system VRAM keeps your frametimes steady.
Intel In-Game Video Settings:
* Model Detail: Medium
* Shadow Detail: Low
* Water Detail: Simple Reflections
---
3. Setting up autoexec.cfg for Permanent Multithreading
Source likes to reset multi-core commands back to single-core every time you change a video setting or reconnect to the server. Forcing them via `autoexec.cfg` makes them stay enabled.
1. Navigate to your GMod config directory:
* Standard Steam:
* Flatpak Steam*:
I highly recommend using Standard steam over flatpak.
2. Create a text file named autoexec.cfg (if it doesn't exist) and paste this block:
---
4. Essential System Tweaks
1. Install Feral GameMode
If you haven't installed GameMode, your CPU will drop its governor frequency when idle in a building.
* Ubuntu/Debian/Mint:
* Arch/Manjaro:
* Fedora:
*(This is why we have `gamemoderun` included in the launch options above).*
2. Watch out for Disk Space on Root (/)
GMod caches gigabytes of server downloads. If your `/` partition runs out of space, the game won't throw an explicit error. It will just hang at the joining screen indefinitely or in some instances not even allow you to boot steam, apps, or games.
Keep an eye on `df -h`.
---
If anyone needs support, just reply with your distro and preferably your specs and I will get back to you <3
- A Linux Perp User
Before I start, I don't exactly know how helpful this will be to users, and I don't know if people even play perp on linux, but I had alot of issues so here it is :3
If you’ve tried running PERPheads on Linux , you’ve probably ran into the exact same issues I did: the game locking up when joining the server, FPS freezing when going into the baz, or the game crashing during asset downloads/ lua downloads.
Because GMod’s native Source engine is getting old and PERP relies on hundreds of custom vehicle models, high-res skins, and heavy Lua scripts, the default ootb Linux config just doesn't work.
I spent the last couple days testing different engine flags, Mesa drivers, and launch parameters across NVIDIA, AMD, and Intel hardware. Here is the full breakdown to get it running smoothly.
---
1. The Core Requirement: x86-64 Chromium Branch
Do NOT skip this. The default 32-bit branch caps GMod at ~3.5 GB of RAM usage. When PERPheads tries to mount all server content, you will hit an Out Of Memory (OOM) crash before you even spawn at the Transit Center.
How to switch:
1. Open Steam -> Right click Garry's Mod -> Properties
2. Click the Betas tab.
3. Under Beta Participation, select:
Code:
x86-64 - Chromium + 64-bit binaries
---
2. GPU Launch Options (Pick Yours)
Go to Garry's Mod Properties -> General -> Launch Options and paste the corresponding string for your graphics card.
NVIDIA GPUs (Proprietary Drivers)
NVIDIA’s OpenGL driver on Linux performs fine, but its thread management is disabled by default for GMod, causing severe micro-stutters when driving past dense areas like Suburbs or Business Square.
Code:
__GL_THREADED_OPTIMIZATIONS=1 __GL_SHADER_DISK_CACHE=1 gamemoderun %command% -novid -nojoy -high +gmod_mcore_test 1
Additional NVIDIA fix:
Open your NVIDIA Settings control panel from your terminal/app menu, go to PowerMizer, and set it to "Prefer Maximum Performance". On Linux, NVIDIA GPUs love downclocking to lowest power states during Source engne loading screens, which causes massive hang times.
---
AMD GPUs (Mesa RADV / ACO)
Mesa’s open-source drivers are incredible, but OpenGL pipeline compilation stutters hard whenever new vehicle shaders load in. Forcing Mesa's GL threading and the ACO compiler fixes this completely.
Code:
RADV_PERFTEST=aco mesa_glthread=true gamemoderun %command% -novid -nojoy -high +gmod_mcore_test 1
AMD / Wayland Tip:
If you are on Wayland (KDE or GNOME) and experience weird floaty mouse lag or click misalignment on the F1 menu, add `m_rawinput 1` into your in-game console or force Xwayland.
---
Intel iGPU & Arc Graphics
Intel GPUs struggle heavily with Source 1’s memory allocation overhead. Pushing pinned memory allocations directly into system VRAM keeps your frametimes steady.
Code:
mesa_glthread=true -gl_amd_pinned_memory gamemoderun %command% -novid -nojoy -low +gmod_mcore_test 1
Intel In-Game Video Settings:
* Model Detail: Medium
* Shadow Detail: Low
* Water Detail: Simple Reflections
---
3. Setting up autoexec.cfg for Permanent Multithreading
Source likes to reset multi-core commands back to single-core every time you change a video setting or reconnect to the server. Forcing them via `autoexec.cfg` makes them stay enabled.
1. Navigate to your GMod config directory:
* Standard Steam:
Code:
~/.local/share/Steam/steamapps/common/GarrysMod/garrysmod/cfg/
Code:
~/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/GarrysMod/garrysmod/cfg/
2. Create a text file named autoexec.cfg (if it doesn't exist) and paste this block:
Code:
// PERP Linux Multi Core Optimization
gmod_mcore_test 1
mat_queue_mode 2
cl_threaded_bone_setup 1
cl_threaded_client_leaf_system 1
r_threaded_renderables 1
r_threaded_particles 1
r_queued_ropes 1
fps_max 144
---
4. Essential System Tweaks
1. Install Feral GameMode
If you haven't installed GameMode, your CPU will drop its governor frequency when idle in a building.
* Ubuntu/Debian/Mint:
Code:
sudo apt install gamemode
Code:
sudo pacman -S gamemode
Code:
sudo dnf install gamemode
2. Watch out for Disk Space on Root (/)
GMod caches gigabytes of server downloads. If your `/` partition runs out of space, the game won't throw an explicit error. It will just hang at the joining screen indefinitely or in some instances not even allow you to boot steam, apps, or games.
Keep an eye on `df -h`.
---
If anyone needs support, just reply with your distro and preferably your specs and I will get back to you <3
- A Linux Perp User

