jackun
822bb66629
Fix confusing vendorID with deviceID
...
OpenGL still needs some work to select the actual render device >:(
3 years ago
jackun
8e21b52acf
Make `get_device_name` return GPU name
3 years ago
Emil Velikov
597f78cbee
Fixup device/vendor node handling
...
Currently we readout the data as string only to convert it to hex. In
the error case, we leak the fd for the given nodes.
Read the data as hex directly, error out if that fails and avoid the
leaks.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
3 years ago
FlightlessMango
ae7c5f0f24
Fix hud benchmark
3 years ago
jackun
a029dfaaf2
Don't hide gpu_metrics behind HAVE_LIBDRM_AMDGPU
3 years ago
FlightlessMango
93f389dd62
clean up frametime_data
3 years ago
FlightlessMango
3a667ab66b
Revert FPS calc
3 years ago
jackun
e555a942fb
Use single IO stats instance
3 years ago
FlightlessMango
fa133940c8
Fix min/max frametime
3 years ago
FlightlessMango
316914da8d
mangoapp: fixed mangoapp not respecting no_display
3 years ago
FlightlessMango
c708b1a8a8
disable deviceid check for now
3 years ago
FlightlessMango
6983c2ec39
Use gpu_metrics instead of libdrm when available
3 years ago
FlightlessMango
fb1cae9cc9
display min/max frametime for period
3 years ago
FlightlessMango
46730b572a
permit starting a new log even if previous is rendering
3 years ago
flightlessmango
0f49c5796a
Merge pull request #671 from Joshua-Ashton/empty_crash
...
Fix crash when no frames were recorded
3 years ago
Joshua Ashton
437563fa77
Fix crash when no frames were recorded
...
This can happen with MangoApp + the Steam Deck UI as it doesn't commit when there is nothing going on
3 years ago
FlightlessMango
3d3916247a
mangoapp: force benchmark underneath
3 years ago
flightlessmango
1f94e0af4d
Merge pull request #657 from ishitatsuyuki/quad
...
overlay: avoid quadratic behavior
3 years ago
FlightlessMango
37e18279e7
mangoapp: use amdgpu metrics
3 years ago
FlightlessMango
3366120364
Move calc benchmark into logger
3 years ago
FlightlessMango
a1b7b55a54
Use hudelements params in logging
3 years ago
jackun
4a33838bcd
Add extra parentheses to make compiler happy
3 years ago
FlightlessMango
9758d2a286
Try to get correct amd gpu when multiple
3 years ago
FlightlessMango
cfd802c063
Incorrect param used in calc benchmark
3 years ago
FlightlessMango
7212c79feb
Logging: push param to benchmark calc
3 years ago
Tatsuyuki Ishi
ada173e67f
overlay: avoid quadratic behavior
...
Using a vector with erase(begin()) results in a copy of the full array
every time. This is inefficient and in the case of HUD graphs, was having
quadratic complexity which can noticeably affect performance.
This patch replaces most of the operations with an O(1) alternative,
keeping the total cost under a linear bound. While on this, also refactor
the size of graph array into a constant.
3 years ago
FlightlessMango
ee7f3fbfd2
Mangoapp: frametime message queue
3 years ago
FlightlessMango
9434033083
Don't use read_line as it causes issue with splitgate
3 years ago
FlightlessMango
23ed317536
mangoapp: shm struct + gamescope engine
3 years ago
Stephan Lachnit
4983056600
fix regression in hw_info_updater
...
Calling std::unique_lock in update() will cause a delay if
update_hw_info() takes longer than the period when update() is called.
To fix this, a try_to_lock tag is added. update() will only update if
the lock is aquired, else the update call is skipped.
Signed-off-by: Stephan Lachnit <stephanlachnit@debian.org>
3 years ago
FlightlessMango
5fee3bc5e3
Change _params to pointer
3 years ago
FlightlessMango
b001eb4714
Move _params init to overlay.cpp
3 years ago
FlightlessMango
4e3a40c6ef
mangoapp + gamescope shm
3 years ago
jackun
abf146f73c
Set correct swapchain_stats etc references for hw updater
3 years ago
jackun
9b6a39dfe9
sed s/gnu_linux/linux/g
3 years ago
jackun
90e48f95ca
Use unversioned `fmt::format_error`
3 years ago
jackun
6584f23a6c
Use `ghc::filesystem` to iterate over /proc/self/map_files
3 years ago
jackun
c452609718
Fix hw update thread waiting for initial update signal
3 years ago
FlightlessMango
947f287a5e
Only create hw_info_thread once
3 years ago
jackun
729ccc83bd
Use spdlog's 'fmt' to format media player metadata
...
Usage:
media_player_format={title};{artist};{album}
Semi-colon breaks to new line, might change.
3 years ago
FlightlessMango
3ac7772a55
Add universal param
3 years ago
jackun
d1617818cd
Fix OpenGL gpu_name
3 years ago
jackun
866fd8bc24
Add per process memory usage (`procmem` etc)
3 years ago
jackun
a82e27d978
Use spdlog macros so logging can be completely disabled during compile-time
3 years ago
jackun
2f807a4c0d
Add `spdlog` wrap and logging
3 years ago
jackun
c093f9823e
Use libdrm_amdgpu for amdgpu sensor info, if available
...
Using plain `open` as `drmOpen` needs bus id check which needs interface 1.4 ioctl which gives EPERM cause only DRM_MASTER can call it :(
https://github.com/clbr/radeontop/issues/48#issuecomment-493792404
3 years ago
jackun
88d801bd7e
Move functions not directly related to vulkan from vulkan.cpp to overlay.cpp
3 years ago
Joshua Martin
3b0b6fbc42
Add position options to place the overlay halfway down the screen ( #561 )
3 years ago
Lukáš Horáček
213953089d
Detect ToGL
3 years ago
jackun
750d2cddb5
Make engine type per instance
3 years ago
FlightlessMango
3f120b1fc5
don't set engine to vulkan if already set
3 years ago
Alessandro Toia
570bef468b
Cosmetic changes to engine detection
3 years ago
FlightlessMango
5330573c8c
don't rely on std in engine detection
3 years ago
jackun
0ee101e0ac
Fix MPRIS ticker, microseconds to nanoseconds
3 years ago
flightlessmango
428ddf4e8a
Merge pull request #536 from flightlessmango/battery_test
...
Battery info and font awesome icons
3 years ago
FlightlessMango
92282bcec2
convert frametime from ns to us
3 years ago
Joshua Ashton
815097718e
Use nanoseconds to calculate fps
...
No need to round this earlier on.
Removes an unnecessary implicit float -> double conversion in the calculation also
3 years ago
Alessandro Toia
5c48b4729c
Change param to battery, add param for icon, hide power when plugged in
3 years ago
jackun
a0a57038c1
Fix redefinition of 'open'
...
musl pulls in fcntl.h from somewhere
3 years ago
Alessandro Toia
a533883a39
Check if there are battieres before attempting to retrieve stats
3 years ago
Alessandro Toia
552a85aaaa
Only update battery stats if a battery is present
3 years ago
FlightlessMango
a90c897feb
Check battery info
3 years ago
jackun
f77a73ce8a
Fix scoped_lock clash with >= c++17
4 years ago
FlightlessMango
6286313478
MSVC building fixes
4 years ago
FlightlessMango
1a8689fbba
Add gpu power to logs
4 years ago
flightlessmango
e57be394d7
Merge pull request #428 from flgx16/swap
...
Add swap
4 years ago
FlightlessMango
90ce1c5778
ImGui wrap
4 years ago
FlightlessMango
0162fb913c
Always try to update exec's
4 years ago
flightlessmango
214bb83d40
Moved update_exec() into a thread
4 years ago
FlightlessMango
c54f8bec5d
Hud elements exec function
4 years ago
Lukáš Horáček
f11a49ae8b
Add swap
4 years ago
Alessandro Toia
c479694735
Use SetCursorPosX() instead of SameLine() to center text
4 years ago
Alessandro Toia
b77517501c
Add new param custom_header
4 years ago
Alessandro Toia
8e873fe547
Remove more "not" and "and" in if statments
...
Rename dbus_helpers.hpp to dbus_helpers.h
4 years ago
FlightlessMango
c20b06c851
Remove more ram related things for windows
4 years ago
FlightlessMango
a4a5950ddf
Make sure graphs have data without enabling elems
4 years ago
FlightlessMango
3827fe96d4
Add autostart_log param
4 years ago
jackun
0474c93800
Change `change_on_load_temp`'s `current` param to unsigned
4 years ago
jackun
1e8487c991
Move color conversion to HudElements; move some overlay related functions back to overlay.cpp
4 years ago
flightlessmango
ce6a87823b
Merge pull request #388 from flgx16/cpu_power
...
Add cpu_power
4 years ago
Lukáš Horáček
02a34ba890
Fix cpu_mhz when core_load is disabled
4 years ago
Lukáš Horáček
3726c90c7a
Add cpu_power
4 years ago
FlightlessMango
cc38924997
Added graphs
4 years ago
FlightlessMango
cb8d992bfe
Use real_font_size for padding
4 years ago
ZakMcKrack3n
73e6e31301
toggle fps limiter via hotkey, fps_limit may be set to multiple values
...
(e.g. 0,30,60).
fps toggle toggles between entries where zero means unlimited
4 years ago
FlightlessMango
cbd87585b4
Win32 cpu usage
4 years ago
FlightlessMango
21e8d8c402
Move calc benchmark into overlay
4 years ago
FlightlessMango
c3fc0f10b0
Start separating vulkan, keybinds, overlay and font
4 years ago
FlightlessMango
1c5baef992
Move try_log into update_hud() and fix formatting
4 years ago
FlightlessMango
c337fddc58
Move try_log() into render_imgui
4 years ago
FlightlessMango
c4a7d3002b
Moved try_log() outside of no_display
4 years ago
FlightlessMango
9ddd075b18
Get actual frametime for logs
4 years ago
jackun
cec98369ae
Include array, explicitly
4 years ago
FlightlessMango
c1a255260f
Add recording circle to render_mango
4 years ago
FlightlessMango
0230efee8b
Small adjustments to render_mango
4 years ago
jackun
e56b7ded15
Use `setenv`instead as `putenv` makes Lutris' wine crash for some reason (threading?)
4 years ago
Alessandro Toia
632f1e7000
Add wine and wine colors to overlay
4 years ago
FlightlessMango
8a39043a13
Merge branch 'master' into develop
4 years ago
jackun
443271f0b5
Convert hud color params to linear for sRGB image formats
4 years ago
jackun
6f176a3f3b
Fix cpu usage formatting (float parsed as int)
4 years ago
jackun
c75232389b
A little more "atomic" cpu temp update for hud renderer; whitespace
4 years ago
FlightlessMango
ce80203ee6
Minimal hud for recording
4 years ago
FlightlessMango
a06e01c7ef
Merge branch 'develop'
4 years ago
FlightlessMango
4fd1c5f3e7
Fixed some basic errors
4 years ago
FlightlessMango
9445ab4acc
Warning that permit_upload = 0
4 years ago
FlightlessMango
6a443f35ac
Upload multiple logs
4 years ago
jackun
fc62624b7b
Recalculate right alignment offset if font scale changes
4 years ago
flightlessmango
c046c250d8
Merge branch 'develop' into benchmark-percentages
4 years ago
jackun
55430d7571
Initialized fps limiter or wait for 300 years
4 years ago
Lars Krämer
7cc76142f1
Tidy up DBus helper classes
...
make sure metadata is up-tp-date when switching players (WIP)
4 years ago
Lars Krämer
6484e09f01
Implement wrapper class for DBusMessageIter
...
Implement for_each-style helpers for common constructions
Reimplement most of the DBus message parsing in terms of these
4 years ago
Lars Krämer
5850643db4
Change the media player functionality to allow changing active media
...
player
4 years ago
larskraemer
a28931ef6b
General cleanup ( #272 )
...
* Cleanup unused struct fields, use uniform include guards
4 years ago
flightlessmango
eafa62356b
Merge branch 'develop' into benchmark-percentages
4 years ago
Lars Krämer
0b29a7ea06
Remove conflict in render_imgui
4 years ago
Lars Krämer
329725c134
Move Log uploading; Cleanup
4 years ago
Lars Krämer
4101237fdd
Move logging functionality into a class
4 years ago
jackun
c63037efb5
Use 1-channel font textures; glyph ranges support; vulkan image descriptors and "helper" functions
...
* To save some memory, use just 1-channel alpha-only textures
* Add some sort of wider glyph ranges support
* Chop single-ish vulkan font image uploading function into separate reusable helper functions
* Use descriptor set for ImTextureID but probably use texture array and push constants for "fast-path" if need arises
4 years ago
Lars Krämer
20221217d4
Frame-timing using chrono
4 years ago
Lars Krämer
22026cbc60
Create MesaClock class, use chrono classes for time points/durations
4 years ago
Kingsley McDonald
0e1fe708c8
make use of new float parsing function
...
i've also moved the input validation checks to the config parser, so that
warnings aren't displayed in the terminal output every time a benchmark is
run with an invalid percentile entry.
4 years ago
Kingsley McDonald
aa77a351de
implement configurable benchmark percentiles.
4 years ago
FlightlessMango
e957358786
Force a hw values update on log start
4 years ago
jackun
44060c2b80
Force blacklist re-check at certain points
...
Wine preloader that executed a non-blacklisted app may execute a blacklisted app,
or vice versa, and previous check applies to new app too.
4 years ago
FlightlessMango
a9463ae06c
Start logging after first update
4 years ago
Alan Witkowski
61a443bd50
add .csv extension to log file and rename function that generates the log filename suffix
4 years ago
larskraemer
ecd84c8cc0
Logging options ( #234 )
...
* Added config options for logging
* Documentation
* Log everything
* Add RAM/VRAM usage to the log
* add loggingOn-check for memory usage
* Always init GPU stats
* Move functions from logging.h to logging.cpp, remove params from writeFile
4 years ago
jackun
66ddada43c
Fix `readlink` overloading for fortified musl
...
Issue #231
4 years ago
FlightlessMango
e2ec80d84e
Upload log keybind setup
4 years ago
FlightlessMango
f14c9a7587
Moved exec function in to logging.h
4 years ago
FlightlessMango
8e34e752e5
Merge branch 'master' into develop
4 years ago
Kingsley McDonald
6178c5859c
adjust benchHeight for 0.1% and fix percentages.
4 years ago
Kingsley McDonald
053a1d8a44
add 0.1% lows to the brief benchmark overlay
4 years ago
jackun
5ec6519832
Add `media_player_order` to set media player metadata order
4 years ago
FlightlessMango
b9c00fc510
Check pci.ids without gpu_stats
4 years ago
FlightlessMango
38a78fa01e
Fix logging window if bg alpha is 0
4 years ago
Rémi Verschelde
f915d890f2
Fix -Wformat-security warning with GCC 10.1
4 years ago
FlightlessMango
0728d49a1d
Fix width with no params
4 years ago
FlightlessMango
df631a2343
Reduced width with io rw
4 years ago
FlightlessMango
e9b1b70ebc
Fixed nextRow for gpu_power
4 years ago
FlightlessMango
135f3a5009
Fixing compiler warnings and removing control
4 years ago
FlightlessMango
59268a34b3
Always do nextRow() with core_clock
4 years ago
FlightlessMango
bc5d41f921
Changed IO rd/wr to rw
4 years ago
FlightlessMango
4a5e05c979
Trim gpuName from pci.ids
4 years ago
FlightlessMango
572ba69e3e
More width fixing
4 years ago
jackun
b68f78028d
Fix "IO RD/RW" typo
...
Also micro-micro-micro optimization, probably: move READ/WRITE if statement before WRITE
as you'd probably find it more useful than just WRITE.
4 years ago
jackun
1495b1e88f
ifdef guard nvml header
4 years ago
jackun
953c8d0e0f
Add meson option `with_nvml`
4 years ago
jackun
2220cb9d74
Decouple `engine_version` from `fps`
4 years ago
jackun
16b05dfc5e
Show gpu core clock or power usage in 4th column or both on next row if both are enabled
4 years ago