Beberapa prosesor Intel terbaru mendukung rangkaian vektor AVX-512 . Mereka dieksekusi dalam blok 512 bit (64 bytes). Keuntungan dari dukungan perangkat keras untuk instruksi sebesar itu adalah prosesor memproses lebih banyak data dalam satu siklus clock tunggal.Jika kode dimuat dengan kata-kata 64-bit (8 byte), maka secara teoritis, jika Anda tidak memperhitungkan faktor-faktor lain, Anda dapat mempercepat pelaksanaannya sebanyak delapan kali jika Anda menggunakan instruksi AVX-512.Ekstensi AVX-512 untuk sistem perintah x86 mendukung 8 mask register, format 512-bit untuk bilangan bulat dan pecahan serta operasi dengan itu, mode pembulatan fine-tuning (memungkinkan Anda untuk menimpa pengaturan global), operasi siaran, penindasan kesalahan dalam operasi dengan angka fraksional, operasi pengumpulan / pencar, operasi matematika cepat, pengkodean kompak dari offset besar.Set awal AVX-512 mencakup delapan kelompok instruksi:- Petunjuk Deteksi Konflik AVX-512 (CDI)
- AVX-512 Instruksi Eksponensial dan Timbal Balik (ERI)
- Petunjuk Prefetch AVX-512 (PFI)
- AVX-512 Vector Length Extensions (VL)
- AVX-512 Byte dan Word Instructions (BW)
- Petunjuk Doubleword dan Quadword AVX-512 (DQ)
- AVX-512 Integer Fused Multiply Add (IFMA)
- Petunjuk manipulasi vektor Byte AVX-512 (VBMI)
Keluarga AVX-512 didukung dalam prosesor Intel Landing Xeon Phi (sebelumnya Intel MIC), beberapa prosesor Skylake Xeon (SKX), serta prosesor Cannonlake masa depan yang akan tersedia pada tahun 2017. Prosesor yang tercantum tidak mendukung semua instruksi. Misalnya, Knights Landing Xeon Phi hanya mendukung CD, ER, dan PF. Prosesor Skylake Xeon (SKX) mendukung CD, VL, BW, dan DQ. Prosesor Cannonlake - CD, VL, BW, DQ, IFMA.Secara alami, tidak setiap kode dapat dikonversi menjadi instruksi vektor, tetapi Anda tidak perlu melakukan ini dengan semua kode, tulisdi blognya Daniel Lemire, profesor ilmu komputer di Universitas Quebec. Menurutnya, penting untuk mengoptimalkan "kode panas", yang menghabiskan sebagian besar sumber daya prosesor. Dalam banyak sistem, "kode panas" dibangun dari serangkaian loop yang menggulir milyaran kali. Itu saja yang harus dioptimalkan, ini adalah manfaat utama.Misalnya, jika kode Python tersebut dikompilasi ulang dari instruksi standar 64-bit ke AVX-512 menggunakan MKL Numpy , maka waktu eksekusi dikurangi dari 6-7 detik menjadi 1 detik pada prosesor yang sama.import numpy as np
np.random.seed(1234)
xx = np.random.rand(1000000).reshape(1000, 1000)
%timeit np.linalg.eig(xx)
Dukungan Perangkat Keras Pembelajaran Jauh
Jaringan saraf dan pembelajaran mendalam adalah salah satu tren paling cerah di zaman sekarang. Google, Facebook dan perusahaan besar lainnya mencoba menggunakan jaringan saraf sedapat mungkin: dalam sistem rekomendasi, pengenalan wajah, terjemahan teks, pengenalan suara, klasifikasi foto dan bahkan dalam permainan papan seperti go (tapi ini lebih untuk publisitas daripada untuk keuntungan komersial). Beberapa mencoba menerapkan pelatihan mendalam di bidang non-standar, seperti pelatihan pilot otomatis .Ada pemahaman di antara investor ventura bahwa cara paling efektif untuk menjadi kaya dengan cepat adalah meluncurkan startup di bidang pembelajaran yang mendalam, yang akan segera dibeli perusahaan dari Lima Besar (Facebook, Google, Apple, Microsoft, Amazon). Perusahaan-perusahaan ini baru-baru ini sangat bersaing dalam bidang pembelian bakat, sehingga startup akan segera pergi dan dengan harga yang bagus dengan nilai minimal $ 10 juta per karyawan. Rencana bisnis seperti itu kini menjadi lebih sederhana, ketika perusahaan merilis alat pengembangan sumber terbuka, seperti yang dilakukan Google dengan TensorFlow .Sayangnya untuk Intel, perusahaan ini tertinggal dan hampir tidak berpartisipasi dalam permainan. Profesor Lemir mengakui bahwa Nvidia GPU sekarang dianggap sebagai standar industri. Mereka menjalankan kode program untuk pembelajaran mesin.Bukannya para insinyur Intel melampaui tren. Hanya saja GPU itu sendiri, tanpa instruksi khusus, lebih cocok untuk perhitungan pembelajaran yang mendalam.Namun demikian, Intel sedang mempersiapkan serangan balik, sehingga situasinya bisa terbalik. Pada bulan September, perusahaan menerbitkan Referensi Pemrograman Set Ekstensi Intel Arsitektur yang barumenunjukkan semua instruksi yang akan didukung di prosesor mendatang. Jika Anda melihat dokumen ini, kami sedang menunggu kejutan yang menyenangkan. Ternyata keluarga AVX-512 instruksi dibagi menjadi beberapa kelompok dan diperluas.Secara khusus, dua kelompok instruksi dirancang khusus untuk pelatihan mendalam: AVX512_4VNNIW dan AVX512_4FMAPS. Dilihat dari deskripsi, instruksi ini dapat bermanfaat tidak hanya dalam pembelajaran mendalam, tetapi juga dalam banyak tugas lainnya.- AVX512_4VNNIW: Instruksi vektor untuk pembelajaran mendalam meningkatkan ketepatan variabel kata
- AVX512_4FMAPS: Instruksi vektor untuk pembelajaran dalam presisi tunggal floating-point
Ini kabar baik.Ketika dukungan tersebut muncul pada prosesor Intel standar, mereka dapat lebih dekat atau bahkan mengungguli kinerja grafis pembelajaran Nvidia yang mendalam. Tentu saja, tunduk pada program optimasi yang sesuai. Siapa tahu, cerita yang sama tiba-tiba akan terulang seperti dengan encoding video, ketika, setelah menambahkan dukungan perangkat keras H.264 dan H.265 ke CPU, prosesor Intel dengan grafik terintegrasi mulai menyandikan dan mendekode video lebih cepat daripada kartu video Nvidia dan AMD yang terpisah.