
بهروزرسانیهای ابزارهای زیرسیستم perf در لینوکس ۷.۴ به مخزن Git این پروژه اضافه شد. مهمترین بخش این تغییرات، بازنگری گسترده در کدهای پایتون (Python) است که ابزارهای پایش و تحلیل عملکرد سیستم را کارآمدتر میکند.
انتقال اسکریپتها به ماژول perf
در لینوکس ۷.۴، همه اسکریپتهای مبتنی بر پایتون ابزار perf برای استفاده از ماژول پایتون perf و پشتیبانی از اجرای مستقل (Standalone Execution) سازگار شدهاند. این ماژول همچنین با قابلیتهایی مانند زنجیرههای نمونهبرداری تأخیری (Lazy Sample Callchains)، کپی رویدادها (Event Copies)، مدیریت بهتر قفل مفسر جهانی (GIL Handling)، جستوجوی بهبودیافته نشست و رشته (Session/Thread Lookup) و خروجیگیرهای تازهای مانند treport، flamegraph و sqlite/postgres ارتقا یافته است.
پیشتر نیز گزارش شده بود که تبدیل اسکریپت perf به استفاده از ماژول، سرعت اجرای آن را بهطور محسوسی افزایش میدهد. ایان راجرز (Ian Rogers) از گوگل یک ماژول مناسب perf را بهصورت افزونه C برای پایتون (Python C Extension) توسعه داده است که در مقایسه با کد پیشین عملکرد بسیار سریعتری ارائه میکند.
پشتیبانی ARM64 و پروفایل نوع داده
بهروزرسانیهای ابزار perf در لینوکس ۷.۴ همچنین ردیابی دستورالعملها (Instruction Tracking) روی معماری ARM64 را برای پروفایل نوع داده (Data Type Profiling) فراهم میکند. این قابلیت دسترسی به متغیرهای پشته (Stack)، سراسری (Global)، مربوط به هر پردازنده (Per-CPU) و متغیر «current» را حلوفصل میکند و باعث میشود دستور perf annotate --data-type روی ARM64 رفتاری مشابه لینوکس روی x86/x86_64 داشته باشد.
سایر اصلاحات
در کنار این تغییرات، مجموعهای از اصلاحات و بهبودهای جزئی دیگر نیز برای ابزارهای perf ارائه شده است که جزئیات آن در درخواست ادغام (Pull Request) این زیرسیستم آمده است.