ValheimPerformanceAnalyzer

v1.0.1·Updated 2026-10-05

Analyzes Valheim and mod callbacks, loaded world objects, process CPU and RAM, GPU usage and VRAM, I/O, and admin-only server telemetry. Includes an interactive HUD and sortable HTML report.

Screenshots 3 screenshots

About this mod Author’s original text

Valheim Performance Analyzer

A BepInEx tool for finding which Valheim and mod callbacks consume the most time during gameplay. Version 1.0.1 combines callback profiling, process metrics, optional server telemetry, an interactive HUD, and a local HTML report.

Features

  • Measures exclusive time, call count, average and maximum duration, and exceptions for instrumented recurring callbacks.
  • Records estimated FPS, frame time, slow frames, and the estimated frame-time share of measured callbacks.
  • Measures Valheim process CPU use as a percentage of total logical processor capacity and process resident memory (working set), including average and peak values. On Windows, process memory also uses the native process memory API as a fallback.
  • Reports managed heap size, managed memory change, and garbage collection counts. Heap measurements are sampled separately from the process working set.
  • On Windows, measures the game's process-attributed 3D engine utilization and dedicated graphics memory when the system GPU counters are available. GPU utilization is an approximate per-process sample, not a vendor sensor reading.
  • Reports GPU frame time from Unity when supported by the graphics backend and driver, along with the graphics device and detected total VRAM.
  • Optionally counts loaded world entities with ZNetView, including hidden, inactive, and off-camera trees, items, and buildings. Players and creatures are excluded. The Loaded objects tab consolidates entities by object name and owning mod/game, sorted by quantity, with a total entity count. Expand a row to inspect its Unity instance IDs. Enable Capture loaded objects in the HUD to scan every two seconds during a capture; opening the HUD alone never scans. Enabled captures include the grouped results in the report.
  • Records process read and write bytes and average I/O rates. Windows counters may include cached operations and do not represent physical disk traffic.
  • Measures the observed FixedUpdate rate and compares it with Unity's target rate. On dedicated servers, this represents the simulation ticks observed by the mod.
  • Sends lightweight server FixedUpdate, CPU, and RAM metrics to clients every two seconds. The server sends these metrics only to clients that have this mod installed and whose accounts are recognized as server admins. To view dedicated server metrics, install the mod on both the server and client and connect as an admin. Remote metrics are unavailable without the server mod or admin access.
  • Groups callbacks by mod assembly and combines assembly_valheim with assembly_utils under vanilla Valheim. The frame budget percentage estimates each group's share of observed frame time.
  • Lets you expand each group to inspect its measured callbacks. The Hide vanilla Valheim filter is off by default and also filters the loaded-object list when an object's source can be identified.
  • Includes Summary, Callbacks, Mods, Components, and Loaded objects tabs, plus capture and export controls. Object counts are collected only during captures when Capture loaded objects is enabled; this option is off by default.
  • Lets you resize the HUD by dragging its borders. Press F9 to show or hide the panel, or use the × button to close it. The cursor is released while the HUD is open. Game controls and UGUI interfaces are blocked so the character cannot attack, move the camera, or click items behind the panel.
  • Lets you set the capture duration from the HUD, from 5 to 300 seconds in 5-second increments.
  • During a capture, displays elapsed and total time in the HUD and as a temporary character status effect with an icon and countdown. The effect does not change character attributes.
  • Exports a standalone index.html to BepInEx/config/ValheimPerformanceAnalyzer/Reports/ only when Export last report is clicked. A completed or manually stopped capture remains in the HUD and does not automatically create a report. Numbers follow the language selected in Valheim, and sortable columns use

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file. In multiplayer, the host and every client need the same mods installed.

Dependencies

Install these first, or the mod will not work:

denikson-BepInExPack_Valheim

File & checksum

Filename
ValheimPerformanceAnalyzer-1.0.1.zip
File size
207.9 KiB