Awal minggu ini para insinyur kompiler Intel memposting patch yang mengaktifkan dukungan Intel APX NDD untuk kompiler GCC sebagai fitur “Tujuan Data Baru” dari Ekstensi Kinerja Lanjutan. Para insinyur tersebut mengakhiri minggu mereka dengan memposting patch untuk mengaktifkan APX PPX untuk GCC, Akselerasi Push-Pop baru dari tambahan ISA yang akan datang ini.
Hongyu Wang dari tim kompiler sumber terbuka Intel menjelaskan tentang fitur APX PPX:
PPX adalah singkatan dari Akselerasi Push-Pop. PUSH/PUSH2 dan POP terkaitnya dapat ditandai dengan petunjuk 1-bit untuk menunjukkan bahwa POP membaca nilai yang ditulis oleh PUSH dari tumpukan. Prosesor melacak instruksi yang ditandai ini secara internal dan mempercepat data register antara instruksi PUSH dan POP yang cocok, tanpa melalui memori atau melalui loop pelatihan Fast Store Forwarding Predictor (FSFP). Fitur ini juga dapat diadopsi ke PUSH2/POP2.
Untuk GCC, kami menggunakan akhiran eksplisit `p` (berpasangan) untuk menunjukkan pasangan push/pop ditandai dengan petunjuk PPX. Untuk memisahkan bentuk push/pop asli, kami menggunakan UNSPEC untuk membatasi pola terkait PPX. Jadi untuk pushp/popp, cfinya disesuaikan secara manual dengan insns UNSPEC PPX.
Dalam implementasi pertama kami hanya memancarkannya di bawah prolog/epilog ketika menyimpan/memulihkan register yang disimpan callee untuk memastikan push/pop dipasangkan. Jadi tanda tambahan ditambahkan untuk memeriksa apakah PPX insns dapat dikeluarkan untuk antarmuka penyimpanan/pemulihan register tersebut.
Petunjuk PPX murni merupakan petunjuk kinerja. Jika akhiran `p` tidak dikeluarkan untuk pasangan push/pop, optimalisasi PPX akan dinonaktifkan, sedangkan program sematic tidak akan terpengaruh sama sekali. Patch ini mendapatkan Akselerasi Push-Pop yang semuanya dihubungkan sebagai bagian terbaru dari APX teka-teki untuk Koleksi Kompiler GNU. Seperti disebutkan meskipun pengembangan fitur GCC 14 akan segera berakhir, belum jelas dukungan Intel APX akan selesai tepat waktu untuk GCC 14 dan oleh karena itu mungkin baru GCC 15 pada awal tahun 2025 sebelum semua fungsi Ekstensi Kinerja Lanjutan akan selesai. diimplementasikan dan diluncurkan ke rilis GCC yang stabil.
Itulah berita seputar Intel Mempersiapkan Dukungan APX PPX Untuk GCC: Akselerasi Push-Pop, semoga bermanfaat. Disadur dari Phoronix.com.