Tuning membuat sistem berjalan sesuai beban kerjanya. Episode ini membahas kernel params sysctl, pemilihan I/O scheduler, optimasi makepkg dengan CFLAGS, serta monitoring dengan htop, btop, sysstat, dan log service OpenRC rc-log.

Sistem yang sehat tidak cukup — kalian ingin sistem yang bekerja sesuai karakteristik beban kerjanya. Episode 20 membahas performance tuning di Artix: parameter kernel lewat sysctl, pemilihan I/O scheduler, optimasi build dengan makepkg, serta alat monitoring untuk memastikan tuning membuahkan hasil.
Prinsip utamanya: ukur dulu, baru tuning. Mengubah parameter tanpa data hanya menambah risiko. Karena itu kita selalu memadukan perubahan dengan alat monitoring.
sysctl memungkinkan mengubah parameter kernel saat runtime dan menetapkannya saat boot. Baca nilai yang sedang berlaku:
sysctl vm.swappiness
sysctl net.ipv4.ip_forwardsysctl vm.swappiness menampilkan kecenderungan kernel memakai swap. Nilai 60 adalah default; untuk desktop dengan RAM cukup, 10 sering terasa lebih responsif.
Ubah nilai sementara untuk uji, lalu permanenkan di /etc/sysctl.d/:
sudo sysctl vm.swappiness=10
echo 'vm.swappiness = 10' | sudo tee /etc/sysctl.d/99-tuning.conf
sudo sysctl --systemsysctl --system memuat semua file di /etc/sysctl.d/ dan /etc/sysctl.conf. File dengan awalan angka lebih besar di-load belakangan dan menang atas nilai sebelumnya.
Untuk beban kerja umum, perhatikan vm.swappiness, net.core.somaxconn untuk backlog koneksi, dan vm.dirty_ratio untuk penulisan disk. Ubah satu per satu dan amati dampaknya — jangan menerapkan banyak perubahan sekaligus.
I/O scheduler menentukan bagaimana permintaan baca/tulis disk diatur. Kernel modern memakai mq-deadline untuk HDD dan none untuk SSD/NVMe. Lihat scheduler aktif:
cat /sys/block/sda/queue/schedulerOutput cat /sys/block/sda/queue/scheduler menampilkan scheduler dengan tanda kurung siku untuk yang aktif. Untuk SSD modern, none biasanya terbaik karena controller SSD sudah mengelola antrean sendiri.
Scheduler bisa ditetapkan perangkat secara otomatis dengan rule udev di /etc/udev/rules.d/:
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="none"Rule ini memilih none untuk disk non-rotational. Perintah ATTR{queue/scheduler}="none" diterapkan eudev setiap perangkat terdeteksi. Setelah menulis rule, reload udev untuk mengujinya.
Saat membangun paket (AUR, episode 15), makepkg memakai flag di /etc/makepkg.conf. Optimasi CFLAGS sesuai CPU kalian meningkatkan performa paket yang di-build lokal:
CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="-march=native -O2 -pipe"-march=native mengoptimasi untuk CPU kalian secara spesifik. Catatan: paket hasil build dengan -march=native tidak bisa dipindahkan ke mesin lain dengan CPU berbeda.
Build paralel memakai semua core CPU. Sesuaikan nilai MAKEFLAGS di /etc/makepkg.conf:
MAKEFLAGS="-j$(nproc)"-j$(nproc) membuat makepkg memakai seluruh core. Untuk build yang memakan banyak RAM, kurangi jumlahnya agar tidak membuat sistem thrashing.
htop menampilkan proses dan beban CPU secara real-time. Install dan jalankan:
sudo pacman -S htop
htopDi dalam htop, tekan F5 untuk tree view dan F6 untuk mengurutkan. Untuk tampilan lebih modern dengan informasi GPU dan disk, coba btop.
btop menggabungkan CPU, memori, disk, jaringan, dan proses dalam satu layar:
sudo pacman -S btop
btopbtop menampilkan grafik real-time dan bisa mengurutkan proses. Gunakan sebagai alat sehari-hari untuk mengenali kebiasaan beban sistem kalian.
sysstat mengumpulkan statistik sistem secara berkala untuk analisis tren. Install dan aktifkan:
sudo pacman -S sysstat sysstat-openrc
rc-update add sysstat default
rc-service sysstat startSetelah berjalan, data dikumpulkan ke /var/log/sa/. Lihat ringkasan harian dengan sar:
sar -u
sar -rsar -u menampilkan historis penggunaan CPU, sar -r memori. Data historis ini yang membedakan monitoring yang baik: kalian bisa melihat tren, bukan hanya kondisi saat ini.
Di OpenRC, rc-log mencatat output script init ke /var/log/rc.log. Aktifkan untuk menelusuri masalah boot dan service:
rc-update add rc-log default
rc-service rc-log start
tail -f /var/log/rc.logOutput tail -f /var/log/rc.log streaming log service yang dijalankan. Kombinasi sysstat untuk tren dan rc-log untuk service membuat pemantauan Artix lengkap.
Episode 20 membekali kalian alat dan kebiasaan tuning: parameter sysctl, I/O scheduler untuk SSD/HDD, optimasi makepkg dengan CFLAGS dan MAKEFLAGS, serta monitoring dengan htop, btop, sysstat, dan rc-log.
Inti yang harus dibawa pulang:
/etc/sysctl.d/ dan dimuat sysctl --system.none; HDD pakai mq-deadline.-march=native mengoptimasi build untuk CPU kalian.htop dan btop untuk monitoring real-time interaktif.Di episode 21 selanjutnya kita akan membahas roadmap dan community — arah pengembangan init support dan kernel, wiki, forum, serta kanal IRC dan Matrix sebagai sumber belajar resmi Artix.