Tensorflow: Cara mengkompilasi tensorflow menggunakan SSE4.1, SSE4.2, dan AVX.

Dibuat pada 3 Mar 2017  ·  44Komentar  ·  Sumber: tensorflow/tensorflow

Baru saja menjalankan tensorflow. Sekarang mengalami kesalahan ini.

Saat ini menggunakan Mac Yosemite, mengunduh tensorflow menggunakan pip3 melalui anaconda, menggunakan python 3.5.

W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.

W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.

W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.

Jadi karena anaconda memiliki kumpulan perintah khusus, bagaimana Anda menjalankan tensorflow di SSE4.1, SSE4.2, dan AVX melalui sistem perintah anaconda ? Saya benar-benar bingung harus bagaimana ini.

Komentar yang paling membantu

Ini bukan kesalahan, hanya peringatan yang mengatakan jika Anda membangun TensorFlow dari sumber, itu bisa lebih cepat di mesin Anda.

JADI pertanyaan tentang ini: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Panduan TensorFlow untuk membangun dari sumber: https://www.tensorflow.org/install/install_sources

Semua 44 komentar

Ini bukan kesalahan, hanya peringatan yang mengatakan jika Anda membangun TensorFlow dari sumber, itu bisa lebih cepat di mesin Anda.

JADI pertanyaan tentang ini: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Panduan TensorFlow untuk membangun dari sumber: https://www.tensorflow.org/install/install_sources

Seperti yang dinyatakan @Carmezim, ini hanyalah pesan peringatan.
Untuk setiap program Anda, Anda hanya akan melihatnya sekali.
Dan seperti yang dikatakan peringatan, Anda hanya boleh mengkompilasi TF dengan flag-flag ini jika Anda perlu membuat TF lebih cepat.

Anda dapat mengikuti panduan kami untuk menginstal TensorFlow dari sumber untuk mengkompilasi TF dengan dukungan untuk set instruksi SIMD.

Ok terima kasih. Saya mengerti.

Apakah ada cara kita bisa membungkam ini?

Satu-satunya cara untuk membungkam pesan peringatan ini adalah dengan membangun dari sumber, menggunakan opsi --config opt .

Semacam "solusi" (walaupun tidak sempurna) yang mengalihkan pesan di Unix/Linux/OSX:
python myscript.py 2>/dev/null

@CGTheLegend @ocampesato Anda dapat menggunakan variabel lingkungan TF TF_CPP_MIN_LOG_LEVEL dan berfungsi sebagai berikut:

  • Defaultnya adalah 0 , menampilkan semua log
  • Untuk memfilter log INFO setel ke 1
  • WARNINGS tambahan, 2
  • dan untuk tambahan menyaring ERROR log set ke 3

Jadi, Anda dapat melakukan hal berikut untuk membungkam peringatan:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf

@gunan @mrry Saya telah melihat banyak orang tertarik untuk membungkam peringatan, apakah ada minat untuk menambahkan info semacam ini ke dokumen?

Saya menginstal dari panduan instal tensorflow, juga mendapat peringatan ini.

pip3 install --upgrade tensorflow

@jadeydi Alih-alih mengkompilasi dari sumber, "pip" cukup instal biner juga, sehingga Anda masih mendapatkan peringatan ini.

Saya baru saja mengkompilasi tensorflow dengan dukungan untuk SSE4.1 SSE4.2 AVX AVX2 dan FMA. Build tersedia di sini: https://github.com/lakshayg/tensorflow-build . Saya harap ini bermanfaat.

Hai @lakshayg , terima kasih telah berbagi. Anda mungkin ingin memeriksa https://github.com/yaroslavvb/tensorflow-community-wheels

Kira-kira jauh lebih cepat build dibandingkan dengan pip install tensorflow-gpu di Ubuntu? Apakah hanya lebih cepat untuk komputasi CPU, atau adakah manfaat untuk komputasi GPU?

http://www.anandtech.com/show/2362/5

Ini muncul di google dan memiliki beberapa detail teknis yang layak.

test adalah encode DivX menggunakan VirtualDub 1.7.6 dan DivX 6.7. SSE4 masuk jika Anda memilih untuk mengaktifkan algoritme pencarian lengkap baru untuk estimasi gerakan, yang dipercepat oleh dua instruksi SSE4: MPSADBW dan PHMINPOSUW . Idenya adalah bahwa estimasi gerakan (mencari tahu apa yang akan terjadi dalam bingkai video berikutnya) membutuhkan banyak perhitungan jumlah perbedaan absolut, serta menemukan nilai minimum dari hasil perhitungan tersebut. Instruksi SSE2 PSADBW dapat menghitung dua jumlah selisih dari sepasang 16B bilangan bulat tak bertanda; instruksi SSE4 MPSADBW dapat melakukan delapan.

