Fix: CPU Anda Mendukung Petunjuk bahwa TensorFlow Binary ini tidak dikompilasi untuk menggunakan AVX2



Coba Instrumen Kami Untuk Menghilangkan Masalah

Ekstensi Vektor Tingkat Lanjut ( AVX , juga dikenal sebagai Ekstensi Baru Sandy Bridge ) adalah ekstensi untuk arsitektur set instruksi x86 untuk mikroprosesor dari Intel dan AMD yang diusulkan oleh Intel pada Maret 2008 dan pertama kali didukung oleh Intel dengan pengiriman prosesor Sandy Bridge pada Q1 2011 dan kemudian oleh AMD dengan pengiriman prosesor Bulldozer pada Q3 2011. AVX menyediakan fitur baru, instruksi baru, dan skema pengkodean baru.



Peringatan ditampilkan dalam cmd



Pesan peringatan ini dicetak oleh pustaka bersama TensorFlow. Seperti yang ditunjukkan pesan tersebut, pustaka bersama tidak menyertakan jenis petunjuk yang dapat digunakan CPU Anda.



Apa Penyebab Peringatan Ini?

Setelah TensorFlow 1.6, biner sekarang menggunakan instruksi AVX yang mungkin tidak lagi berjalan di CPU lama. Jadi CPU yang lebih lama tidak akan dapat menjalankan AVX, sedangkan untuk yang lebih baru, pengguna perlu membangun tensorflow dari sumber untuk CPU mereka. Di bawah ini adalah semua informasi yang perlu Anda ketahui tentang peringatan khusus ini. Juga, metode tentang menghilangkan peringatan ini untuk penggunaan di masa mendatang.

Apa yang dilakukan AVX?

Secara khusus, AVX memperkenalkan FMA (Fused multiply-add); yang merupakan operasi tambah-perkalian floating-point, dan semua operasi ini dilakukan dalam satu langkah. Ini membantu mempercepat banyak operasi tanpa masalah. Itu membuat komputasi aljabar lebih cepat dan mudah digunakan, juga hasil kali-titik, perkalian matriks, konvolusi, dll. Dan ini semua adalah operasi yang paling banyak digunakan dan dasar untuk setiap pelatihan pembelajaran mesin. CPU yang mendukung AVX dan FMA akan jauh lebih cepat daripada yang sebelumnya. Tetapi peringatan tersebut menyatakan bahwa CPU Anda mendukung AVX, jadi itu poin yang bagus.

Teknologi Intel AVX



Mengapa tidak digunakan secara default?

Itu karena distribusi default TensorFlow dibuat tanpa ekstensi CPU. Menurut ekstensi CPU, ia menyatakan AVX, AVX2, FMA, dll. Instruksi yang memicu masalah ini tidak diaktifkan secara default pada build default yang tersedia. Alasan mereka tidak diaktifkan adalah untuk membuatnya lebih kompatibel dengan CPU sebanyak mungkin. Juga untuk membandingkan ekstensi ini, mereka jauh lebih lambat di CPU daripada GPU. CPU digunakan pada pembelajaran mesin skala kecil sementara penggunaan GPU diharapkan ketika digunakan untuk pelatihan pembelajaran mesin skala menengah atau besar.

Memperbaiki Peringatan!

Peringatan ini hanyalah pesan sederhana. Tujuan peringatan ini adalah untuk memberi tahu Anda tentang TensorFlow yang dibuat dari sumber. Saat Anda membuat TensorFlow dari sumbernya, ini bisa lebih cepat di mesin. Jadi semua peringatan ini memberi tahu Anda tentang build TensorFlow dari sumber.

Jika Anda memiliki GPU di mesin Anda, maka Anda dapat mengabaikan peringatan ini dari dukungan AVX. Karena yang paling mahal akan dikirim ke perangkat GPU. Dan jika Anda tidak ingin melihat kesalahan ini lagi, Anda dapat mengabaikannya dengan menambahkan ini:

impor Modul OS dalam kode program utama Anda dan juga mengatur objek pemetaan untuk itu

 # Untuk menonaktifkan peringatan   impor mereka   os.environ ['TF_CPP_MIN_LOG_LEVEL'] = '2' 

Tetapi jika Anda menggunakan file Unix , lalu gunakan perintah ekspor di bash shell

 ekspor TF_CPP_MIN_LOG_LEVEL = 2 

Namun jika tidak memiliki GPU, dan Anda ingin menggunakan CPU Anda sebanyak mungkin, Anda harus membuat TensorFlow dari sumber yang dioptimalkan untuk CPU Anda dengan AVX, AVX2, dan FMA diaktifkan sini .

2 menit baca