MangoHud

A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more. Discord: https://discordapp.com/invite/Gj5YmBb

MIT License

Stars
5.8K
Committers
105

Bot releases are hidden (Show)

MangoHud - MangoHud Version 0.7.2-rc3 Latest Release

Published by flightlessmango 6 months ago

Changes

  • time now has a label (you can remove this label with no_time_label)
  • Wayland keybinds have been added
  • rewritten exec function to have a persistent shell. Should reduce frametime spikes when using exec
  • exec is now right aligned to conform with every other item
  • meson options with_x11 and with_wayland actually have a purpose now
  • added Pop!_OS and SteamOS to build script
  • added a mutex for config to prevent some crashes when accessing config at the same time as reloading
  • winesync and refresh_rate have been changed to small font

Fixes

  • frametime color wasn't being correctly inherited, the user was not able to change it's color
  • fixed a crash when pressing Shift_R + F9
  • config options now correctly override preset options
  • fixed RPM and % being incorrectly assigned for GPU fan speeds
  • graphs had incorrect padding at start of graphs
  • fixed a crash when reloading the config while logging
  • check that cpu input gives a non-zero value
  • fixed minecraft-launcher crashing
  • graphs had incorrect padding leading to a smaller graph
  • fixed a build issue where some meson options would exclude opengl files incorrectly

Parameters

  • no_time_label removes the label before time
  • network shows the throughput in kb/s for all interfaces or a specified list of interfaces e.g network=eth0,wlo1
MangoHud - MangoHud Version 0.7.2-rc2

Published by flightlessmango 7 months ago

Changes

  • time now has a label (you can remove this label with no_time_label)
  • Wayland keybinds have been added
  • rewritten exec function to have a persistent shell. Should reduce frametime spikes when using exec

Fixes

  • frametime color wasn't being correctly inherited, the user was not able to change it's color
  • fixed a crash when pressing Shift_R + F9
  • config options now correctly override preset options
  • fixed RPM and % being incorrectly assigned for GPU fan speeds
  • graphs had incorrect padding at start of graphs

Parameters

  • no_time_label removes the label before time
  • network shows the throughput in kb/s for all interfaces or a specified list of interfaces e.g network=eth0,wlo1
MangoHud - MangoHud Version 0.7.2-rc1

Published by flightlessmango 7 months ago

Changes

  • time now has a label (you can remove this label with no_time_label)
  • Wayland keybinds have been added

Fixes

  • frametime color wasn't being correctly inherited, the user was not able to change it's color
  • fixed a crash when pressing Shift_R + F9
  • config options now correctly override preset options
  • fixed RPM and % being incorrectly assigned for GPU fan speeds

Parameters

  • no_time_label removes the label before time
  • network shows the throughput in kb/s for all interfaces or a specified list of interfaces e.g network=eth0,wlo1
MangoHud - MangoHud Version 0.7.1

Published by flightlessmango 9 months ago

Parameters

  • gamepad_battery has been reworked to device_battery. This parameter current supports the values gamepad and mouse
  • time now has a title
  • fps_metrics takes a decimal value or "avg". e.g avg,0.001 and displays the metrics
  • winesync shows the current implementation of synchronization primitives. E.g ESYNC/FSYNC etc
  • present_mode shows the current vulkan present mode or vsync status in opengl

Changes

  • added support for gpu load on Adreno GPUs
  • added cpu temp for zenpower3 module
  • meson option: mangoplot

Fixes

  • xnvctrl: fix an issue that could cause crashing when accessing gpu fan speed
  • fixed an issue where no config present wouldn't use default mangohud presets
  • fixed a crashing issue with CS2
  • reworked intel code. Should resolve some issues where mangohud didn't shutting down properly when using intel gpu
  • fix opengl runtime on musl libc systems #1133
  • fixed text_outline_color incorrectly using BGR instead of RGB
MangoHud - MangoHud Version 0.7.1-rc2