...

Pada QX9650 kami, pencarian lengkap dengan SSE4 diaktifkan berjalan sekitar 45% lebih cepat dibandingkan dengan SSE2 saja

Sekarang yakin fungsi apa yang digunakan tensorflow, tetapi mungkin sepadan dengan usaha.

Maaf, tetapi ini adalah hal yang konyol untuk memiliki output di semua skrip TF secara default. Kebanyakan orang mungkin tidak mengkompilasi TF dari sumber atau tidak mau.

@TomAshley303 , ini adalah info yang cukup bagus untuk didapatkan! Saya tidak berencana untuk mengkompilasi ulang dari sumber. aku tidak mau. Tetapi info tersebut memberi tahu saya apa yang harus dilakukan jika model saya menjadi besar dan lambat dan akan membutuhkan peningkatan kinerja. Biasanya lebih murah untuk mengkompilasi ulang dengan ekstensi daripada membeli perangkat keras baru, mengingat memiliki penelusuran yang baik (yang memang kami miliki) meminimalkan biaya tenaga kerja kompilasi ulang (waktu CPU tidak masalah, dapat berjalan dalam semalam).

Saya menjalani prosesnya... Langsung dan tidak memakan waktu sama sekali. Bukan mimpi buruk cmake C++ Anda yang biasa.

Saya memiliki skrip bash kecil untuk mengkompilasi TF di bawah MacOS/Linux. Ini secara dinamis menghitung fitur CPU dan menempatkannya sebagai parameter build. Saya berpikir untuk membuat PR tetapi tidak menemukan folder dengan skrip (pembantu) untuk build lokal, hanya ci_build. Jika masuk akal saya akan melakukannya

inti
https://Gist.github.com/venik/9ba962c8b301b0e21f99884cbd35082f

Catatan untuk @gunan

Saya mengalami masalah ini ketika saya menginstal TensorFlow untuk pertama kalinya. Sekarang saya harus mencari cara untuk mengatasinya lagi karena saya menginstal TensorFlow di mesin baru. Ini sakit di leher, dan dokumentasi yang Anda berikan tidak jelas sama sekali.

Fakta bahwa saya harus melakukannya pada akhirnya adalah konyol dan menyebalkan. Tidak ada gunanya membuat sesuatu tersedia dari pip/pip3 jika itu hanya memberikan peringatan kepada Anda sepanjang hari.

Paling tidak, Anda harus mengedit https://www.tensorflow.org/install/install_sources dan secara eksplisit menjelaskan cara mengompilasinya dengan SSE/AVX

Solusi yang berhasil untuk saya: masukkan "-mavx -msse4.1 -msse4.2" saat diminta selama proses konfigurasi (saat Anda menjalankan ./configure).

Apakah sulit untuk menambahkan ini ke instruksi instalasi Anda?

Terima kasih, menurut jawaban @Carmezim , saya mendapatkan versi kecepatan cpu berdasarkan avx dan sse. Saya telah menguji lebih cepat-rcnn(resnet-101) di Intel. Biaya waktu mempercepat sekitar 30%, ini benar-benar berguna.

Anda dapat membungkam peringatan.
Cukup tambahkan kode-kode ini di bagian atas.
impor os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
impor tensorflow sebagai tf
Seperti yang disebutkan di sini: https://stackoverflow.com/a/44984610

anda dapat dengan mudah menambahkan variabel pengguna di Variabel Lingkungan Sistem:
TF_CPP_MIN_LOG_LEVEL, nilai = 2. Kemudian restart IDE Anda

Peningkatan @mikalyoung untuk komputasi GPU tidak dapat diharapkan, karena set instruksi tersebut hanya untuk CPU, dan memungkinkan operasi vektor.
Jadi, jika Anda membandingkan dua kode yang berjalan (idealnya) 100% pada GPU, satu pada instans Tensorflow yang dikompilasi dengan dukungan SIMD dan satu tanpa, Anda akan mendapatkan hasil yang sama dalam hal kecepatan (dan semoga secara numerik juga).

IC:\tf_jenkinshome\workspace\rel-win\M\windows\PY\36\tensorflow\core\platform\cpu_feature_guard.cc:137] CPU Anda mendukung instruksi bahwa biner TensorFlow ini tidak dikompilasi untuk digunakan: AVX AVX2

