Memuatkan 8 Terapung daripada Memori ke dalam Pembolehubah __m256
Matlamat anda adalah untuk menggantikan penimbal apungan[8] dengan pembolehubah intrinsik, __m256. Berikut ialah arahan untuk mencapainya:
Arahan AVX2:
- Gunakan VPMOVZXBD ymm0, [rsi] untuk memanjangkan bait dalam ingatan sifar menjadi 32- integer bit.
- Tukarkan integer kepada terapung dengan VCVTDQ2PS ymm0, ymm0.
Arahan AVX1:
Muat empat bait seterusnya dengan VPMOVZXBD xmm1, [rsi 4].- Masukkan beban kedua ke dalam 128 bit tinggi ymm0 dengan VINSERTF128 ymm0, ymm0, xmm1, 1.
- Tukar kepada terapung dengan VCVTDQ2PS ymm0, ymm0.
-
Petua Pengoptimuman:
Elakkan menggunakan VPMOVZXBD ymm, [mem] dengan intrinsik, kerana ia boleh menyebabkan pengoptimuman terlepas.- Untuk AVX1, gunakan _mm_loadl_epi64 untuk melipat beban ke dalam arahan VPMOVZXBD untuk kod optimum.
-
Atas ialah kandungan terperinci Bagaimana untuk Memuatkan 8 Terapung ke dalam Pembolehubah __m256 Menggunakan Intrinsik AVX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!