Published by flightlessmango 9 months ago

  • gamepad_battery has been reworked to device_battery. This parameter current supports the values gamepad and mouse
  • xnvctrl: fix an issue that could cause crashing when accessing gpu fan speed
  • fixed an issue where no config present wouldn't use default mangohud presets
  • Fixed a crashing issue with CS2
  • Reworked intel code. Should resolve some issues where mangohud didn't shutting down properly when using intel gpu
  • time now has a title
  • added cpu temp for zenpower3 module
  • fixed text_outline_color incorrectly using BGR instead of RGB
  • fps_metrics is a new parameter that takes a decimal value or "avg". e.g avg,0.001
  • Added support for gpu load on Adreno GPUs
  • winesync shows the current implementation of synchronization primitives. E.g ESYNC/FSYNC etc
  • Fix opengl runtime on musl libc systems #1133
MangoHud - MangoHud Version 0.7.1-rc1

Published by flightlessmango 10 months ago

  • gamepad_battery has been reworked to device_battery. This parameter current supports the values gamepad and mouse
  • xnvctrl: fix an issue that could cause crashing when accessing gpu fan speed
  • fixed an issue where no config present wouldn't use default mangohud presets
  • Fixed a crashing issue with CS2
  • Reworked intel code. Should resolve some issues where mangohud didn't shutting down properly when using intel gpu
  • time now has a title
  • added cpu temp for zenpower3 module
  • fixed text_outline_color incorrectly using BGR instead of RGB
  • fps_metrics is a new parameter that takes a decimal value or "avg". e.g avg,0.001
MangoHud - MangoHud Version 0.7.0

Published by flightlessmango about 1 year ago

Parameters

  • gpu_fan displays the gpu fan RPM, only works on AMD.
  • gpu_junction_temp displays the junction temperature on AMD GPUs
  • removed io_stats, just use io_read and io_write instead
  • engine_short_names shortens the names of engines, e.g VULKAN becomes VK
  • text_outline adds a colored outline around all text
  • text_outline_color sets the color of the outline, default: 000000
  • text_outline_thickness sets the thickness of the outline, default: 1.5
  • temp_fahrenheit changes all temps to fahrenheit from celsius
  • dynamic_frame_timing dynamically changes the range of the frametime graph
  • duration displays the time since mangohud initialized
  • gpu_voltage shows the current gpu voltage, only works on AMD
  • fps_text override fps text
  • horizontal_stretch sets the background to stretch across width of application (enabled by default)
  • core_bars turns core_load into a histogram
  • device_battery Shows battery level of wireless devices, accepts gamepad mouse
  • device_battery_icon shows battery icon instead of percent

preset

This parameter allows you to choose from a number of config presets.
By default there are 5.

  • 0: no display
  • 1: only fps
  • 2: horizontal
  • 3: more detailed default layout
  • 4: full
    These presets correspond with the steam deck performance overlay levels.
    You can create your own preset levels or overwrite the current ones by creating a config file in ~/.config/MangoHud/preset.conf
    To create or overwrite preset 3 you could add the follow to preset.conf
[preset 3]
vram
ram
battery

If you enter preset as a list e.g: preset=1,2,3 you can use the default keybind Shift_R + F10 to toggle throught presets (this only works on X11)
toggle_preset param allows you to change the default keybind

Changes

  • Removed MANGOHUD_DLSYM because it's redundant
  • Fixed core mhz when Cool'n'Quiet and similar is disabled in bios
  • Added /etc/MangoHud.conf as a possible config location
  • Add CPU architecture to vulkan manifest name
  • mangoplot is a python script that graphs one or more mangohud csv logs
  • mangoapp: resolved issue where different sized displays caused rendering issues
  • mangohud script: guard so we don't add mangohud lib to LD_PRELOAD multiple times
  • split mangohud into two shared libraries, one for vulkan and one for opengl. This should resolve issues where mangohud would init vulkan and opengl at the same time
  • statically link stdc++. This fixed a lot of crashing issues when MANGOHUD=1 was set before starting steam.
  • added support for zenergy kernel driver
  • fixed alpha param that stopped working at some point
  • added --version to mangohud script
  • When using horizontal layout set table_columns param to current count of table_columns instead of manually
  • Intel GPU: use fdinfo for GPU load
  • logging: calculate fps data using frametime
  • AMDGPU: get core clock from hwmon instead of gpu_metrics
  • gamepad_battery is now deprecated use device_battery= mouse or gamepad
  • Fixed a memory leak when resizing vulkan windows.
  • logging: added process RSS and swap usage

