يتيح لك هذا التطبيق التحكم في وحدة معالجة الرسومات AMD أو Nvidia على نظام Linux.
معلومات GPU | رفع تردد التشغيل | التحكم في المروحة |
---|---|---|
البيانات التاريخية | ||
الميزات الحالية:
تعمل كل من وظائف AMD وNvidia على X11 أو Wayland أو حتى جلسات مقطوعة الرأس.
Arch Linux: تثبيت حزمة AUR (أو إصدار -git)
Debian/Ubuntu/Derivatives: قم بتنزيل .deb من الإصدارات.
إنه متوفر فقط على Debian 12+ وUbuntu 22.04+ لأن الإصدارات الأقدم لا تشحن gtk4.
فيدورا: RPM متوفر في الإصدارات.
جنتو: متوفر في جورو.
OpenSUSE: يتوفر RPM في الإصدارات.
يتم دعم tumbleweed فقط لأن القفزة لا تحتوي على التبعيات المطلوبة في اتفاقيات إعادة الشراء.
NixOS: هناك حزمة متوفرة في nixpkgs
وإلا فابني من المصدر.
لماذا لا يوجد AppImage/Flatpak/تنسيق عالمي آخر؟ انظر هنا.
ملحوظة: يتطلب دعم Nvidia تثبيت برنامج التشغيل الخاص بـ Nvidia مع مكتبات CUDA.
للحصول على أحدث الإصلاحات أو الميزات التي لم يتم إصدارها بعد في إصدار مستقر، هناك حزم تم إنشاؤها من أحدث التزام يمكنك تثبيته من الإصدار التجريبي أو باستخدام حزمة lact-git
AUR على التوزيعات المستندة إلى Arch.
ملاحظة: تاريخ الإصدار التجريبي ليس هو تاريخ إنشاء الحزم، فالتاريخ الفعلي محدد بجوار ملفات الحزمة المرفقة.
قم بتمكين الخدمة وبدء تشغيلها (وإلا فلن تتمكن من تغيير أي إعدادات):
sudo systemctl enable --now lactd
يمكنك الآن استخدام واجهة المستخدم الرسومية لتغيير الإعدادات وعرض المعلومات.
لا يقوم LACT في أغلب الأحيان بتنفيذ الميزات على أساس كل جيل، بل يكشف عن الوظائف المتوفرة في برنامج التشغيل للنظام الحالي. ومع ذلك، يوضح الجدول التالي الوظائف التي يمكن توقعها لجيل معين.
جيل | تكوين الساعات | حد الطاقة | حالات القوة | التحكم في المروحة | ملحوظات |
---|---|---|---|---|---|
الجزر الجنوبية (HD 7000) | غير مدعوم | مجهول | مجهول | لم يتم اختباره | يتطلب خيار amdgpu.si_support=1 kernel |
الجزر البحرية (R7/R9 200) | غير مدعوم | مجهول | لم يتم اختباره | لم يتم اختباره | يتطلب خيار amdgpu.cik_support=1 kernel |
الجزر البركانية (R7/R9 300) | غير مدعوم | مجهول | لم يتم اختباره | لم يتم اختباره | |
جزر القطب الشمالي/بولاريس (RX 400-500) | المدعومة | المدعومة | المدعومة | المدعومة | |
فيجا | المدعومة | المدعومة | المدعومة | المدعومة | |
آر دي إن إيه 1 (آر إكس 5000) | المدعومة | المدعومة | المدعومة | المدعومة | |
آر دي إن إيه 2 (آر إكس 6000) | المدعومة | المدعومة | المدعومة | المدعومة | |
آر دي إن إيه 3 (آر إكس 7000) | المدعومة | محدود | المدعومة | محدود | هناك عتبة درجة حرارة غير قابلة للتكوين والتي لا يتم تشغيل المروحة أقل منها، حتى مع وجود منحنى مخصص. يكون غطاء الطاقة أيضًا في بعض الأحيان أقل مما ينبغي. يتطلب النواة 6.7+. انظر رقم 255 لمزيد من المعلومات. |
ستظل وحدات معالجة الرسومات غير المدرجة هنا تعمل، ولكن قد لا تتوفر وظائفها الكاملة. ستكون معلومات المراقبة/النظام متاحة في كل مكان. قد تحتوي وحدات معالجة الرسومات المدمجة أيضًا على التكوين الأساسي المتاح فقط.
أي شيء يجب أن يعمل به Maxwell أو أحدث، ولكن دعم الجيل لم يتم اختباره بدقة بعد.
يوجد ملف تكوين متاح في /etc/lact/config.yaml
. يمكن الوصول إلى معظم الإعدادات من خلال واجهة المستخدم الرسومية، ولكن قد يكون من المفيد تحرير بعضها يدويًا (مثل admin_groups
لتحديد من يمكنه الوصول إلى البرنامج الخفي)
إعداد أذونات مأخذ التوصيل:
بشكل افتراضي، يستخدم LACT إما wheel
ether أو مجموعة sudo
(أيهما متاح) لملكية مقبس Unix الذي تحتاج واجهة المستخدم الرسومية إلى الاتصال به.
في معظم التكوينات (مثل الإعداد الافتراضي على الأنظمة المستندة إلى Arch أو معظم الأنظمة المستندة إلى Debian أو Fedora) لا تحتاج إلى القيام بأي شيء.
ومع ذلك، قد يكون لدى بعض الأنظمة تكوين مستخدم مختلف. على وجه الخصوص، تم الإبلاغ عن أن هذه مشكلة في OpenSUSE.
لإصلاح أذونات مأخذ التوصيل في مثل هذه التكوينات، قم بتحرير /etc/lact/config.yaml
وأضف اسم المستخدم أو المجموعة الخاصة بك كأول إدخال في admin_groups
ضمن daemon
، وأعد تشغيل الخدمة ( sudo systemctl restart lactd
).
يتم تعطيل وظيفة رفع تردد التشغيل بشكل افتراضي في برنامج التشغيل. هناك طريقتان لتمكينه:
باستخدام خيار "تمكين رفع تردد التشغيل" في واجهة المستخدم الرسومية LACT. سيؤدي هذا إلى إنشاء ملف في /etc/modprobe.d
يمكّن خيارات برنامج التشغيل المطلوبة. هذه هي الطريقة الأسهل وينبغي أن تعمل مع معظم الناس.
ملاحظة: سيحاول هذا إعادة إنشاء initramfs تلقائيًا لتضمين الإعدادات الجديدة. لا يغطي جميع مجموعات التوزيعات الممكنة. إذا قمت بتمكين رفع تردد التشغيل في LACT ولكن لا يزال لا يعمل بعد إعادة التشغيل، فقد تحتاج إلى التحقق من تكوين التوزيعة الخاصة بك للتأكد من تحديث initramfs. يعد تحديث إصدار kernel طريقة مضمونة لتشغيل تحديث initramfs.
تحديد معلمة التمهيد. يمكنك تحديد معلمة kernel amdgpu.ppfeaturemask=0xffffffff
يدويًا في أداة تحميل التشغيل لديك لتمكين رفع تردد التشغيل. راجع ArchWiki لمزيد من التفاصيل.
نظرًا لأنه قد تتم إعادة ضبط بعض إعدادات وحدة معالجة الرسومات عند تعليق النظام، فسوف يقوم LACT بإعادة تحميلها عند استئناف النظام. قد لا يعمل هذا على التوزيعات التي لا تستخدم systemd، لأنها تعتمد على واجهة org.freedesktop.login2
DBus.
التبعيات:
أمر لتثبيت كافة التبعيات:
sudo dnf install rust cargo make git gtk4-devel libdrm-devel blueprint-compiler
sudo pacman -S --needed base-devel git make rust gtk4 hwdata blueprint-compiler
خطوات:
git clone https://github.com/ilya-zlobintsev/LACT && cd LACT
make
sudo make install
من الممكن تغيير الميزات التي يتم إنشاء LACT بها. للقيام بذلك، استبدل أمر make
بالصيغة التالية:
بناء مقطوعة الرأس بدون واجهة المستخدم الرسومية:
make build-release-headless
بناء واجهة المستخدم الرسومية بدعم libadwaita:
make build-release-libadwaita
توجد واجهة برمجة التطبيقات (API) متاحة عبر مقبس Unix أو TCP. انظر هنا لمزيد من المعلومات.
من الممكن تشغيل البرنامج الخفي LACT على جهاز واحد، ثم إدارته عن بعد من جهاز آخر.
يتم تعطيل هذا افتراضيًا، حيث أن اتصال TCP لا يحتوي على أي آلية مصادقة أو تشفير! تأكد من استخدامه فقط في الشبكات الموثوقة و/أو قم بإعداد قواعد جدار الحماية المناسبة.
لتمكينه، قم بتحرير /etc/lact/config.yaml
وأضف tcp_listen_address
بالعنوان الذي تريده وفي قسم daemon
.
مثال:
daemon :
tcp_listen_address : 0.0.0.0:12853
log_level : info
admin_groups :
- wheel
- sudo
disable_clocks_cleanup : false
بعد ذلك، أعد تشغيل الخدمة ( sudo systemctl restart lactd
).
للاتصال بمثيل بعيد باستخدام واجهة المستخدم الرسومية، قم بتشغيله باستخدام lact gui --tcp-address 192.168.1.10:12853
.
هناك أيضًا CLI متاح.
قائمة وحدات معالجة الرسومات للنظام:
lact cli list-gpus
مثال الإخراج:
1002:687F-1043:0555-0000:0b:00.0 (Vega 10 XL/XT [Radeon RX Vega 56/64])
الحصول على معلومات GPU:
lact cli info
مثال الإخراج:
lact cli info
GPU Vendor: Advanced Micro Devices, Inc. [AMD/ATI]
GPU Model: Vega 10 XL/XT [Radeon RX Vega 56/64]
Driver in use: amdgpu
VBIOS version: 115-D050PIL-100
Link: LinkInfo { current_width: Some("16"), current_speed: Some("8.0 GT/s PCIe"), max_width: Some("16"), max_speed: Some("8.0 GT/s PCIe") }
وظائف CLI محدودة للغاية. إذا كنت تريد دمج LACT مع بعض التطبيقات/النصوص البرمجية، فيجب عليك استخدام واجهة برمجة التطبيقات (API) بدلاً من ذلك.
عند الإبلاغ عن المشكلات، يرجى تضمين معلومات النظام ونموذج وحدة معالجة الرسومات.
إذا كنت تواجه مشكلة في تغيير تكوين وحدة معالجة الرسومات، فمن المستحسن بشدة تضمين لقطة تصحيح الأخطاء في تقرير الخطأ. يمكنك إنشاء واحد باستخدام الخيار الموجود في القائمة المنسدلة:
اللقطة عبارة عن أرشيف يتضمن SysFS الذي يستخدمه LACT للتفاعل مع وحدة معالجة الرسومات.
في حالة حدوث عطل، قم بتشغيل lact gui
من سطر الأوامر للحصول على سجلات واجهة المستخدم الرسومية، وتحقق من سجلات البرنامج الخفي في journalctl -u lactd
بحثًا عن الأخطاء، وراجع dmesg
لسجلات kernel التي قد تتضمن معلومات حول مشكلات برنامج التشغيل والنظام.
فيما يلي قائمة بالأدوات المفيدة الأخرى لوحدات معالجة الرسومات AMD على نظام Linux: