Oprava: Váš procesor podporuje pokyny, že tento TensorFlow Binary nebyl kompilován pro použití AVX2

Advanced Vector Extensions ( AVX, také známý jako Sandy Bridge New Extensions ) jsou rozšíření architektury instrukčních sad x86 pro mikroprocesory od společnosti Intel a AMD navržené společností Intel v březnu 2008 a poprvé podporované společností Intel s procesorem Sandy Bridge v Q1 2011 a později od AMD s dodávkou procesoru Bulldozer ve 3. čtvrtletí 2011. AVX poskytuje nové funkce, nové pokyny a nové schéma kódování.

Varování je zobrazeno v cmd

Tuto výstražnou zprávu vytiskne sdílená knihovna TensorFlow. Jak zpráva naznačuje, sdílená knihovna neobsahuje ty instrukce, které by váš procesor mohl použít.

Co způsobuje toto varování?

Po TensorFlow 1.6 nyní binární soubory používají instrukce AVX, které již nemusí běžet na starších procesorech. Starší procesory tedy nebudou moci spouštět AVX, zatímco u novějších musí uživatel postavit tensorflow ze zdroje pro svůj procesor. Níže jsou uvedeny všechny informace, které potřebujete vědět o tomto konkrétním varování. Také způsob, jak se zbavit tohoto varování pro budoucí použití.

Co dělá AVX?

Konkrétně AVX představil FMA (Fused Multiply-Add); což je operace s vícenásobným přidáním s pohyblivou řádovou čárkou, a to vše se provádí v jednom kroku. Pomáhá to urychlit mnoho operací bez problémů. Díky tomu je výpočet algebry rychlejší a snadnější, a to i tečkový produkt, násobení matic, konvoluce atd. A to jsou nejpoužívanější a základní operace pro každý strojový výcvik. CPU, které podporují AVX a FMA, budou mnohem rychlejší než ty starší. Varování však uvádí, že váš procesor podporuje AVX, takže je to dobré.

Technologie Intel AVX

Proč se ve výchozím nastavení nepoužívá?

Důvodem je, že výchozí distribuce TensorFlow je vytvořena bez rozšíření CPU. Podle rozšíření CPU uvádí AVX, AVX2, FMA atd. Pokyny, které tento problém spouštějí, nejsou ve výchozím nastavení dostupné. Důvody, proč nejsou povoleny, jsou proto, aby byla kompatibilnější s co největším počtem CPU. Také pro porovnání těchto rozšíření jsou mnohem pomalejší v CPU než v GPU. Procesor CPU se používá v malém strojovém učení, zatímco použití GPU se očekává, když se používá pro strojové učení ve středním nebo velkém měřítku.

Oprava varování!

Tato varování jsou pouze jednoduchými zprávami. Účelem těchto varování je informovat vás o zabudovaném TensorFlow ze zdroje. Když sestavíte TensorFlow ze zdroje, může být na počítači rychlejší. Takže všechna tato varování vám říkají, je vybudovat TensorFlow ze zdroje.

Pokud máte v počítači grafický procesor, můžete tato varování ignorovat z podpory AVX. Protože nejdražší budou odeslány na zařízení GPU. A pokud už tuto chybu nechcete vidět, můžete ji jednoduše ignorovat přidáním tohoto:

importujte modul OS do svého hlavního programového kódu a také pro něj nastavte mapovací objekt

 # Pro deaktivaci importu varování os os.environ ['TF_CPP_MIN_LOG_LEVEL'] = '2' 

Pokud ale používáte Unix, použijte příkaz export v bash shellu

 export TF_CPP_MIN_LOG_LEVEL = 2 

Ale pokud nemáte GPU a chcete svůj procesor využívat co nejvíce, měli byste sestavit TensorFlow ze zdroje optimalizovaného pro váš procesor s povolenými AVX, AVX2 a FMA.

Zajímavé Články