Blacklist

  • blacklist: if blacklisted application is hardcoded, don't proceed to load config blacklists
  • blacklist: only print blacklist info message once
  • blacklist: added more hardcoded entries:
    • tabtip.exe
    • steam.exe
    • wine64-preloader
    • explorer.exe
    • wine-preloader
    • iexplore.exe
    • rundll32.exe
MangoHud - 0.7.0-rc1

Published by flightlessmango about 1 year ago

Parameters

  • gpu_fan displays the gpu fan RPM, only works on AMD.
  • gpu_junction_temp displays the junction temperature on AMD GPUs
  • removed io_stats, just use io_read and io_write instead
  • engine_short_names shortens the names of engines, e.g VULKAN becomes VK
  • text_outline adds a colored outline around all text
  • text_outline_color sets the color of the outline, default: 000000
  • text_outline_thickness sets the thickness of the outline, default: 1.5
  • temp_fahrenheit changes all temps to fahrenheit from celsius
  • dynamic_frame_timing dynamically changes the range of the frametime graph
  • duration displays the time since mangohud initialized
  • gpu_voltage shows the current gpu voltage, only works on AMD
  • fps_text override fps text
  • horizontal_stretch sets the background to stretch across width of application (enabled by default)
  • core_bars turns core_load into a histogram

preset

This parameter allows you to choose from a number of config presets.
By default there are 5.

  • 0: no display
  • 1: only fps
  • 2: horizontal
  • 3: more detailed default layout
  • 4: full
    These presets correspond with the steam deck performance overlay levels.
    You can create your own preset levels or overwrite the current ones by creating a config file in ~/.config/MangoHud/preset.conf
    To create or overwrite preset 3 you could add the follow to preset.conf
[preset 3]
vram
ram
battery

If you enter preset as a list e.g: preset=1,2,3 you can use the default keybind Shift_R + F10 to toggle throught presets (this only works on X11)
toggle_preset param allows you to change the default keybind

Changes

  • Removed MANGOHUD_DLSYM because it's redundant
  • Fixed core mhz when Cool'n'Quiet and similar is disabled in bios
  • Added /etc/MangoHud.conf as a possible config location
  • Add CPU architecture to vulkan manifest name
  • mangoplot is a python script that graphs one or more mangohud csv logs
  • mangoapp: resolved issue where different sized displays caused rendering issues
  • mangohud script: guard so we don't add mangohud lib to LD_PRELOAD multiple times
  • split mangohud into two shared libraries, one for vulkan and one for opengl. This should resolve issues where mangohud would init vulkan and opengl at the same time
  • statically link stdc++. This fixed a lot of crashing issues when MANGOHUD=1 was set before starting steam.
  • added support for zenergy kernel driver
  • fixed alpha param that stopped working at some point
  • added --version to mangohud script
  • When using horizontal layout set table_columns param to current count of table_columns instead of manually
  • Intel GPU: use fdinfo for GPU load
  • logging: calculate fps data using frametime
  • AMDGPU: get core clock from hwmon instead of gpu_metrics

Blacklist

  • blacklist: if blacklisted application is hardcoded, don't proceed to load config blacklists
  • blacklist: only print blacklist info message once
  • blacklist: added more hardcoded entries:
    • tabtip.exe
    • steam.exe
    • wine64-preloader
    • explorer.exe
    • wine-preloader
    • iexplore.exe
    • rundll32.exe
MangoHud - MangoHud Version 0.6.9-1

Published by flightlessmango over 1 year ago

Hotfixes

