Commit Graph

540 Commits

Author SHA1 Message Date
Ilya Zlobintsev
96bebf4ee4 fix: getting pci info in snapshot 2024-10-16 19:53:13 +03:00
Ilya Zlobintsev
96a46bb4a4 feat: include device info and stats responses in debug snapshot 2024-10-16 09:08:23 +03:00
Ilya Zlobintsev
f15990123a pkg: add libdrm to debian dependencies 2024-10-11 08:59:54 +03:00
Ilya Zlobintsev
b3443f0070
doc: move description to label in issue template 2024-10-08 19:28:07 +03:00
Ilya Zlobintsev
ab33cfda7b
doc: fix issue template yaml 2024-10-08 19:27:14 +03:00
Ilya Zlobintsev
f055a21538
doc: update issue template to mention common RDNA3 problems 2024-10-08 19:26:27 +03:00
Ilya Zlobintsev
cfe56fe5bd chore: update docs, enforce minimum rust version 2024-10-02 22:09:30 +03:00
Ilya Zlobintsev
c77fc555ac feat: show dialog when attempting to reconnect to daemon 2024-09-28 10:40:15 +03:00
Ilya Zlobintsev
b1229a3e1e chore: bump version 2024-09-28 10:03:14 +03:00
Ilya Zlobintsev
538cea3aa5
feat: add support for multiple settings profiles (#327)
* feat: initial support for multiple settings profiles

* feat: initial profiles management support

* feat: basic profile management ui
2024-09-28 09:51:35 +03:00
Ilya Zlobintsev
fa0eb3083c chore: skip serializing empty values in the config 2024-09-22 17:49:25 +03:00
Ilya Zlobintsev
4a092b7109
feat: add headless packages for RHEL (via Rocky Linux) (#380)
* feat: add headless packages for RHEL (via Rocky Linux)

* fix: rhel curl package
2024-09-22 16:14:50 +03:00
Ilya Zlobintsev
c08bdfef0b
feat: remote management over TCP (#379)
* feat: abstract daemon client

* feat: daemon TCP listener implementation

* feat: support remote connections in the UI

* feat: make the client async

* feat: add documentation about remote management
2024-09-22 14:17:33 +03:00
Ilya Zlobintsev
573a599589 feat: prevent repeated enabling/disabling of overclocking before reboot 2024-09-20 16:01:00 +03:00
Ilya Zlobintsev
e411d155da
feat: use relm4 for the UI (only main parts) (#375)
* feat: use relm4 for vulkan window

* feat: WIP relm4 for app

* feat: applying settings

* wip

* feat: implement all the main actions

* feat: avoid full reloads when they are not needed

* fix: don't save vbios dump when the dialog was cancelled

* feat: OC control

* feat: use relm for the software page
2024-09-20 15:46:33 +03:00
Ilya Zlobintsev
30df3ee11b
doc: update nixos package info 2024-09-14 15:03:45 +03:00
Ilya Zlobintsev
b4ed0aa3fc fix: remove drm feature from makefile 2024-09-13 09:52:39 +03:00
Ilya Zlobintsev
8e9c13cbf6 chore: drop support for building without libdrm
libdrm was initially added as a way to get more information, but is now
used for some crucial functionality like GPU generation and VRAM type
detection. it should always be used to avoid these things not working
2024-09-10 23:16:27 +03:00
Ilya Zlobintsev
74dda30925 feat: add option to reset all configuration 2024-09-07 22:28:15 +03:00
Ilya Zlobintsev
4007e0a360 feat: improve config change watcher logic to avoid unnecessary reloads 2024-09-07 21:56:41 +03:00
Ilya Zlobintsev
9dbce2a812
feat: show effective VRAM clockspeed in the GUI on GDDR6 (#368)
* feat: refactor clocks frame adjustments into a separate widget

* feat: show effective VRAM clockspeed in the GUI on GDDR6
2024-09-07 15:01:51 +03:00
Ilya Zlobintsev
99f6e9ee35 chore: bump version 2024-09-06 09:14:30 +03:00
Ilya Zlobintsev
92fad92e37 feat: bump amdgpu-sysfs with fix for https://github.com/ilya-zlobintsev/LACT/issues/367 2024-09-06 09:07:45 +03:00
Ilya Zlobintsev
54ef929b1a
feat: use ScrolledWindow for initramfs output when enabling/disabling oc (#364) 2024-08-30 13:08:41 +03:00
Ilya Zlobintsev
44704a101e
feat: support for power profile heuristics configuration (#361)
* feat: basic support for power profile heuristics configuration

* attempt to support RDNA heuristics

* chore: finalization
2024-08-20 22:35:16 +03:00
Ilya Zlobintsev
32e25dc269
feat: show detailed power profile information (#360) 2024-08-18 21:42:44 +03:00
Ilya Zlobintsev
cd9a3b2f31 chore: update dependencies, adopt new gtk-rs clone macro syntax 2024-08-16 09:34:52 +03:00
Ilya Zlobintsev
f9f4225a88 chore: fix deprecation warnings 2024-08-16 09:21:57 +03:00
Ilya Zlobintsev
fe0f8b5e52 fix: avoid crashing on non-numeric input in fan curve editor 2024-08-16 09:18:15 +03:00
Ilya Zlobintsev
48c4a8a102 feat: restart daemon if it crashes (just in case)
There hasn't been any real scenario of this happening, but it was
requested in https://github.com/ilya-zlobintsev/LACT/issues/359
2024-08-15 10:31:16 +03:00
Ilya Zlobintsev
88e9026c78
fix: avoid malloc_trim non non-gnu systems (#353) 2024-08-06 09:32:55 +03:00
Ilya Zlobintsev
4db593c73f
fix: defer committing clocks/fan settings changes until all the values have been written (#340)
* feat: defer committing settings until all the values have been written

* fix: reset fan curve after setting pmfw values

* chore: switch to amdgpu-sysfs tag
2024-06-16 00:06:51 +03:00
Ilya Zlobintsev
6af78fe97e
doc: add development build info to readme 2024-06-13 19:30:45 +03:00
Ilya Zlobintsev
ca3e54015a fix: only set PMFW options when they're different from the current value 2024-06-13 19:25:38 +03:00
Ilya Zlobintsev
0d675c5b3a chore: drop unused dependency 2024-06-08 11:12:19 +03:00
Ilya Zlobintsev
fa521fd8c7 feat: rearrange graphs in a grid 2024-06-08 11:08:14 +03:00
Ilya Zlobintsev
0062c9ab0e fix: set fan speed graph y axis label to rpm 2024-06-08 10:32:50 +03:00
Ilya Zlobintsev
cc06f61e52 chore: bump dependencies 2024-06-06 23:14:53 +03:00
Ilya Zlobintsev
bd15226229 fix: label text clipping 2024-06-06 23:11:41 +03:00
Ilya Zlobintsev
3f99eab263
feat: add fan speed plot (#338) 2024-06-06 23:06:00 +03:00
Ilya Zlobintsev
fd85122d4a
pkg: add ubuntu 24.04 package (#332) 2024-05-20 09:27:42 +03:00
Ilya Zlobintsev
ea63322083 feat: check /sys/bus/pci/devices for devices that don't have a drm entry initialized
this is yet another attempt to try to determine if LACT started before
drm sysfs is initialized.
2024-05-13 18:59:42 +03:00
Ilya Zlobintsev
aa670be9d6 fix: gracefully handle transient fan control errors 2024-05-11 12:59:27 +03:00
Mag Mell
974e6ff442
fix: fix press 'Enable Overclocking' will panic (#320) 2024-05-09 08:51:25 +03:00
Ilya Zlobintsev
0dce4b395e fix: apply power profile mode after the performance level 2024-04-24 18:25:13 +03:00
Ilya Zlobintsev
c9d708059a fix: find matching debugfs device by searching through all names
instead of relying on pci slot id symlinks, search through all devices
for a matching name, as the symlinks are not available on older
kernels.
2024-04-23 20:48:00 +03:00
Ilya Zlobintsev
6dc35200d7
feat: add support for dumping VBIOS to a file (#305)
* feat: vbios dump daemon implementation

* feat: vbios dump ui
2024-04-22 20:23:35 +03:00
Ilya Zlobintsev
06e061b88e perf: optimize plot drawing 2024-04-22 20:21:07 +03:00
Ilya Zlobintsev
50fea14480
feat: implement historical charts window (#301)
* feat: Implement graph widget in OC tab

* fix: Moved legend to lower left corner

* fix: Fix graph jumping around before getting data for 60 secs

* fix: Fix vertical part of graph jumping around

* chore: Refactoring GraphData to be it's separate struct

* chore: Rename Graph to Plot

* feat: Implement throttling histogram in Plot

* fix: Fix throttling data not being filtered out

* fix: Draw lines in front of throttling histogram and use deep orange non-transparent color

* feat: Cubic spline interpolation for plot

* chrone: Lightly refactor cubic sampling

* feat: Supersample the plot area and reconfigure sizes accordingly

* feat: WIP graphs window

* feat: improvements

* feat: add clockspeed plot

* feat: avoid using JSON to send graph info

* perf: trim clockspeed graph data

* chore: remove unused feature

* perf: use NaiveDateTime for the plot

* feat: add power usage plot

* fix: reset power plot

* dev: add benchmark for drawing plots

* perf: use raw timestamps instead of NaiveDateTime in plot

* fix: avoid running gtk tests in ci

* chore: switch away from git source for plotters-cairo

---------

Co-authored-by: Alik Aslanyan <inline0@pm.me>
2024-04-22 19:21:00 +03:00
Ilya Zlobintsev
d5af85020d
pkg: update the fedora package to build for fedora 40 (#303)
* pkg: update the fedora package to build for fedora 40

* pkg: update workflow

* fix: add new image to config
2024-04-21 18:36:05 +03:00