Academy and Foundation unixmens | Your skills, Your future
2.28K subscribers
6.65K photos
1.36K videos
1.23K files
5.97K links
@unixmens_support
@yashar_esm
unixmens@gmail.com
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
در حال آماده سازی یک دوره جدید ، برای اولین بار در ایران هستم . اسم این دوره performance tuning هست . این دوره برای تمام کسانی است که کارهای enterprise انجام میدن و حتی افراد عادی !!!.

Optimize for SAP NetWeaver
Optimize for running KVM guests
Optimize for realtime workloads
Optimize for Oracle RDBMS
- Optimize for CPU partitioning
Optimize for streaming network
Optimize for running KVM guests
and ...

اگر اسم ساختارهایی مثل tuna را نشنیدین . بهتون پیشنهاد میکنم . در این دوره تشریف بیارین .

نکته دیگه : دوست دارید این دوره کی شروع بشه ؟؟؟؟

جواب هاتون را لطفا به این ID ارسال کنید .

#cource #دوره #linux #performance #pt
در حال آماده سازی یک دوره جدید ، برای اولین بار در ایران هستم . اسم این دوره performance tuning هست . این دوره برای تمام کسانی است که کارهای enterprise انجام میدن و حتی افراد عادی !!!.

Optimize for SAP NetWeaver
Optimize for running KVM guests
Optimize for realtime workloads
Optimize for Oracle RDBMS
- Optimize for CPU partitioning
Optimize for streaming network
Optimize for running KVM guests
and ...

اگر اسم ساختارهایی مثل tuna را نشنیدین . بهتون پیشنهاد میکنم . در این دوره تشریف بیارین .

نکته دیگه : دوست دارید این دوره کی شروع بشه ؟؟؟؟

جواب هاتون را لطفا به این ID ارسال کنید .

#cource #دوره #linux #performance #pt
تصمیم دارم در فروردین یا اردیبهشت دوره Database High Performance & HA را برگزار کنم . سرفصل های این دوره را دارم مینویسم . این دوره برای اولین بار در ایران برگزار خواهد شد .
#database #linux #storage #ha #performance
👌4👍1
maxscale and spider engine .pdf
2.3 MB
در این مقاله به بررسی MariaDB MaxScale و Spider Engine می پردازیم این دو ویژگی قدرتمند در MariaDB هستند که می‌توانند به سازمان‌ها کمک کنند تا عملکرد، مقیاس‌پذیری و دسترس‌پذیری و امنیت پایگاه داده‌های خود را بهبود ببخشند. در ادامه به توضیح هر یک از این دو ویژگی و منافع آن‌ها برای سازمان‌ها می‌پردازم.

#db #dba #mariadb #oracle #mysql #performance #book #yashar_esmaildokht
#security

https://t.me/unixmens
با ویژگی overcommit_memory در کرنل آشنا شویم :

ویژگی overcommit_memory در کرنل لینوکس به مدیریت نحوه تخصیص حافظه مجازی به فرآیندها کمک می‌کند. این ویژگی به کرنل اجازه می‌دهد تا تصمیم بگیرد که آیا می‌تواند حافظه بیشتری از آنچه که در واقع در دسترس است، به فرآیندها تخصیص دهد یا خیر. این ویژگی می‌تواند به سه حالت مختلف تنظیم شود:
حالت‌های overcommit_memory

حالت 0 (پیش‌فرض):
در این حالت، کرنل از یک الگوریتم هوشمند برای تصمیم‌گیری در مورد تخصیص حافظه استفاده می‌کند. این الگوریتم به طور کلی بر اساس میزان حافظه فیزیکی موجود و میزان حافظه‌ای که در حال حاضر در حال استفاده است، تصمیم می‌گیرد.
این حالت معمولاً برای اکثر سیستم‌ها مناسب است، زیرا به کرنل اجازه می‌دهد تا به طور دینامیک و بر اساس نیازهای سیستم، حافظه را مدیریت کند.