Fixed issue that applied picmip without option being set
Reverted x11 poller that was causing segfaults 06edee4
Fixed issues with horizontal and legacy_layout
Fixed amdgpu APU power and temperature reading
Fixed certain hud elements displaying incorrectly in horizontal
Fixed an issue causing segfault when using MANGOHUD_CONFIG

Contributors

@flightlessmango @jackun @gort818 @NoXPhasma @Atemu @kira-bruneau @Faalagorn

MangoHud - v0.6.9

Published by gort818 over 1 year ago

MANGOHUD

Changes

  • Added support for it8603 sensor
  • Conform to VUID-VkDeviceCreateInfo-pNext-00373
  • Add GalaxyClient, RedLauncher, Amazon Games and gamesope to blacklist
  • Add Artix and Nobara to build.sh

Bug fixes

  • Fixed a crash when using zink, and certain games using DXVK e.g. FarCry 3/4
  • Fixed reporting amdgpu clock speed
  • Fixed an issue with exec causing certain games to crash
  • Fixed incorrect metrics for ryzen 7000 series iGPUs
  • Fixed discovery of wine binary when using wine64 build

Parameters

  • exec_name - Display current exec name.
  • hud_compact - Display compact version of MangoHud.
  • hud_no_margin - Remove margins around MangoHud.
  • horizontal - Display Mangohud in a horizontal position.
  • toggle_hud_position Toggle MangoHud postion. Default is R_Shift + F11
  • fps_limit_method If FPS limiter should wait before or after presenting a frame. Choose late (default) for the lowest latency or early for the smoothest frametimes.
  • picmip Mip-map LoD bias. Negative values will increase texture sharpness (and aliasing). Positive values will increase texture blurriness (-16 to 16)
  • af Anisotropic filtering level. Improves sharpness of textures viewed at an angle (0 to 16)
  • bicubic Force bicubic filtering
  • trilinear Force trilinear filtering
  • retro Disables linear texture filtering. Makes textures look blocky
  • position new option: bottom_center

Contributors

@flightlessmango @jackun @gort818 @evelikov @Billli11 @sfrcorne @hannesmann @NoXPhasma @RPINerd @stephanlachnit @tim77 @Bitwolfies @Calchan @TheComputerGuy96 @FluffyFoxUwU @Gustash @0xC0ncord @KingKrouch @kkartaltepe @Leopard1907 @MasterDevX @oliverchang @virchau13 @baryluk @azn1999 @apprehensions

MangoHud - MangoHud Version 0.6.8

Published by gort818 about 2 years ago

MangoHud

  • Bumped layer api version to 1.3.0
    This fixes MangoHud not loading with latest DXVK
  • Bumped meson to 0.60
  • Only install data files if include_doc option is set
  • Allow use of system nlohmann_json dependency
  • Added metainfo file
  • Fixed table_columns not working as expected
  • Minor adjustments to hud elements and imgui
  • Convert from printf's to SPDLOG
  • Added MANGOHUD_LOG_LEVEL env variable
    it takes off, info, err, warn
  • Added StarCitizen_Launcher.exe and InsurgencyEAC.exe to blacklist
  • Added FCAT support
  • Disabled gamepad_battery_icon by default
  • Generalize control over socket so it works with OpenGL as well
  • AMDGPU: fixed gfx and cpu power metrics being parsed incorrectly
  • fps_only disables legacy_layout by default

MangoApp

  • Added man page
  • Install MangoApp layer to libdir_mangohud
  • Prevent resizing of the MangoApp window when using fps_only.
    This prevents the hud from flickering when number of digits increase or decrease
  • Fixed issues caused by us not releasing the XAtom.
    Namely preventing other apps from using the gamescope overlay and sometimes causing a black box to be drawn
  • Disabled vulkan layer
    It was not working properly so we disabled it until fixed as to not cause confusion.

Contributors

@flightlessmango @jackun @gort818 @stephanlachnit @trigg @PMunkes

MangoHud - MangoHud Version 0.6.7-1

Published by flightlessmango over 2 years ago

