Zone des développeurs Intel® :
Extensions ISA (Instruction Set Architecture) Intel

L’architecture ISA (Instruction Set Architecture) d’Intel continue d’évoluer afin d’améliorer la fonctionnalité, les performances et l’expérience utilisateur. Vous trouverez ci-dessous les extensions planifiées de l’ISA qui sont nouvelles ainsi que celles qui sont planifiées en vue d’améliorer les générations de processeurs à venir. En publiant ces extensions de manière précoce, Intel contribue à s’assurer que l’écosystème logiciel a le temps d’innover et de mettre sur le marché des améliorations et de nouveaux produits lorsque les processeurs seront lancés.

Présentation

Outils et téléchargements

  • Compilateur Intel® C++

    Le compilateur Intel® C++ est disponible au téléchargement depuis Intel® Registration Center à tous les clients possédant une licence. Des versions d’évaluation des produits Intel® de développement logiciel sont également disponibles en téléchargements gratuits.

  • Guide Intel Intrinsics

    Le guide Intel Intrinsics est un outil de référence interactif pour instructions intrinsèques Intel, qui sont des fonctions de style C qui fournissent l’accès à de nombreuses instructions Intel, y compris les extensions Intel® Streaming SIMD Extensions (Intel® SSE), Intel® Advanced Vector Extensions (Intel® AVX) et plus encore, sans devoir écrire le code assembleur.

  • Compilateur Gcc
    Le compilateur gcc et la bibliothèque glibc prenant en charge les instructions Intel® AVX, Intel® AVX2, Intel® AVX-512 et Intel® MPX peuvent être téléchargés sous licence GPL depuis la page Intel Software Development Emulator.

Intel® Advanced Vector Extensions (Intel® AVX)

L’accroissement des performances informatiques représente toujours un besoin dans tous les segments industriels. Pour soutenir la demande croissante et les modèles d’utilisation en constante évolution, nous poursuivons notre tradition novatrice avec les extensions Intel® AVX (Intel® Advanced Vector Extensions), actuellement en cours de production.

Intel® AVX est une nouvelle extension de jeu d’instructions de 256 bits pour Intel® SSE, conçue pour les applications utilisant le calcul en virgule flottante de manière intensive. Elle a été lancée début 2011 dans le cadre de la famille de processeurs de microarchitecture Intel® dont le nom de code est Sandy Bridge et est présente dans les plates-formes s’étendant des portables aux serveurs. Intel AVX améliore les performances grâce à des vecteurs élargis, une nouvelle syntaxe extensible et des fonctionnalités enrichies. Cela entraîne une meilleure gestion des données et des applications générales telles que le traitement des images, de l’audio et de la vidéo, les simulations scientifiques, les analyses financières et la modélisation et l’analyse 3D.

Intel® Advanced Vector Extensions 512 (Intel® AVX-512)

À l’avenir, certains de nos produits feront un bond en avant important, avec la prise en charge d’un traitement SIMD de 512 bits. Les vecteurs 512 bits de ces programmes peuvent comporter huit nombres flottants en double précision et seize nombres flottants en simple précision, ainsi que huit nombres entiers de 64 bits et seize nombres entiers de 32 bits. Cela permet de traiter deux fois plus d’éléments de données qu’IntelAVX/AVX2 avec une instruction simple et offre des capacités quatre fois supérieures à celle d’Intel SSE.

Les instructions Intel AVX-512 sont importantes car elles offrent des capacités de performance supérieures pour les tâches de calcul exigeantes. Les instructions Intel AVX-512 offrent le plus haut degré de prise en charge pour les compilateurs car les capacités de leurs instructions sont conçues pour offrir un niveau de richesse sans précédent.

Les fonctionnalités des instructions Intel AVX-512 comprennent 32 registres de vecteur, d’une bande passante de 512 bits chacun, et huit registres de masquage dédiés. Intel AVX-512 est un jeu d’instructions flexible qui comprend la prise en charge de la diffusion, du masquage intégré permettant la prédication, du contrôle intégré de l’arrondissement en virgule flottante, de la suppression intégrée des erreurs de traitement en virgule flottante, des instructions réparties, des instructions mathématiques à grande vitesse, et de la représentation compacte de grandes valeurs de déplacement.

