Options permettant de résoudre l’erreur « Instruction illégale » lors de l’exécution du kit d’outils d’optimisation post-apprentissage (POT) OpenVINO™ sur Intel Atom® plate-forme
Impossible d’utiliser le POT pour optimiser un modèle Tensorflow (TF) ou MXNet pour l’inférence avec le kit d’outils OpenVINO™ sur une plateforme Intel Atom®.
- Exécutez le pot-h.
- Message d’erreur de réception : exception à l’instruction illégale
Choisissez une des deux options :
- Dans la plupart des cas, TensorFlow (TF) ou MXNet n’est pas nécessaire pour le POT. Utiliser virtualenv pour un environnement python propre :
$ python3 -m pip install virtualenv
$ python3 -m virtualenv -p « which python3 »
- Si vous utilisez POT ou PrecisionChecker lors de l’évaluation d’un modèle qui utilise TF ou MXNet comme backend, utilisez la version non AVX de TF/MXNet. Par exemple, utilisez la distribution conda ou compilez-les à partir de la source.
Reportez-vous aux liens suivants pour construire à partir de la source :
Comme pour MXNet, TensorFlow (TF) de pypi est expédié avec AVX à partir de la version 1.6. Intel Atom® processeur E3950 prend en charge les instructions SSE et ne prend pas en charge AVX. Par conséquent, l’importation de modèles TF ou MXNet entraîne une erreur d’instruction illégale lorsque le POT est exécuté dans des périphériques sans prise en charge AVX.
Le POT lui-même ne dépend pas directement de TF ou MXNet. LE POT dépend de l’optimiseur de modèle et du contrôleur de précision, qui peut dépendre de TF ou MXNet. Pour minimiser cette situation, OpenVINO™ kit d’outils 2021.1 limite l’importation de TensorFlow aux cas où cette bibliothèque est vraiment utilisée, par exemple lors de l’évaluation d’un modèle en utilisant TF comme backend. MXNet est également trouble pour le même scénario, il est donc possible de faire de même pour elle.
Cependant, les systèmes SSE, comme les plateformes Intel Atom®, ne sont pas utilisés à des fins d’étalonnage. Il n’est pas recommandé d’utiliser Intel Atom® plateformes pour la quantification du POT.