Hotfixes

  • amdgpu: Prefer sysfs temp over gpu_metrics
  • amdgpu: Fix incorrect gpu load for some GPUs
  • amdgpu: If gpu_metrics is from v1_0, ignore it and use sysfs instead
  • Fixed on screen benchmark not matching summary file
  • Fixed zink detection
  • disabled throttling_status by default for nvidia as it causes lag on 3000 series
MangoHud - MangoHud Version 0.6.7

Published by flightlessmango over 2 years ago

Changes

Show highest cpu freq instead of the cumulative average
Using sysfs scaling_cur_freq instead of /proc/cpuinfo for cpu core frequencies
Added EADesktop.exe and EALauncher.exe to blacklist
Logger writes a summary by default
Using gpu_metrics sysfs binary for amdgpu metrics
Showing min and max frametime for the period
Battery param shows a plug icon when plugged in
Improved amdgpu metrics accuracy by polling 100times per period

Bug fixes

Fixed splitgate crashing on amd gpu's
Fixed not reporting amd cpu power when using the zenpower module
Fixed regression in hardware info updater
Fixed bug where setting cpu cores to offline would crash mangohud/mangoapp

Parameters

  • fps_only - Allows you to only display FPS (requires legacy_layout=0)
  • gamepad_battery - Shows battery and connection status for supported gamepads
  • gamepad_battery_icon - Replaces the percent amount with a battery icon
  • frame_count - Shows the number of frames since start
  • throttling_status - Shows if GPU is throttling based on Power, current, temp or "other" (Only shows if throttling is currently happening)
MangoHud - MangoHud Version 0.6.6-1

Published by flightlessmango almost 3 years ago

fix mangoapp building without xnvctrl

MangoHud - MangoHud Version 0.6.6

Published by flightlessmango about 3 years ago

Changes and Improvements

  • Fixed logging crashing in some games (cyberpunk etc)
  • Limit keybind check to about 10hz (improves perf in high fps scenarios, like vkcube)
  • Added spdlog
  • Changed media_player_order to media_player_format={title};{artist};{album}. Semi-colon adds a new line.

Mangoapp

This an application that is designed to be run together with gamescope and rendered on top of gamescope

MangoHud - MangoHud Version 0.6.5

Published by flightlessmango over 3 years ago

Changes and Improvements

  • Fixed more issues where incorrect engine name would be shown
  • ToGL detection
  • middle-left and middle-right are now options in the position param
  • Fixed issue where vulkan driver version would be incorrect
MangoHud - MangoHud Version 0.6.4

Published by flightlessmango over 3 years ago

Hotfixes

  • Fixed issue where some games would crash on startup
  • Fixed issue where Battery param would cause a stutter
  • Fixed issue where engine would incorrectly show "vulkan"
MangoHud - MangoHud Version 0.6.3

Published by jackun over 3 years ago

  • Fix failing build because of missing filesystem header
MangoHud - MangoHud Version 0.6.2

Published by gort818 over 3 years ago

New params

param use
core_load_change Changes the colors of cpu core loads, uses the same data from cpu_load_value and cpu_load_change
resolution Display the current resolution
show_fps_limit Display the current fps limit
custom_text_center Display a custom centered text, only works with legacy_layout=false
custom_text Display a custom text, only works with legacy_layout=false
exec Display output of bash command in next column, e.g custom_text=/homeexec=df -h /home | tail -n 1. only works with legacy_layout=false
gamemode Displays whether gamemode is enabled or not
vkbasalt Displays whether vkbasalt is enabled or not
swap Displays swap space usage next to system RAM usage
battery Display current battery percent and energy consumption
battery_icon Display battery icon instead of percent
battery_color Change the BATT text color
round_corners Change the amount of roundness of the corners have e.g round_corners=10.0

Changes and Improvements

  • Fixed issue where MangoHud would report incorrect GPU temp for AMD GPUs
  • Fixed crash with zink
  • Damavand detection
  • WineD3D detection
  • Zink detection
  • Prefer CLOCK_MONOTONIC_RAW over CLOCK_MONOTONIC
MangoHud - MangoHud Version 0.6.1

Published by jackun almost 4 years ago

  • Fix cpu power related crash