Intel AVX-512 offre un niveau de compatibilité avec Intel AVX qui est supérieur à celui des transitions de bande passantes antérieures pour les opérations SIMD. Contrairement aux instructions Intel SSE et Intel AVX qui ne peuvent pas être mélangées sans pénaliser les performances, le mélange d’instructions Intel AVX et Intel AVX-512 est pris en charge sans que les performances soient affectées. Les registres YMM0–YMM15 d’Intel AVX se mappent aux registres ZMM0–ZMM15 d’Intel AVX-512 (en mode x86-64), de manière très semblable au mappage des registres Intel SSE sur les registres Intel AVX. En conséquence, sur les processeurs prenant en charge les instructions Intel AVX-512, les instructions Intel AVX et Intel AVX2 fonctionnement sur les 128 ou 256 bits inférieurs des 16 premiers registres ZMM.

Vous trouverez des informations plus détaillées sur les instructions Intel AVX-512 sur le blog « AVX-512 Instructions ». Les instructions sont documentées dans la Référence de programmation des extensions de jeux d’instructions de l’architecture Intel® (voir l’onglet « Présentation » de cette page).

An Embree-Based Viewport Plugin for Autodesk Maya* 2014 with Support for the Intel® Xeon Phi™ Coprocessor
Par Charles Congdon (Intel)Publié le 02/02/20150
Download PDF Purpose This code recipe describes how to obtain, build, and use the Embree-based Viewport Plugin for Autodesk Maya* 2014 on either Microsoft Windows* or Linux*. This plugin (actually a suite of plugins) runs under Autodesk Maya 2014 on the Intel® Xeon® processor (referred to as ‘h...
Quick Linking Intel® MKL BLAS, LAPACK to R
Par Ying H (Intel)Publié le 12/17/20140
Overview R is a popular programming language for statistical computing and machine learning. There is one article we published already- Using Intel® Math Kernel Library (Intel MKL) with R to show how to integrate Intel MKL BLAS and LAPACK libraries within R to improve the math computing performa...
Diagnostic 15542: Loop was not vectorized: inner loop was already vectorized.
Par Devorah H. (Intel)Publié le 10/30/20140
Product Version: Intel(R) Visual Fortran Compiler XE 15.0.0.070 Cause: The vectorization report generated when using Visual Fortran Compiler's optimization options ( -O2  -Qopt-report:2 ) states that loop was not vectorized since the inner loop was vectorized. Example: An example below will g...
Diagnostic 15541: Loop was not vectorized: outer loop was not auto-vectorized: consider using SIMD directive.
Par Devorah H. (Intel)Publié le 10/30/20140
Product Version: Intel(R) Visual Fortran Compiler XE 15.0.0.070 Cause: The vectorization report generated when using Visual Fortran Compiler's optimization options ( -O2 -assume:dummy_aliases -Qopt-report:2 ) states that loop was not vectorized due vector dependence, outer loop depends on inner...
S’abonner à Articles de la Zone des développeurs Intel
La description des nouvelles instructions de Haswell
Par anthony-charbonnier (Intel) Publié le 20/06/11 0
Intel vient de rendre publique les détails sur la prochaine génération des architectures X86. Arrivant en premier dans nos microarchitectures Intel en 2013 sous le nom de code "Haswell", les nouvelles instructions accèlerent une large catégorie d'applications et de modèles d'usage. Téléchargez la...
S’abonner à Blogs de la Zone des développeurs Intel®

    Intel® Software Guard Extensions (Intel® SGX)

    Déclaration sur la vision de l’avenir d’Intel

    Les charges de travail du traitement informatique d’aujourd’hui sont d’une complexité croissante, des centaines de modules de logiciels étant produits par différentes équipes éparpillées dans le monde entier. L’isolation des charges de travail sur des plates-formes ouvertes a représenté un effort constant, commençant par l’architecture en mode protégé, permettant de créer une séparation privilégiée enter les systèmes d’exploitation et les applications. Cependant, les attaques de logiciels malveillants récentes ont démontré la capacité de pénétrer dans des modes hautement privilégiés et de prendre le contrôle de tous les logiciels d’une plate-forme.

    Intel® Software Guard Extensions (Intel® SGX) est le nom donné aux extensions d’architecture Intel conçues pour accroître la sécurité des logiciels par un mécanisme de « bac à sable inversé ». Dans cette approche, plutôt que de tenter d’identifier et d’isoler tous les logiciels malveillants d’une plate-forme, les logiciels légitimes peuvent être isolés dans une enclave et protégés des attaques de logiciels malveillants, quel que soit le niveau de privilège de ces derniers. Cela permettrait de complémenter les efforts continus de sécurisation de la plate-forme contre l’intrusion de logiciels malveillants, tout comme nous installons des coffres-forts dans nos maisons pour protéger nos objets de valeur alors même que nous introduisons des systèmes de verrouillage et d’alarme plus sophistiqués cherchant à prévenir les intrusions et à attraper leurs auteurs.

    Démarrage (commun à toutes les ISA)

    Présentation

    Outils et téléchargements

    • Pas de changement apporté au contenu existant

    Contenu technique

    Aucun contenu trouvé
    S’abonner à Blogs de la Zone des développeurs Intel®
    How to use XDB to do kernel debug on Yocto with Minnowboard MAX
    Par ALICE H. (Intel)Publié le 01/12/20151
    Introduction Minnowboard MAX is an open hardware which is utilized Intel Atom processor. This hardware is a small and low cost but offer exceptional performance, flexibility, openness and standards. We can prepare micro sd card or usb flash device to expand the hardware storage and easy exchange...
    Innovative Technology for CPU Based Attestation and Sealing
    Par adminPublié le 08/14/20130
    Download white paper as PDF By:Ittai Anati, Shay Gueron, Simon P Johnson, Vincent R Scarlata Intel Corporation Abstract Intel is developing the Intel® Software Guard Extensions (Intel® SGX) technology, an extension to Intel® Architecture for generating protected software containers. The container...
    Using Innovative Instructions to Create Trustworthy Software Solutions
    Par adminPublié le 08/14/20130
    Download white paper as PDF By:Matthew Hoekstra, Reshma Lal, Pradeep Pappachan, Carlos Rozas, Vinay Phegade, Juan del Cuvillo Intel Corporation Abstract Software developers face a number of challenges when creating applications that attempt to keep important data confidential. Even diligent use o...
    Innovative Instructions and Software Model for Isolated Execution
    Par adminPublié le 08/14/20130
    Download white paper as PDF By:Frank McKeen, Ilya Alexandrovich, Alex Berenzon, Carlos Rozas, Hisham Shafi, Vedvyas Shanbhogue and Uday SavagaonkarIntel Corporation Abstract For years the PC community has struggled to provide secure solutions on open platforms. Intel has developed innovative new ...
    S’abonner à Articles de la Zone des développeurs Intel

    Intel® Memory Protection Extensions (Intel® MPX)

    Les systèmes informatiques subissent des attaques malveillantes de plus en plus sophistiquées et une des formes les plus communément observées vise à provoquer ou exploiter des dépassement de mémoire tampon dans les applications logicielles.

    Intel® Memory Protection Extensions (Intel® MPX) est un nom donné aux extensions de l’architecture Intel conçues pour accroître la robustesse des logiciels. Intel MPX offrira des fonctionnalités matérielles pouvant être utilisées conjointement avec des modifications du compilateur pour vérifier que les références de mémoire prévues au moment de la compilation ne posent pas de problèmes au moment de l’exécution. Deux des principaux objectifs d’Intel MPX sont de fournir ces capacités en utilisant peu de ressources pour le code nouvellement compilé et d’offrir des mécanismes de compatibilité avec les composants logiciels existants. Intel MPX sera introduit sur les processeurs Intel® à venir.

    Pointer Checker in ICC: requires dynamic linking of runtime libraries
    Par Kittur Ganesh (Intel)Publié le 07/10/20140
    The -check-pointers switch, which enables the Pointer Checker feature, cannot be used with the -static flag on Linux* (/MT on Windows*) which forces all Intel libraries to be linked statically. The reason is that, by design, the Pointer Checker library “libchkp.so” must be shared by all executabl...
    Using Intel® SDE's chip-check feature
    Par Mark Charney (Intel)Publié le 10/03/20130
    Intel® SDE includes a software validation mechanism to restrict executed instructions to a particular microprocessor. This is intended to be a helpful diagnostic tool for use when deploying new software. Use chip check when you want to make sure that your program is not using instruction features...
    Using Intel® MPX with the Intel® Software Development Emulator
    Par Ady Tal (Intel)Publié le 07/23/20131
    Intel has announced a new technology called Intel® Memory Protection Extensions (Intel® MPX). To find out more, check out the Instruction Set Extensions web pages.  Once you know about Intel MPX, you may want to experiment with Intel® SDE. This article explains how to run Intel MPX with Intel SDE...
    Linux* ABI
    Par Milind Girkar (Intel)Publié le 07/18/20130
    by Milind Girkar, Hongjiu Lu, David Kreitzer, and Vyacheslav Zakharin (Intel) Description of the Intel® AVX, Intel® AVX2, Intel® AVX-512 and Intel® MPX extensions required for the Intel® 64 architecture application binary interface.
    S’abonner à Articles de la Zone des développeurs Intel
    Aucun contenu trouvé
    S’abonner à Blogs de la Zone des développeurs Intel®

      Intel® Secure Hash Algorithm Extensions (Intel® SHA Extensions)

      L’algorithme SHA (Secure Hash Algorithm) est un des algorithmes de chiffrement les plus utilisés.  L’algorithme SHA est utilisé principalement pour l’intégrité des données, l’authentification des messages, les signatures numériques et la déduplication des données.  Alors que l’omniprésence des solutions de sécurité continue de croître, l’algorithme SHA se trouve dans plus d’applications que jamais auparavant. Les extensions Intel® SHA Extensions sont conçues pour améliorer les performances de ces algorithmes exigeant un calcul intensif sur les processeurs d’architecture Intel®.

      Les extensions Intel® SHA Extensions sont une famille de sept instructions basées sur les extensions Intel® SSE (Intel® Streaming SIMD Extensions) qui sont utilisées conjointement pour accélérer les performances des traitements SHA-1 et SHA-256 sur les processeurs d’architecture Intel.  Compte tenu de l’importance croissante que prend l’algorithme SHA dans les appareils informatiques que nous utilisons tous les jours, les nouvelles instructions sont conçues pour fournir une amélioration des performances bien nécessaire au hachage d’un simple tampon de données. Les meilleures performances permettront d’améliorer la réactivité et de diminuer la consommation électrique d’une application donnée, mais elles pourraient également permettre aux développeurs d’adopter l’algorithme SHA dans de nouvelles applications pour protéger les données tout en contribuant à remplir leurs objectifs en termes d’expérience utilisateur. Les instructions sont définies de manière à simplifier leur mappage dans le flux de traitement des algorithmes de la plupart des bibliothèques, ce qui facilite le développement.

      Innovative Technology for CPU Based Attestation and Sealing
      Par adminPublié le 08/14/20130
      Download white paper as PDF By:Ittai Anati, Shay Gueron, Simon P Johnson, Vincent R Scarlata Intel Corporation Abstract Intel is developing the Intel® Software Guard Extensions (Intel® SGX) technology, an extension to Intel® Architecture for generating protected software containers. The container...
      Using Innovative Instructions to Create Trustworthy Software Solutions
      Par adminPublié le 08/14/20130
      Download white paper as PDF By:Matthew Hoekstra, Reshma Lal, Pradeep Pappachan, Carlos Rozas, Vinay Phegade, Juan del Cuvillo Intel Corporation Abstract Software developers face a number of challenges when creating applications that attempt to keep important data confidential. Even diligent use o...
      Innovative Instructions and Software Model for Isolated Execution
      Par adminPublié le 08/14/20130
      Download white paper as PDF By:Frank McKeen, Ilya Alexandrovich, Alex Berenzon, Carlos Rozas, Hisham Shafi, Vedvyas Shanbhogue and Uday SavagaonkarIntel Corporation Abstract For years the PC community has struggled to provide secure solutions on open platforms. Intel has developed innovative new ...
      Intel® SHA Extensions Implementations
      Par adminPublié le 07/18/20130
      The Intel® Secure Hash Algorithm (SHA) Extensions are designed to improve the performance of SHA-1 and SHA-256 on Intel® Architecture (IA) processors. This code download provides optimized assembly and intrinsic routines using the Intel® SHA Extensions. A sample test application using published k...
      S’abonner à Articles de la Zone des développeurs Intel
      Aucun contenu trouvé
      S’abonner à Blogs de la Zone des développeurs Intel®
        Updated Intel® Software Development Emulator
        Par Mark Charney (Intel)7
        Hello, On October 2, 2014, we released version 7.8 of the Intel® Software Development Emulator. It is available here: http://www.intel.com/software/sde   See the release notes for a full list of changes.   This release includes:   Support for AVX512 VBMI and AVX512 IFMA instructions Better support for running on Haswell hosts Updated CPUID information For more information on the new instructions see http://www.intel.com/software/isa  
        Resources about Intel® Transactional Synchronization Extensions (Intel TSX)
        Par Roman Dementiev (Intel)4
        Hi, you might find this collection of technical material about Intel TSX instructions useful: http://www.intel.com/software/tsx By a suggestion from some senior forum contributors I am making this post sticky. Best regards, Roman
        Links to instruction documentation
        Par Thomas Willhalm (Intel)25
        Intel Instruction Set Architecture Extensions  Intel® Architecture Instruction Set Extensions Programming Reference includes: Intel® Advanced Vector Extensions 512 (Intel® AVX-512) instructions (AVX512F, AVX512DQ, AVX512BW, AVX512VL, AVX512CD, AVX512PF, AVX512ER) Intel® Secure Hash Algorithm (Intel® SHA) extensions Intel® Memory Protection Extensions (Intel® MPX) The Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2A and 2B (available here) are the instruction set reference. Haswell (2013) new instructionsare in theprogrammer's reference manual. In appendix C of the Intel 64 and IA-32 Architectures Optimization Reference Manual (available here), the latencies and throughput of instructions are listed. The documentation of the Intel C++ Compiler contains documentation of the intrinsics. The AVX Programming Reference and examples for using AVX are available on the AVX community page. (The interactive Intel Intrinsics Guide is also available there, which is usef...
        How to compile avx intrinsics in linux device driver?
        Par Sonny G.2
        My setup: Linux 3.13 kernel, gcc 4.8.2. Ubuntu on core i7 How to compile avx intrinsics in linux device driver? Any exact gcc compiler flags (makefile) and what header files to include in c source? Thanks
        pin-2.14-71313 and WinSock library
        Par Pavel R.7
        Hi, I have a problem trying to start my pintool built with WinSock library (ws2_32.lib) - it immediately exits with message "Failure to open DLL file WS2_32.dll". I've prepared a simple pintool to illistrate the problem: //---------------------------------------------------------- #include "pin.H" namespace WINDOWS { #include <Ws2tcpip.h> void *p = WSAStartup; }; int main(int argc, char *argv[]) { if (PIN_Init(argc, argv)) return 1; PIN_StartProgram(); return 0; } I've placed this file to a subdirectory of source\tools, added to makefile.rules the following line TOOL_LIBS := ${TOOL_LIBS} ws2_32.lib built the pintool make -B TARGET=ia32 then tried to run with the following command: ..\..\..\pin.exe -t obj-ia32\sock_tool.dll -- c:\windows\System32\cmd /c echo ****** started Ok ****** and have got the following message: E: Failure to open DLL file Z:\pin-2.14-71313\source\tools\sock_tool\obj-ia32\WS2_32.dll E: System error 2 : The system cannot find the fi...
        Pointer Arithmetic using Intel AVX2
        Par Nicolai B.2
        Hi, is there an opportunity to operate on pointers in 256 bit AVX2 registers (e.g. incrementing, border check, masking operations) and load from pointer, stored in a vector register? Thank you in advance! Nicolai
        Intel 64 documentation bug
        Par Chris S.1
        This is for Intel 64 and IA-32 Architectures Software Developer’s Manual, Order Number: 325462-053 US January 2015. Page Vol. 1 5-29. 5.19 64-BIT MODE INSTRUCTIONS ... MOVZX (64-bits) Move doubleword to quadword, zero-extension In fact 32 to 64 bit zero extension isn't supported as per Vol. 2A 3-583. It is only spec'd for r/m8 and r/m16. There is a small chance that I'm misinterpreting that but then so is NASM which disallows this. Somebody's wrong and so I'd like an official ruling.
        How to work with AVX on windows
        Par siva rama k.4
        Hi, I am interested in AVX instructions set using in my application for speed up.But i am new to AVX. How can i know whether my system processor is able to support AVX or not? My System Configurations as OS; Windows 7 with 64-bit CPU: Inter(R) Xeon(R) CPU  W3505 @2.53GHz. Anybody can help me.. Thanks in Advance.  
        S’abonner à Forums