Seperti yang Anda lihat, peringatan itu juga ada pada sistem saya, tetapi dalam hal itu, saya tidak dapat memahami 'saya' di awal Peringatan sehingga seseorang dapat membantu saya dalam kasus itu

"Saya" hanya ada singkatan untuk "INFO". Huruf lain yang bisa Anda lihat adalah E untuk kesalahan, atau F untuk fatal.

Jadi saya menginstal menggunakan conda. Jika sekarang saya ingin mengkompilasi dari sumber alih-alih memanfaatkan peningkatan kecepatan apa pun, apakah saya perlu melakukan sesuatu untuk menghapus conda install of tensorflow saya? Atau apakah itu dalam wadah kecilnya sendiri dan saya dapat mengkompilasi secara terpisah dari sumber?

Saya telah menginstal DeepSpeech dan juga server DeepSpeech. Pergi untuk memulai server dan mendapat pesan kesalahan - "2018-01-17 08:21:49.120154: F tensorflow/core/platform/cpu_feature_guard.cc:35] Pustaka TensorFlow dikompilasi untuk menggunakan instruksi AVX2, tetapi ini bukan ' t tersedia di mesin Anda.
Dibatalkan (inti dibuang)"

Rupanya saya perlu mengkompilasi TensorFlow di komputer yang sama. Apakah ada daftar tempat yang cocok dengan Kubuntu 17.10.1 dan HP Probook 4330S ?

Mengapa tidak ada kompilasi windows? Saya mengalami masalah yang sama, tetapi alih-alih mematikan peringatan saya ingin menggunakan GPU saya, saya juga memiliki kartu grafis dan dan bukan Nvidia, apa yang harus saya lakukan?

*Saya tidak memiliki kartu grafis Nvidia, saya memiliki dan satu apa yang harus saya lakukan?

*Kartu grafis AMD.. koreksi otomatis

Ini bukan hanya peringatan karena mematikan proses pada kotak pengujian saya. Karena saya juga menggunakan GPU AMD, saya memutar kotak tensorflow Digital Ocean untuk mencobanya, tetapi tampaknya tidak ada dukungan GPU di sana, dan itu gagal total.