حالت 1:
در این حالت، کرنل همیشه اجازه می‌دهد که حافظه بیشتری از آنچه که در واقع موجود است، تخصیص یابد. به عبارت دیگر، کرنل به هیچ وجه محدودیتی برای تخصیص حافظه قائل نمی‌شود.
این حالت می‌تواند در برخی از برنامه‌ها که به حافظه زیادی نیاز دارند، مفید باشد، اما ممکن است منجر به مشکلاتی مانند کمبود حافظه و کرش شدن برنامه‌ها شود.

حالت 2:
در این حالت، کرنل به هیچ وجه اجازه نمی‌دهد که حافظه‌ای بیشتر از مجموع حافظه فیزیکی و یک مقدار مشخص (که می‌توان آن را تنظیم کرد) تخصیص یابد.
این حالت می‌تواند به جلوگیری از مشکلات ناشی از تخصیص بیش از حد حافظه کمک کند و برای سیستم‌هایی که نیاز به کنترل دقیق‌تری بر روی حافظه دارند، مناسب است.

دلایل استفاده از overcommit_memory

مدیریت بهتر حافظه: با تنظیم این ویژگی، مدیران سیستم می‌توانند کنترل بیشتری بر روی نحوه تخصیص حافظه داشته باشند و از بروز مشکلات ناشی از کمبود حافظه جلوگیری کنند.
پیشگیری از کرش شدن برنامه‌ها: در حالت 2، می‌توان از تخصیص بیش از حد حافظه جلوگیری کرد که می‌تواند به کاهش احتمال کرش شدن برنامه‌ها و سیستم کمک کند.
بهینه‌سازی عملکرد: در برخی موارد، تنظیم این ویژگی می‌تواند به بهبود عملکرد برنامه‌ها کمک کند، به ویژه در برنامه‌هایی که به حافظه زیادی نیاز دارند.

نحوه تنظیم overcommit_memory

برای مشاهده وضعیت فعلی overcommit_memory، می‌توانید از دستور زیر استفاده کنید:



cat /proc/sys/vm/overcommit_memory

برای تغییر موقت آن (تا زمان راه‌اندازی مجدد):



sudo sysctl vm.overcommit_memory=1

برای تنظیم دائمی آن، می‌توانید خط زیر را به فایل /etc/sysctl.conf اضافه کنید:



vm.overcommit_memory=1

نتیجه‌گیری

ویژگی overcommit_memory در کرنل لینوکس ابزاری مفید برای مدیریت حافظه است که به مدیران سیستم اجازه می‌دهد تا نحوه تخصیص حافظه را بر اساس نیازهای خاص سیستم و برنامه‌ها تنظیم کنند. انتخاب حالت مناسب می‌تواند به بهبود عملکرد و پایداری سیستم کمک کند.

نکته :
دستور smem ابزاری است که می‌تواند اطلاعات دقیقی درباره استفاده از حافظه توسط فرآیندها ارائه دهد. برای نصب smem، می‌توانید از مدیر بسته توزیع خود استفاده کنید. به عنوان مثال،



dnf install smem

سپس می‌توانید از آن استفاده کنید:



smem -r -k

این دستور اطلاعاتی درباره استفاده از حافظه توسط فرآیندها را به صورت مرتب و خلاصه نمایش می‌دهد.
نتیجه‌گیری

با استفاده از ابزارها و دستورات فوق، می‌توانید به راحتی حافظه مجازی اختصاص داده شده به فرآیندها را در لینوکس مشاهده کنید و اطلاعات دقیقی درباره استفاده از حافظه در سیستم خود به دست آورید.


#kernel #tip #tips #memory #performance #linux


https://t.me/unixmens
ا Anycast BGP چیست؟

ا Anycast یک تکنیک مسیریابی شبکه است که در آن یک آدرس IP یکسان به چندین گره یا سرور اختصاص داده می‌شود و این گره‌ها می‌توانند در مکان‌های جغرافیایی مختلف توزیع شده باشند. در پروتکل BGP (Border Gateway Protocol)، این روش برای هدایت ترافیک به نزدیک‌ترین یا بهینه‌ترین نقطه در شبکه استفاده می‌شود.
اصول کار Anycast در BGP:

اختصاص یکسان آدرس IP: چندین سرور یا نود در نقاط مختلف دنیا یا یک شبکه، همگی یک آدرس IP یکسان را اعلام می‌کنند.
مسیریابی بر اساس نزدیک‌ترین مسیر: با استفاده از BGP (پروتکل مسیریابی اینترنت)، ترافیک به نزدیک‌ترین سرور (از نظر مسیر BGP) هدایت می‌شود. این نزدیک‌ترین مسیر معمولاً کمترین هزینه یا تأخیر را دارد.
افزایش دسترس‌پذیری و تحمل خطا: اگر یکی از سرورها از دسترس خارج شود، پروتکل BGP به‌طور خودکار ترافیک را به دیگر سرورهایی که همان آدرس IP را اعلام کرده‌اند، هدایت می‌کند.

مزایا و کاربردهای Anycast با BGP:

افزایش کارایی و کاهش تأخیر:
کاربران به نزدیک‌ترین سرور دسترسی پیدا می‌کنند، که منجر به کاهش زمان تاخیر (Latency) می‌شود.

افزایش پایداری و تحمل خطا (Fault Tolerance):
اگر یکی از سرورها یا نودها از دسترس خارج شود، BGP به‌طور خودکار به مسیرهای دیگر هدایت می‌شود.
این ویژگی باعث افزایش دسترس‌پذیری سرویس می‌شود.

مقیاس‌پذیری:
با افزایش تعداد سرورها در مکان‌های مختلف، مقیاس‌پذیری سرویس افزایش پیدا می‌کند، بدون نیاز به تغییر در ساختار آدرس‌دهی.

استفاده در DNS و CDNها:
سرویس‌دهندگان DNS (مانند Google DNS یا Cloudflare) و شبکه‌های CDN (مانند Akamai و Cloudflare) از Anycast برای بهبود پاسخ‌دهی و پایداری استفاده می‌کنند.
وقتی یک کاربر درخواست DNS می‌دهد، به نزدیک‌ترین سرور Anycast هدایت می‌شود.

چالش‌های استفاده از Anycast:

ا مسیریابی ناپایدار (Routing Instability):
به دلیل دینامیک بودن مسیریابی BGP، مسیرها ممکن است ناپایدار باشند و ترافیک بین سرورها نوسان کند.

بررسی دقیق در زمان خرابی:
اگر یک سرور از دسترس خارج شود اما BGP آن را دیرتر شناسایی کند، ممکن است ترافیک به مقصد اشتباه هدایت شود.

عدم اطمینان از مسیریابی دقیق:
ا Anycast نمی‌تواند همیشه بهینه‌ترین مسیر را انتخاب کند، زیرا مسیریابی BGP به پارامترهایی مانند AS Path و Local Preference بستگی دارد که همیشه لزوماً کوتاه‌ترین یا سریع‌ترین مسیر را نشان نمی‌دهند.

مثال از Anycast در عمل:

Google DNS (8.8.8.8):
آدرس IP عمومی 8.8.8.8 از طریق Anycast در نقاط مختلف جهان اعلام شده است. وقتی کاربری از هر نقطه‌ای به این آدرس درخواست DNS می‌فرستد، درخواست او به نزدیک‌ترین سرور Google DNS هدایت می‌شود.

Cloudflare CDN:
ا Cloudflare از Anycast برای رساندن محتوای وب از نزدیک‌ترین سرور به کاربران استفاده می‌کند. در نتیجه، عملکرد وب‌سایت‌هایی که از خدمات CDN استفاده می‌کنند، بهبود می‌یابد.

نحوه پیاده‌سازی Anycast با BGP:

پیکربندی روترها:
ا هر سرور یا نود باید با استفاده از BGP یک مسیر برای آدرس IP مشترک (Anycast IP) اعلام کند.
به عنوان مثال، چندین روتر در ASهای مختلف می‌توانند یک Prefix مشابه (مثل 203.0.113.0/24) را از طریق BGP منتشر کنند.

ا اعلام Route از چندین موقعیت جغرافیایی:
ا BGP به صورت Policy-Based Routing یا با Weighting مناسب، ترافیک را به سمت نزدیک‌ترین نقطه هدایت می‌کند.

خلاصه:

ا Anycast با BGP روشی بسیار مؤثر برای افزایش سرعت، پایداری، و تحمل خطای سرویس‌های شبکه‌ای است. این روش در بسیاری از سرویس‌های مهم مانند DNS، CDN و پلتفرم‌های ابری استفاده می‌شود. با این حال، چالش‌هایی مثل ناپایداری مسیریابی و نیاز به مدیریت دقیق در زمان خرابی، استفاده از آن را پیچیده می‌کند.
#security #network #performance #bgp #anycast #net

https://t.me/unixmens
در واقع Bcache یک ماژول کرنل لینوکس است که اجازه می دهد تا یک دیسک سخت را به عنوان حافظه کش استفاده کنید. با فعال کردن Bcache بر روی یک دیسک سخت، داده هایی که به سمت دیسک سخت می روند ابتدا در حافظه کش Bcache ذخیره می شوند و در صورت نیاز به سرعت از آن استفاده می کنند. این بهبود عملکرد سیستم عامل و افزایش سرعت بارگیری و ذخیره سازی داده ها می تواند منجر به بهبود کارایی و کاهش زمان تاخیر در سیستم شود.
همچنین Bcache از ترکیب SSD و HDD برای افزایش سرعت و بهره وری استفاده می کند. به عنوان مثال، با استفاده از یک SSD به عنوان حافظه کش و یک HDD به عنوان فضای ذخیره سازی، می توانید بهره وری بالاتری در مقایسه با استفاده از یک دیسک سخت تنها داشته باشید.
از آنجا که Bcache برای افزایش سرعت استفاده می شود، نباید برای ذخیره سازی داده های حیاتی استفاده شود. بهتر است از Bcache به عنوان یک حافظه کش استفاده کنید و داده های حیاتی را در دیسک سخت یا حافظه های دیگر ذخیره کنید.
این سیستم فایل باعث می‌شود که داده‌هایی که بیشتر دسترسی دارند روی SSD ذخیره شوند و بنابراین سرعت خواندن و نوشتن آن‌ها افزایش یابد. bcache همچنین از الگوریتم‌های هوشمندانه‌ای برای مدیریت کش و همگام‌سازی داده‌ها بین دو دیسک استفاده می‌کند.

برای استفاده از bcache در لینوکس، ابتدا باید یک پارتیشن را برای SSD اختصاص دهید و آن را به عنوان backing device معرفی کنید. سپس باید یک پارتیشن را برای HDD اختصاص دهید و آن را به عنوان caching device معرفی کنید. در نهایت، باید یک سیستم فایل را روی backing device ایجاد کنید

bcache یک سیستم فایل جالب و قابل توجه است که می‌تواند عملکرد سیستم شما را بهبود بخشد. البته، همانطور که در هر فناوری جدید وجود دارد، bcache هم ممکن است با مشکلات و محدودیت‌های خود روبرو شود. برای مثال، اگر SSD شما خراب شود، ممکن است داده‌های ناقص یا غیرقابل بازیابی روی HDD شما باقی بماند. یا اگر HDD شما خراب شود، ممکن است داده‌های جدید یا تغییر یافته روی SSD شما همگام نشده باشد. بنابراین، قبل از استفاده از bcache، لازم است که از داده‌های خود پشتیبان تهیه کنید .

Bcache, cachefs and cachefilesd are three different caching solutions that can improve the performance of disk access. Bcache is a block-level cache that uses an SSD as a cache for another block device, such as a hard disk. Cachefs is a file-level cache that uses a directory on a local disk as a cache for network filesystems, such as AFS or NFS3. Cachefilesd is a daemon that manages the cachefs data store and communicates with the kernel module cachefiles.


نویسنده : یاشار اسمعیل دخت

#storage #cache #ssd #storage #performance
#yashar_esmaildokht

https://www.slideshare.net/yasharesmaildokht/bcache-and-cachefs-its-benefits


https://t.me/unixmens
Here’s a detailed summary of SPDK v25.05, released on May 29, 2025, and marked as a Long-Term Support (LTS) version spanning through the next LTS, v26.01 spdk.io+13

spdk.io+13

spdk.io+13

:

🚀 Major New Features

1. NVMe PCIe Interrupt Mode

