Korjaus: Suorittimesi tukee ohjeita, joiden mukaan tätä TensorFlow-binaaria ei ole koottu käyttämään AVX2: ta

Advanced Vector Extensions ( AVX, tunnetaan myös nimellä Sandy Bridge New Extensions ) ovat laajennuksia Intelin ja AMD: n mikroprosessorien x86-käskyjoukkoarkkitehtuuriin, jonka Intel ehdotti maaliskuussa 2008 ja jota Intel tukee ensin Sandy Bridge -prosessorilla, joka toimitettiin vuoden 2011 ensimmäisellä neljänneksellä ja myöhemmin. AMD: n päälle Bulldozer-prosessorilla, joka toimitetaan vuoden 2011 kolmannella neljänneksellä. AVX tarjoaa uusia ominaisuuksia, uusia ohjeita ja uuden koodausjärjestelmän.

Varoitus näkyy cmd: nä

TensorFlow-jaettu kirjasto tulostaa tämän varoitusviestin. Kuten viesti osoittaa, jaettu kirjasto ei sisällä sellaisia ​​ohjeita, joita prosessorisi voisi käyttää.

Mikä aiheuttaa tämän varoituksen?

TensorFlow 1.6: n jälkeen binäärit käyttävät nyt AVX-ohjeita, joita ei ehkä enää käytetä vanhemmissa suorittimissa. Joten vanhemmat CPU: t eivät pysty ajamaan AVX: tä, kun taas uudempien käyttäjien on rakennettava tensorflow lähteestä CPU: hon. Alla on kaikki tiedot, jotka sinun on tiedettävä tästä varoituksesta. Lisäksi menetelmä, jolla päästä eroon tästä varoituksesta tulevaa käyttöä varten.

Mitä AVX tekee?

Erityisesti AVX esitteli FMA: n (Fused multiply-add); joka on liukulukujen kertolasku-operaatio, ja tämä kaikki toimenpide suoritetaan yhdessä vaiheessa. Tämä auttaa nopeuttamaan monia toimintoja ilman mitään ongelmia. Se tekee algebran laskennasta nopeamman ja helppokäyttöisemmän, myös pistetuotteen, matriisin kertolaskun, konvoluution jne. Ja nämä ovat kaikki eniten käytettyjä ja perustoimintoja jokaisessa koneoppimiskoulutuksessa. AVX: tä ja FMA: ta tukevat CPU: t ovat paljon nopeampia kuin vanhemmat. Mutta varoituksessa todetaan, että prosessorisi tukee AVX: tä, joten se on hyvä kohta.

Intel AVX -teknologia

Miksi sitä ei käytetä oletuksena?

Tämä johtuu siitä, että TensorFlow-oletusjakelu on rakennettu ilman CPU-laajennuksia. CPU-laajennuksilla se ilmoittaa AVX, AVX2, FMA jne. Tämän ongelman laukaisevat ohjeet eivät ole oletuksena käytössä käytettävissä olevissa oletuskokoonpanoissa. Syitä, miksi niitä ei ole otettu käyttöön, on tehdä tästä yhteensopivampi mahdollisimman monien prosessorien kanssa. Myös näiden laajennusten vertaamiseksi ne ovat CPU: n sijaan paljon hitaampia kuin GPU. CPU: ta käytetään pienimuotoisessa koneoppimisessa, kun taas GPU: n käyttöä odotetaan käytettäessä, kun sitä käytetään keskisuuriin tai suuriin koneoppimiskoulutuksiin.

Varoituksen korjaaminen!

Nämä varoitukset ovat vain yksinkertaisia ​​viestejä. Näiden varoitusten tarkoituksena on kertoa sinulle rakennetusta TensorFlow-lähteestä. Kun rakennat TensorFlow-lähteen, se voi olla nopeampi koneessa. Joten kaikista näistä varoituksista kerrotaan TensorFlowin rakentamisesta lähteestä.

Jos koneessasi on GPU, voit ohittaa nämä AVX-tuen varoitukset. Koska kalleimmat lähetetään GPU-laitteella. Ja jos et halua enää nähdä tätä virhettä, voit vain jättää sen huomiotta lisäämällä tämän:

Tuo OS-moduuli pääohjelmasi koodiin ja aseta myös sen kartoitusobjekti

 # Varoituksen tuonnin poistamiseksi käytöstä os osen ympäristö ['TF_CPP_MIN_LOG_LEVEL'] = '2' 

Mutta jos olet Unix-järjestelmässä, käytä sitten vientikomentoa bash-kuoressa

 vie TF_CPP_MIN_LOG_LEVEL = 2 

Mutta jos sinulla ei ole GPU: ta ja haluat käyttää prosessoriasi mahdollisimman paljon, sinun tulee rakentaa TensorFlow prosessorillesi optimoidusta lähteestä AVX-, AVX2- ja FMA-ominaisuuksien avulla.

Mielenkiintoisia Artikkeleita