Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Lỗi Windows

Sửa cảnh báo: "Your CPU supports instructions that this TensorFlow binary was not compiled to use AVX2"

Advanced Vector Extensions (AVX) (còn gọi Sandy Bridge New Extensions) là tập lệnh mở rộng x86 cho vi xử lý Intel/AMD. AVX cung cấp tính năng, lệnh mới, схéma mã hóa mới. TensorFlow 1.6+ dùng lệnh AVX, CPU cũ không chạy được. CPU mới cần build TensorFlow từ source.

Sửa cảnh báo:  Your CPU supports instructions that this TensorFlow binary was not compiled to use AVX2

Nguyên nhân cảnh báo này

TensorFlow phân phối mặc định không bật mở rộng CPU (AVX, AVX2, FMA...) để tương thích nhiều CPU nhất. GPU nhanh hơn CPU cho machine learning quy mô lớn. Cảnh báo chỉ thông báo CPU bạn hỗ trợ AVX nhưng bản build TensorFlow không tận dụng.

Sửa cảnh báo:  Your CPU supports instructions that this TensorFlow binary was not compiled to use AVX2

AVX làm gì?

AVX giới thiệu FMA (Fused multiply-add): phép nhân-cộng dấu chấm động trong một bước. Tăng tốc đại số, dot-product, nhân ma trận, convolution – các phép toán cốt lõi của machine learning. CPU hỗ trợ AVX/FMA nhanh hơn nhiều so với CPU cũ.

Tại sao không bật mặc định?

Để tương thích rộng rãi. Ngoài ra, mở rộng CPU chậm hơn GPU cho ML quy mô trung/lớn. CPU dùng cho ML quy mô nhỏ.

Cách khắc phục cảnh báo

Đây chỉ là cảnh báo (warning), không phải lỗi (error). Chương trình vẫn chạy bình thường.

Trường hợp 1: Bạn có GPU – Bỏ qua cảnh báo. Các tác vụ nặng sẽ chạy trên GPU. Để ẩn cảnh báo, thêm code Python:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

Trên Unix/Linux/Mac, dùng terminal:

export TF_CPP_MIN_LOG_LEVEL=2

Trường hợp 2: Chỉ có CPU, muốn tối đa hiệu năng – Build TensorFlow từ source (source code) với tùy chọn bật AVX, AVX2, FMA cho CPU của bạn. Quá trình này phức tạp, yêu cầu môi trường build (Bazel, Python, compiler...). Tham khảo tài liệu chính thức TensorFlow "Build from source".