The NVMe library and NVMe block device (“bdev”) module now support PCIe interrupt mode (beyond the default polling).

This enables hybrid configurations—better suited for low-load environments to reduce CPU usage while maintaining performance. spdk.io+5

spdk.io+5

GitHub+5

2. DIF Insert / Strip

The bdev layer now supports integrated Data Integrity Field (DIF) operations.

You can automatically insert protection metadata with outgoing I/O and strip/verify it on incoming data.

Useful for offload of integrity protection in enterprise storage protocols. GitHub+5

spdk.io+5

spdk.io+5

newreleases.io

3. mlx5 Accel Platform Driver

SPDK introduces a new mlx5 platform driver, enabling offload via Mellanox/NVIDIA NICs.

This driver can perform a combined sequence: RDMA_READ ➝ RDMA_WRITE ➝ encrypt/decrypt in a single atomic operation.

Utilizes User‑Memory Region (UMR) registration to modify memory key properties—streamlining complex protocols like secure RDMA NVMe-oF. fossies.org+13

spdk.io+13

spdk.io+13

GitHub+1

newreleases.io+1

🏗 Additional Enhancements & APIs

bdev API improvements:

spdk_bdev_open_ext_v2(): more flexible I/O open options.

Metadata queries based on the hide_metadata flag. spdk.io+4

GitHub+4

newreleases.io+4

Metadata buffer control: Support for inserting or overwriting based on NVMe PRACT bits in spdk_bdev_ext_io_opts. GitHub+1

newreleases.io+1

🗓 Timeline & Support

LTS version released May 29, 2025.

Supported until the next LTS – v26.01 (scheduled ~2026 January). GitHub+2

spdk.io+2

spdk.io+2

spdk.io

The next non-LTS release, v25.09, is slated for late September 2025. NVIDIA Docs+12

spdk.io+12

newreleases.io+12

🔍 Context & Relevance

SPDK (Storage Performance Development Kit) is a robust, user-space toolkit for maximizing storage I/O performance, with features like polling mode, thread-per-core architecture, and minimal kernel dependencies NVIDIA Docs+9

spdk.io+9

fossies.org+9

.

The v25.05 release continues the trend of offloading, efficient I/O paradigms, and enterprise-grade data protection.

💡 Why This Matters

Interrupt support helps reduce CPU load when full polling isn’t needed—ideal for mixed workload environments.

Built‑in DIF means fewer moving parts and reduced code complexity for apps with data-protection needs.

Hardware offload using mlx5 accelerates encrypted storage traffic and RDMA workloads, boosting throughput and lowering latency.



#storage #kit #performance #spdk #release




https://t.me/unixmens
ا Anycast BGP چیست؟

ا Anycast یک تکنیک مسیریابی شبکه است که در آن یک آدرس IP یکسان به چندین گره یا سرور اختصاص داده می‌شود و این گره‌ها می‌توانند در مکان‌های جغرافیایی مختلف توزیع شده باشند. در پروتکل BGP (Border Gateway Protocol)، این روش برای هدایت ترافیک به نزدیک‌ترین یا بهینه‌ترین نقطه در شبکه استفاده می‌شود.
اصول کار Anycast در BGP:

اختصاص یکسان آدرس IP: چندین سرور یا نود در نقاط مختلف دنیا یا یک شبکه، همگی یک آدرس IP یکسان را اعلام می‌کنند.
مسیریابی بر اساس نزدیک‌ترین مسیر: با استفاده از BGP (پروتکل مسیریابی اینترنت)، ترافیک به نزدیک‌ترین سرور (از نظر مسیر BGP) هدایت می‌شود. این نزدیک‌ترین مسیر معمولاً کمترین هزینه یا تأخیر را دارد.
افزایش دسترس‌پذیری و تحمل خطا: اگر یکی از سرورها از دسترس خارج شود، پروتکل BGP به‌طور خودکار ترافیک را به دیگر سرورهایی که همان آدرس IP را اعلام کرده‌اند، هدایت می‌کند.

مزایا و کاربردهای Anycast با BGP:

افزایش کارایی و کاهش تأخیر:
کاربران به نزدیک‌ترین سرور دسترسی پیدا می‌کنند، که منجر به کاهش زمان تاخیر (Latency) می‌شود.

افزایش پایداری و تحمل خطا (Fault Tolerance):
اگر یکی از سرورها یا نودها از دسترس خارج شود، BGP به‌طور خودکار به مسیرهای دیگر هدایت می‌شود.
این ویژگی باعث افزایش دسترس‌پذیری سرویس می‌شود.

مقیاس‌پذیری:
با افزایش تعداد سرورها در مکان‌های مختلف، مقیاس‌پذیری سرویس افزایش پیدا می‌کند، بدون نیاز به تغییر در ساختار آدرس‌دهی.

استفاده در DNS و CDNها:
سرویس‌دهندگان DNS (مانند Google DNS یا Cloudflare) و شبکه‌های CDN (مانند Akamai و Cloudflare) از Anycast برای بهبود پاسخ‌دهی و پایداری استفاده می‌کنند.
وقتی یک کاربر درخواست DNS می‌دهد، به نزدیک‌ترین سرور Anycast هدایت می‌شود.

چالش‌های استفاده از Anycast:

ا مسیریابی ناپایدار (Routing Instability):
به دلیل دینامیک بودن مسیریابی BGP، مسیرها ممکن است ناپایدار باشند و ترافیک بین سرورها نوسان کند.

بررسی دقیق در زمان خرابی:
اگر یک سرور از دسترس خارج شود اما BGP آن را دیرتر شناسایی کند، ممکن است ترافیک به مقصد اشتباه هدایت شود.

عدم اطمینان از مسیریابی دقیق:
ا Anycast نمی‌تواند همیشه بهینه‌ترین مسیر را انتخاب کند، زیرا مسیریابی BGP به پارامترهایی مانند AS Path و Local Preference بستگی دارد که همیشه لزوماً کوتاه‌ترین یا سریع‌ترین مسیر را نشان نمی‌دهند.

مثال از Anycast در عمل:

Google DNS (8.8.8.8):
آدرس IP عمومی 8.8.8.8 از طریق Anycast در نقاط مختلف جهان اعلام شده است. وقتی کاربری از هر نقطه‌ای به این آدرس درخواست DNS می‌فرستد، درخواست او به نزدیک‌ترین سرور Google DNS هدایت می‌شود.

Cloudflare CDN:
ا Cloudflare از Anycast برای رساندن محتوای وب از نزدیک‌ترین سرور به کاربران استفاده می‌کند. در نتیجه، عملکرد وب‌سایت‌هایی که از خدمات CDN استفاده می‌کنند، بهبود می‌یابد.

نحوه پیاده‌سازی Anycast با BGP:

پیکربندی روترها:
ا هر سرور یا نود باید با استفاده از BGP یک مسیر برای آدرس IP مشترک (Anycast IP) اعلام کند.
به عنوان مثال، چندین روتر در ASهای مختلف می‌توانند یک Prefix مشابه (مثل 203.0.113.0/24) را از طریق BGP منتشر کنند.

ا اعلام Route از چندین موقعیت جغرافیایی:
ا BGP به صورت Policy-Based Routing یا با Weighting مناسب، ترافیک را به سمت نزدیک‌ترین نقطه هدایت می‌کند.

خلاصه:

ا Anycast با BGP روشی بسیار مؤثر برای افزایش سرعت، پایداری، و تحمل خطای سرویس‌های شبکه‌ای است. این روش در بسیاری از سرویس‌های مهم مانند DNS، CDN و پلتفرم‌های ابری استفاده می‌شود. با این حال، چالش‌هایی مثل ناپایداری مسیریابی و نیاز به مدیریت دقیق در زمان خرابی، استفاده از آن را پیچیده می‌کند.
#security #network #performance #bgp #anycast #net

https://t.me/unixmens
Academy and Foundation unixmens | Your skills, Your future
Photo
#دانستنی های #گنو/ #لینوکس :


در واقع Tuned در لینوکس یک سرویس و مجموعه ابزار برای بهینه‌سازی خودکار عملکرد و مصرف انرژی سیستم است که می‌تواند پروفایل‌های آماده یا سفارشی را روی سخت‌افزار اعمال کند.

