مقایسه عملکرد Kernel Generic و XanMod: بررسی تخصصی

انتخاب هسته مناسب برای لینوکس متاسفانه کمی دشوار و وابسته به نیازهای مختلف است. در این مقاله، ما با استفاده از آمار و ارقام، عملکرد Generic Kernel و XanMod Kernel را بررسی و مقایسه میکنیم. هادف از این مقایسه، بررسی سرعت، توانایی در مدیریت منابع، و بهینهبودن هر کدام از هستهها میباشد.
محیط تست
محیط تست ما یک سرور ابری ساده با ۲ هسته پردازنده و ۴ گیگ رم با سیستم عامل محبوب اوبونتو ۲۴ هستش.

XanMod : Linux Kernel
XanMod یک کرنل سفارشیشده برای سیستمهای لینوکسی است که هدف اصلی آن بهبود عملکرد، کاهش تاخیر، و افزایش بهرهوری در سیستمهای دسکتاپ، گیمینگ و حتی سرورهای با بار متوسط است. این هسته بر پایه Generic Kernel لینوکس ساخته شده و با استفاده از بهینهسازیهای خاص مانند تغییرات در زمانبندی فرآیندها (CPU Scheduler)، تنظیمات شبکه، و بهبود مدیریت منابع، تجربه بهتری را فراهم میکند.
برخی از ویژگیهاش شامل موارد زیر است:
- زمانبند CacULE: بهبود زمانبندی پردازشها و کاهش تأخیر، بهویژه برای دسکتاپ و گیمینگ.
- پشتیبانی بهینه از سختافزارهای مدرن: با بهروزترین ماژولها و درایورها سازگار است.
- پیکربندی برای بارهای کاری سنگینتر: از I/O و شبکه بهینهتر پشتیبانی میکند.
- پچهای امنیتی و عملکردی بهروز: با استفاده از جدیدترین اصلاحات کرنل لینوکس.

بهتره زیاد کشش ندیم و بریم سراغ تست ها اول از همه با تست ساده شروع میکنم که زمان بوت هر دو کرنل رو مقایسه کنم . با دستور systemd-analyze میشه زمان بوت رو مشاهده کرد.

همونجوری که انتظار میرفت حدود ۲ ثانیه سریع تر بوت شده.
برای تست بعدی رفتم سراغ CPU که در دو حالت Single Thread و Multi Thread از هر دو کرنل تست گرفتم.
sudo apt install sysbench
sysbench --test=cpu --cpu-max-prime=20000 run
sysbench --test=cpu --num-threads=4 --cpu-max-prime=20000 run
نتایج :


برای تست سرعت Read / Write هم از دستور همیشگی dd استفاده کردم.
dd if=/dev/zero of=tempfile bs=1G count=1 oflag=direct #Write
dd if=tempfile of=/dev/null bs=1G #Read
fio --name=randread --ioengine=libaio --rw=randread --bs=4k --size=1G --numjobs=4 --runtime=60 --group_reporting #Bw-IO-IOPS


تست مموری با دستورات زیر گرفته شد :
free -m
apt install stress
stress --vm 2 --vm-bytes 512M --timeout 20s

برای تست نتورک با استفاده از iperf3 نیاز به یک سرور دیگه برای راه انداختن سرور iperf3 بود. برای اینکه شرایط نتورک تغییر زیادی نداشته باشه در محیط مشابهی و در نتورک یکسانی این تست گرفته شد.
iperf3 -s #Init Server
iperf3 -c 172.16.100.4 #TestCommand

اما ظاهرا تفاوت خیلیه :) اما این مورد رو توی ۱۰ تا تست اجرا شده نشد تشخیص داد و بنظرم اشتباهه. تست رو برای مدت طولانی تری ادامه میدم...
نتیجه گیری
بررسی تمام شاخصها نشان داد که XanMod Kernel توی بسیاری از جوانب مثل زمان Boot، بهینهسازی مموری، CPU بهتر ظاهر شده. اگر سرعت، بهینهبودن و عملکرد بهتر لازم دارید میتونه گزینه خوبی باشه.
برای نصب XanMod میتونید دستورات زیر رو اجرا کنید.
wget -qO - https://dl.xanmod.org/archive.key | sudo gpg --dearmor -vo /etc/apt/keyrings/xanmod-archive-keyring.gpg
echo 'deb [signed-by=/etc/apt/keyrings/xanmod-archive-keyring.gpg] http://deb.xanmod.org releases main' | sudo tee /etc/apt/sources.list.d/xanmod-release.list
sudo apt update && sudo apt install linux-xanmod-x64v3
