MangoHud is a heads up display for Vulkan and OpenGL games and applications. The project started as a modified version of the built-in Mesa heads up display for Vulkan. OpenGL support was added in version 0.3.0 in March 2020. MangoHud is prettier and more configurable than the built-in Mesa HUD and it has handy keyboard shortcuts for turning the HUD (F12) and logging (F2) on/off. It is specially useful for games who play Windows games using Wine and DXVK.
Features And Usability
vkmark running with the MangoHud (
MANGOHUD=1 vkmark -s 1200x600)
MangoHud can be enabled in Vulkan gaames and programs by launching applications with the environmental variable
MANGOHUD=1 vkmark -s 1200x600
It is possible to set
MANGOHUD=1 in your shells profile but it is not a good idea.
Mangohud can, as of version 0.3.0, be enabled on OpenGL (and Vulkan) games by pre-fixing the game with
mangohud. That binary will provide any OpenGL or Vulkan executable given as an argument with a heads-up display:
|Note: MANGOHUD=1 will not add a HUD to OpenGL applications. You have to use |
How MangoHud looks can be configured with a environmental variable called
MANGOHUD_CONFIG OR by editing the configuration file it installs in
$HOME/.config/MangoHud/MangoHud.conf. This differs from the build-in Mesa Vulkan HUD which can only be configured using a environmental variable called
The MangoHud is arguably better-looking than the build-in Mesa Vulkan HUD and it is also prettier than the Gallium Hud for OpenGL.
A side-by-side comparison gives the distinct impression that MangoHud is made by and for games who stream their video games while the Mesa Vulkan HUD is written by and for developers.
MangoHud is very configurable. It can be configured using the configuration file in
$HOME/.config/MangoHud/MangoHud.conf. A default configuration file with helpful comments can be found in
/usr/share/doc/mangohud. You may want to copy the file into your home directory and make the changes you want.
MangoHud can show a very wide range of information about your system and your graphics card. It can show CPU load, GPU load, system memory usage, GPU memory usage, GPU clocks and a whole lot more.
Verdict And Conclusion
MangoHud is a very nice heads up display for Vulkan and OpenGL games and applications. It is specially useful for those who play Windows games in Wine with DXVK translating the Direct3D calls to Vulkan. It is prettier than both the build-in Mesa Vulkan HUD and the built-in DXVK HUD.
The built-in F12 keyboard shortcut for toggling the MangoHUDs visibility is a nice touch which the other methods of displaying a HUD on Vulkan games and applications lack.
The ability to make logs which can be uploaded to flightlessmango.com and turned into nice detailed graphs is also a very nice touch.
The only downside MangoHud has is that you do have to install it. You already have the built-in Mesa Vulkan HUD if you can run Vulkan games and you have DXVKs HUD if you use DXVK. MangoHud isn't just there, you do have to install it. Doing so is worth it if you want a prettier heads up displays than those the alternatives provide.
Installation from source is rather easy. Just clone the repository,
git clone --recurse-submodules https://github.com/flightlessmango/MangoHud.git
then change into the directory it makes
and build it with
./build.sh build ./build.sh package
The build script will prompt you if there are any missing dependencies and ask if you want it to automatically install them using
You can install it system-wide by running:
The current git version will ask you for your password and use sudo to install it system-wide.
build.sh will build both i686 and x86-64 libraries. This means that it works fine with both native Vulkan applications and Windows games launched in Wine with DXVK.
Quirks & Workarounds
The MangoHud hud does not show up in certain OpenGL games (namely SuperTuxKart git) unless you run it with
MANGOHUD_DLSYM=1 as in:
MANGOHUD_DLSYM=1 mangohud supertuxkart
Why MangoHud fails to show up in certain versions of certain games is unclear.
The source for MangoHud is available at github.com/flightlessmango/MangoHud.
The website flightlessmango.com has very nice charts which are generated using user-uploaded logs made by MangoHud.