ایده اصلی Tuned این است که بسته به سناریوی کاری (سرور دیتابیس، ماشین مجازی، لپ‌تاپ، سیستم گرافیکی، ذخیره‌سازی و غیره)، سیستم را به‌طور پویا بهینه کند، بدون اینکه کاربر هر بار دستی پارامترها را تغییر دهد.

این تنظیمات می‌توانند شامل:

CPU governor و فرکانس پردازنده

زمان‌بندی I/O (I/O scheduler)

تنظیمات شبکه (TCP stack)

سیاست مصرف انرژی دستگاه‌ها (PCIe ASPM، SATA link power)

تنظیمات kernel sysctl

پارامترهای NUMA و حافظه


توی دنیای لینوکس، tuned-ppd یک "دیمنت پیاده‌سازی پل" (compatibility daemon) است که برای همگام‌سازی دو سیستم مدیریت پروفایل مصرف انرژی طراحی شده:

تعریف و هدف tuned-ppd

ا tuned-ppd وظیفه دارد تا API مورد استفاده توسط power-profiles-daemon (PPD) را به API سیستم TuneD ترجمه کند



نحوه عملکرد

برنامه‌هایی که با API قدرت قبلی (PPD) کار می‌کردند، اکنون از طریق tuned-ppd به TuneD متصل می‌شوند.



برای نمونه : من در لپ تاپ خودم با این ابزار میتونم . تنظیم کنم . تا چند درصد باطری را شارژ کامل کنه . تا باطری عمر بیشتری داشته باشه .

نکته : این قابلیت ها سخت افزاری هستند وباید تولید کننده لپ تاپ این قابلیت را بده .


برای مثال : لپ‌تاپت من Lenovo Ideapad هست و با درایور ideapad_laptop کار می‌کنه.

این درایور فقط یک حالت conserve mode (روشن/خاموش) داره، یعنی:

0 → خاموش، باتری تا 100٪ شارژ میشه.

1 → روشن، باتری حداکثر تا حدود ~55–60٪ شارژ میشه (محدوده دقیق وابسته به مدل و firmware هست)


--- TLP 1.7.0 --------------------------------------------



+++ Battery Care

Plugin: lenovo

Supported features: charge threshold

Driver usage:

* vendor (ideapad_laptop) = active (charge threshold)

Parameter value range:

* STOP_CHARGE_THRESH_BAT0: 0(off), 1(on) -- battery conservation mode

اما tlp :



یک ابزار تخصصی مدیریت مصرف انرژی در لینوکس است که برخلاف Tuned که بیشتر روی بهینه‌سازی کلی سیستم (CPU، I/O، Network، Memory) تمرکز دارد، بیشتر تمرکزش روی بهینه‌سازی مصرف باتری و افزایش طول عمر آن است، مخصوصاً برای لپ‌تاپ‌ها.

هدف TLP این است که:

عمر باتری لپ‌تاپ را افزایش دهد (Battery Longevity)

زمان کارکرد روی باتری را بیشتر کند (Battery Runtime)

بدون نیاز به تغییر دستی تنظیمات، بهترین تعادل بین مصرف انرژی و کارایی را پیدا کند.

ا TLP بعد از نصب و فعال‌سازی، به‌صورت خودکار با توجه به وضعیت سیستم (وصل بودن به برق یا کار روی باتری) تنظیمات بهینه را اعمال می‌کند.


تنظیم CPU frequency scaling governor

تنظیم PCI Express ASPM برای کاهش مصرف برق قطعات PCIe

خاموش‌کردن پورت‌های USB در حالت بیکار (USB autosuspend)

خاموش یا کم‌کردن توان Wi-Fi و Bluetooth در حالت باتری

تنظیم پارامترهای SATA link power management

کنترل GPU power saving (برای Intel، NVIDIA و AMD)

مدیریت Battery charge thresholds (در لپ‌تاپ‌هایی که پشتیبانی می‌کنند، مثل Lenovo/Dell/ASUS)

تغییر تنظیمات kernel power management



unixmens

#linux #kernel #tlp #tuned #performance
#tune


https://t.me/unixmens