Commit Graph

626 Commits

Author SHA1 Message Date
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
Ilya Zlobintsev
1576cca132 fix: add update fix to headless and libadwaita arch package builds 2024-04-06 13:00:21 +03:00
Ilya Zlobintsev
f4cf31d57e fix: add system update to arch linux package build script 2024-04-06 12:29:04 +03:00
Ilya Zlobintsev
76e5c2bcc4
fix: avoid freezing the UI when enabling/disabling overdrive (#300) 2024-04-06 12:12:57 +03:00
Ilya Zlobintsev
d9553a91a1
fix: set performance level after the clocks table, reset it to auto before applying a custom value (#298)
* fix: set performance level after setting custom clocks

* test
2024-03-30 22:25:39 +02:00
Username404-59
219d832b91
pkg: lact-daemon-openrc: Support setups without merged usr (#297) 2024-03-30 12:05:49 +02:00
Ilya Zlobintsev
114b165653 fix: skip config file events that happen right after writing the config to avoid unnecessary reloads 2024-03-23 11:53:58 +02:00
Ilya Zlobintsev
a0bc9fd502 feat: set higher process priority (nice value) in the default systemd unit 2024-03-21 19:46:40 +02:00
Ilya Zlobintsev
0ad46e2d08
feat: fan control hysteresis (#292)
* feat: implement a fan spindown delay setting

* chore: change request/response logging to the trace level

* feat: add fan speed change threshold setting

* feat: implement GUI for hysteresis settings

* fix: always set hysteresis settings
2024-03-20 23:45:24 +02:00
Ilya Zlobintsev
16c50970f6 feat: automatically reload configuration when the config file is changed 2024-03-17 13:47:45 +02:00
Ilya Zlobintsev
e74155515d
feat: use drm for getting the gpu device name when possible (#288) 2024-03-16 10:42:49 +02:00
Ilya Zlobintsev
a8711802f0
feat: clearer gpu/card model separation (#287) 2024-03-11 22:45:01 +02:00
Alik Aslanyan
72d6556906
fix: Consistently format GPU statistics in OC page (#282) 2024-03-04 08:41:26 +02:00
Alik Aslanyan
00f32477e7
fix: statistics jumping around in the OC page (#280) 2024-03-04 08:39:24 +02:00
Ilya Zlobintsev
36b48e41b4 chore: supress clippy warning 2024-03-03 23:27:32 +02:00