`# ID pekerjaan 0

Memuat hparams dari /home/science/tf-demo/models/nmt-chatbot/model/hparams

menyimpan hparams ke /home/science/tf-demo/models/nmt-chatbot/model/hparams
menyimpan hparams ke /home/science/tf-demo/models/nmt-chatbot/model/best_bleu/hparams
perhatian=skala_luong
perhatian_arsitektur=standar
batch_size=128
balok_lebar = 10
best_bleu=0
best_bleu_dir=/home/science/tf-demo/models/nmt-chatbot/model/best_bleu
check_special_token=Benar
colocate_gradients_with_ops=Benar
pembusukan_faktor=1.0
peluruhan_langkah=10000
dev_prefix=/home/science/tf-demo/models/nmt-chatbot/data/tst2012
putus sekolah = 0,2
encoder_type=bi
eo =
zaman_langkah=0
lupa_bias=1.0
infer_batch_size=32
init_op=seragam
init_berat = 0,1
learning_rate=0,001
learning_rate_decay_scheme=
panjang_penalti_berat=1.0
log_device_placement=Salah
max_gradient_norm=5.0
max_train=0
metrik=['bleu']
jumlah_bucket=5
num_embeddings_partitions=0
num_gpus=1
jumlah_lapisan=2
num_residual_layers=0
num_train_steps=500000
num_translations_per_input=10
jumlah_unit=512
pengoptimal = adam
out_dir=/home/science/tf-demo/models/nmt-chatbot/model
output_attention=Benar
override_loaded_hparams=Benar
pass_hidden_state=Benar
random_seed=Tidak ada
sisa=Salah
share_vocab=Salah
sos=
source_reverse=Salah
src=dari
src_max_len=50
src_max_len_infer=Tidak ada
src_vocab_file=/home/science/tf-demo/models/nmt-chatbot/data/vocab.from
src_vocab_size=15003
start_decay_step=0
langkah_per_eksternal_eval=Tidak ada
langkah_per_stats=100
subword_option=
test_prefix=/home/science/tf-demo/models/nmt-chatbot/data/tst2013
tgt=ke
tgt_max_len=50
tgt_max_len_infer=Tidak ada
tgt_vocab_file=/home/science/tf-demo/models/nmt-chatbot/data/vocab.to
tgt_vocab_size=15003
time_major=Benar
train_prefix=/home/science/tf-demo/models/nmt-chatbot/data/train
unit_type=lstm
vocab_prefix=/home/science/tf-demo/models/nmt-chatbot/data/vocab
skema_pemanasan=t2t
pemanasan_langkah=0

membuat grafik kereta api...

num_bi_layers = 1, num_bi_residual_layers=0
sel 0 LSTM, forget_bias=1 DropoutWrapper, dropout=0.2 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DropoutWrapper, dropout=0.2 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DropoutWrapper, dropout=0.2 DeviceWrapper, device=/ gpu:0
sel 1 LSTM, forget_bias=1 DropoutWrapper, dropout=0.2 DeviceWrapper, device=/ gpu:0
learning_rate=0,001, langkah_pemanasan=0, skema_pemanasan=t2t
pembusukan_skema=, mulai_peluruhan_langkah=0, pembusukan_langkah 10000, pembusukan_faktor 1

Variabel yang dapat dilatih

embeddings/encoder/embedding_ encoder:0 , (15003, 512),
embeddings/decoder/embedding_ decoder:0 , (15003, 512),
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/memory_layer/ kernel:0 , (1024, 512),
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ kernel:0 , (1536, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ kernel:0 , (1024, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/luong_attention/attention_g:0, (), / perangkat:GPU :0
dynamic_seq2seq/decoder/attention/attention_layer/ kernel:0 , (1536, 512), / device:GPU :0
dynamic_seq2seq/decoder/output_projection/ kernel:0 , (512, 15003), / perangkat:GPU :0

membuat grafik evaluasi ...

num_bi_layers = 1, num_bi_residual_layers=0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 1 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0

Variabel yang dapat dilatih

embeddings/encoder/embedding_ encoder:0 , (15003, 512),
embeddings/decoder/embedding_ decoder:0 , (15003, 512),
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/memory_layer/ kernel:0 , (1024, 512),
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ kernel:0 , (1536, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ kernel:0 , (1024, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/luong_attention/attention_g:0, (), / perangkat:GPU :0
dynamic_seq2seq/decoder/attention/attention_layer/ kernel:0 , (1536, 512), / device:GPU :0
dynamic_seq2seq/decoder/output_projection/ kernel:0 , (512, 15003), / perangkat:GPU :0

membuat grafik inferensi...

num_bi_layers = 1, num_bi_residual_layers=0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 0 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0
sel 1 LSTM, forget_bias=1 DeviceWrapper, device=/ gpu:0

Variabel yang dapat dilatih

embeddings/encoder/embedding_ encoder:0 , (15003, 512),
embeddings/decoder/embedding_ decoder:0 , (15003, 512),
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/fw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ kernel:0 , (1024, 2048), / perangkat:GPU :0
dynamic_seq2seq/encoder/bidirectional_rnn/bw/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/memory_layer/ kernel:0 , (1024, 512),
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ kernel:0 , (1536, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_0/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ kernel:0 , (1024, 2048), / device:GPU :0
dynamic_seq2seq/decoder/attention/multi_rnn_cell/cell_1/basic_lstm_cell/ bias:0 , (2048,), / device:GPU :0
dynamic_seq2seq/decoder/attention/luong_attention/attention_g:0, (), / perangkat:GPU :0
dynamic_seq2seq/decoder/attention/attention_layer/ kernel:0 , (1536, 512), / device:GPU :0
dynamic_seq2seq/decoder/output_projection/ kernel:0 , (512, 15003),

log_file=/home/science/tf-demo/models/nmt-chatbot/model/log_1519669184

26-02-2018 18:19:44.862736: I tensorflow/core/platform/cpu_feature_guard.cc:137] CPU Anda mendukung instruksi bahwa biner TensorFlow ini tidak dikompilasi untuk digunakan: SSE4.1 SSE4.2 AVX AVX2 FMA
Terbunuh`

perintah apa yang perlu dijalankan dan di mana menjalankan perintah ini dan bagaimana caranya tolong beri tahu. Saya sangat membutuhkan bantuan.

Tetapi apakah itu berarti sistem tidak menggunakan GPU untuk prosesnya?

