Διορθώστε: Η CPU υποστηρίζει οδηγίες ότι αυτό το δυαδικό αρχείο TensorFlow δεν συντάχθηκε για να χρησιμοποιήσει το AVX2

Οι πρόσθετες επεκτάσεις διάνυσμα ( AVX ) είναι επεκτάσεις της αρχιτεκτονικής συνόλων εντολών x86 για μικροεπεξεργαστές από Intel και AMD που προτάθηκαν από την Intel τον Μάρτιο του 2008 και υποστηρίζονται πρώτα από την Intel με τη ναυτιλία επεξεργαστή Sandy Bridge το Q1 2011 και αργότερα από την AMD με τη ναυτιλία επεξεργαστή Bulldozer το τρίτο τρίμηνο του 2011. Το AVX παρέχει νέα χαρακτηριστικά, νέες οδηγίες και ένα νέο σχήμα κωδικοποίησης.

Η προειδοποίηση εμφανίζεται σε cmd

Αυτό το προειδοποιητικό μήνυμα εκτυπώνεται από την κοινόχρηστη βιβλιοθήκη του TensorFlow. Όπως υποδεικνύει το μήνυμα, η κοινόχρηστη βιβλιοθήκη δεν περιλαμβάνει το είδος των οδηγιών που θα μπορούσε να χρησιμοποιήσει η CPU σας.

Τι προκαλεί αυτή την προειδοποίηση;

Μετά από το TensorFlow 1.6, τα δυαδικά αρχεία χρησιμοποιούν πλέον οδηγίες AVX που ενδέχεται να μην εκτελούνται πλέον σε παλιότερες CPU. Επομένως, οι παλαιότεροι επεξεργαστές δεν θα μπορούν να εκτελέσουν το AVX, ενώ για τους νεότερους, ο χρήστης πρέπει να κατασκευάσει το tensorflow από την πηγή για τον επεξεργαστή τους. Παρακάτω είναι όλες οι πληροφορίες που πρέπει να ξέρετε για αυτήν την συγκεκριμένη προειδοποίηση. Επίσης, μια μέθοδος για την εξάλειψη αυτής της προειδοποίησης για μελλοντική χρήση.

Τι κάνει το AVX;

Συγκεκριμένα, η AVX εισήγαγε το FMA (Fused multi-add). η οποία είναι η λειτουργία πολλαπλασιασμού με κινητό σημείο και αυτή η λειτουργία γίνεται σε ένα μόνο βήμα. Αυτό βοηθά στην επιτάχυνση πολλών λειτουργιών χωρίς κανένα πρόβλημα. Κάνει τον υπολογισμό της άλγεβρας πιο γρήγορο και εύκολο στη χρήση, καθώς και το dot-product, πολλαπλασιασμό μήτρας, συνέλιξη κλπ. Και αυτές είναι όλες οι πιο χρησιμοποιημένες και βασικές λειτουργίες για κάθε εκπαίδευση μηχανικής μάθησης. Οι CPU που υποστηρίζουν τα AVX και FMA θα είναι πολύ πιο γρήγορα από τα παλαιότερα. Αλλά η προειδοποίηση δηλώνει ότι η CPU σας υποστηρίζει AVX, γι 'αυτό είναι ένα καλό σημείο.

Τεχνολογία Intel AVX

Γιατί δεν χρησιμοποιείται από προεπιλογή;

Αυτό οφείλεται στο γεγονός ότι η προεπιλεγμένη κατανομή TensorFlow είναι κατασκευασμένη χωρίς τις επεκτάσεις της CPU. Με τις επεκτάσεις της CPU δηλώνει τα αρχεία AVX, AVX2, FMA κ.λπ. Οι οδηγίες που ενεργοποιούν αυτό το ζήτημα δεν ενεργοποιούνται από προεπιλογή στις διαθέσιμες προεπιλεγμένες δομές. Οι λόγοι για τους οποίους δεν είναι ενεργοποιημένοι είναι να γίνει αυτό πιο συμβατό με όσο το δυνατόν περισσότερους επεξεργαστές. Επίσης, για να συγκρίνουμε αυτές τις επεκτάσεις, είναι πολύ πιο αργές στην CPU παρά στη GPU. Η CPU χρησιμοποιείται στη μηχανική μάθηση μικρής κλίμακας ενώ η χρήση της GPU αναμένεται όταν χρησιμοποιείται για μια μεσαία ή μεγάλης κλίμακας εκμάθηση μηχανικής μάθησης.

Καθορισμός της προειδοποίησης!

Αυτές οι προειδοποιήσεις είναι απλά μηνύματα. Σκοπός αυτών των προειδοποιήσεων είναι να σας ενημερώσουμε για το ενσωματωμένο TensorFlow από την πηγή. Όταν δημιουργείτε το TensorFlow από την πηγή, μπορεί να γίνει πιο γρήγορα στο μηχάνημα. Έτσι, όλες αυτές οι προειδοποιήσεις σας λένε είναι η δημιουργία TensorFlow από την πηγή.

Εάν διαθέτετε GPU στο μηχάνημά σας, τότε μπορείτε να αγνοήσετε αυτές τις προειδοποιήσεις από την υποστήριξη AVX. Επειδή οι πιο ακριβές θα αποστέλλονται σε μια συσκευή GPU. Και αν δεν θέλετε πλέον να βλέπετε αυτό το σφάλμα, μπορείτε απλά να το αγνοήσετε προσθέτοντας το εξής:

εισαγάγετε την λειτουργική μονάδα OS στον κύριο κώδικα προγράμματος και επίσης ορίσετε το αντικείμενο χαρτογράφησης για αυτό

 # Για την απενεργοποίηση της ειδοποίησης εισαγωγής OS os.environ ['TF_CPP_MIN_LOG_LEVEL'] = '2' 

Αν όμως βρίσκεστε σε ένα Unix, χρησιμοποιήστε την εντολή εξαγωγής στο κέλυφος bash

 εξαγωγή TF_CPP_MIN_LOG_LEVEL = 2 

Αλλά αν δεν έχετε GPU και θέλετε να χρησιμοποιήσετε όσο το δυνατόν περισσότερο την CPU σας, θα πρέπει να δημιουργήσετε TensorFlow από την πηγή που βελτιστοποιήθηκε για την CPU σας με AVX, AVX2 και FMA ενεργοποιημένη εδώ.

Ενδιαφέροντα Άρθρα