Nah, Anda perlu menyelesaikan ini jika Anda sedang membangun tensorflow di lingkungan akselerasi seperti menggunakan k-fold di KerasClassifier.
Untuk mengatasi ini, Anda perlu membangun tensorflow dari sumber seperti yang direkomendasikan semua orang.
Untuk membangun tensorflow dari sumber, Anda harus memiliki alat berikut:

  1. Instal git di mesin Anda jika Anda belum turun - di mesin ubuntu cukup ketik "Sudo apt-get install git
  2. Anda perlu memasang bazel. Sangat disarankan untuk menggunakan repositori APT khusus. Ikuti instruksi pada tautan ini untuk menginstal bazel https://docs.bazel.build/versions/master/install-ubuntu.html.
  3. Anda perlu dependensi python berikut ... menggunakan perintah di bawah ini
    numpy, dev, dan wheel
    sudo apt-get install python-numpy python-dev python-pip python-wheel
    4. Setelah Anda menginstal semua dependensi, klon github tensorflow ke drive lokal Anda
    git clone https://github.com/tensorflow/tensorflow
  4. Pergi ke lokasi untuk mengkloning tensorflow dan cd ke file tensorflow dan menjalankan file konfigurasi
    cd tensor
    ./konfigurasi

Cukup ikuti instruksi di layar untuk menyelesaikan instalasi tensorflow.
Saya akan sangat merekomendasikan untuk memperbarui mesin Anda setelah tensorflow diinstal
sudo apt-get update

Selamat mencoba dan menikmati...

Hanya menimpali di utas ini bahwa Anda seharusnya tidak hanya membungkam peringatan ini - Saya mendapatkan waktu pelatihan sekitar 43% lebih cepat dengan membangun dari sumber, saya pikir itu sepadan dengan usaha.

  • Instruksi Tensorflow tentang membangun dari sumber cukup jelas ...
  • ... tetapi mereka tidak benar-benar menjelaskan cara mengaktifkan SSE/AVX/FMA dll - jadi gunakan utas ini untuk mendapatkan ide tentang cara mengatur flag build Bazel Anda

cara install tensorflow menggunakan file ini "tensorflow-1.6.0-cp36-cp36m-win_amd64.whl"

@anozele pip3 install --upgrade *path to wheel file*

@gunan --config=opt tidak cukup, Anda juga harus menambahkan, misalnya --copt="-msse4.2", saat Anda membangun TensorFlow dari sumber.

Menurut Intel, https://software.intel.com/en-us/articles/intel-optimization-for-tensorflow-installation-guide , Jika Anda menggunakan Tensorflow yang dibuat oleh intel, Anda dapat mengabaikan peringatan itu karena semua set instruksi yang tersedia akan digunakan oleh backend MKL. Adakah yang bisa dari Tensorflow mengkonfirmasi ini?

Ini bukan kesalahan, hanya peringatan yang mengatakan jika Anda membangun TensorFlow dari sumber, itu bisa lebih cepat di mesin Anda.

JADI pertanyaan tentang ini: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Panduan TensorFlow untuk membangun dari sumber: https://www.tensorflow.org/install/install_sources

Namun, itu tidak lebih cepat daripada saya tidak menggunakan -FMA -AVX -SSE https://stackoverflow.com/questions/57197854/fma-avx-sse-flags-did-not-bring-me-good-performance

Hai. Maaf jika saya memukul kuda mati. Hanya ingin tahu mengapa roda pip default bukan binari yang dikompilasi dengan instruksi sebelumnya?

Hai. Maaf jika saya memukul kuda mati. Hanya ingin tahu mengapa roda pip default bukan binari yang dikompilasi dengan instruksi sebelumnya?

Ini karena arsitektur cpu lama tidak mendukung set instruksi lanjutan. Lihat wiki untuk daftar rinci cpus yang mendukung AVX, AVX2 atau AVX512. Jika biner pip default dikompilasi dengan set instruksi ini, maka tensorflow tidak dapat bekerja pada CPU lama.

Tetapi apakah itu berarti sistem tidak menggunakan GPU untuk prosesnya?

Tidak, Ini menunjukkan bahkan jika Anda menggunakan GPU, jika Anda belum membungkam pesan, Anda juga akan melihat Tensorflor memuat perangkat GPU Anda di command prompt.

Jika Anda memeriksa dengan repo ini:
Silakan periksa kode di bawah ini:

https://github.com/fo40225/tensorflow-windows-wheel

Dia telah mengkompilasi hampir semua versi TF dengan SSE dan AVX
Dia telah mengkompilasi hampir semua versi TF!

Artikel ini adalah tutorial yang bagus tentang cara membangun dari sumber termasuk bendera
https://medium.com/@pierreontech/setup -a-high-performance-conda-tensorflow-environment-976995158cb1

coba paksa penyertaan ekstensi yang sesuai menggunakan opsi bazel tambahan seperti --copt=-mavx --copt=-msse4.1 --copt=-msse4.2

Apakah halaman ini membantu?
0 / 5 - 0 peringkat