Intel® Developer Zone:
Extensões da Instruction Set Architecture da Intel

A ISA (Instruction Set Architecture) da Intel continua a evoluir para melhorar a funcionalidade, o desempenho e a experiência de uso. São mostradas abaixo as novas extensões planejadas para a ISA e as que estão sendo planejadas para aprimoramentos em futuras gerações de processadores. Com a publicação antecipada destas extensões, a Intel ajuda a garantir que o ecossistema de software tenha tempo para inovar e chegar ao mercado com produtos novos e aprimorados quando os processadores forem lançados.

Visão geral

Ferramentas e downloads

  • Compilador Intel® C++

    O Compilador Intel® C++ está disponível para download a partir do Intel® Registration Center, para todos os clientes licenciados. Versões de avaliação de produtos Intel® para desenvolvimento de software estão também disponíveis para download gratuito.

  • Guia Intel Intrinsics

    O Guia Intel Intrinsics é uma ferramenta de referência interativa sobre as instruções intrínsecas Intel, que são funções em estilo C que dão acesso a muitas instruções Intel, inclusive as Intel® Streaming SIMD Extensions (Intel® SSE), Intel® Advanced Vector Extensions (Intel® AVX) e outras, sem a necessidade de escrever código em assembly.

Intel® Advanced Vector Extensions (Intel® AVX)

A necessidade de desempenho computacional maior continua a crescer em todos os segmentos da indústria. Para atender a esta demanda crescente e para desenvolver modelos de uso, nós continuamos com o nosso histórico de inovação com o  Intel® Advanced Vector Extensions (Intel® AVX) nos produtos de hoje.

O Intel® AVX é uma nova extensão do conjunto de instruções de 256 bits para Intel® SSE e foi criado para aplicativos que usam ponto flutuante intensamente. Ele foi lançado no começo de como parte da família de processadores com a microarquitetura Intel® de codinome Sandy Bridge e está presente em plataformas que vão desde notebooks até servidores. O Intel AVX aumenta o desempenho por causa do uso de vetores mais amplos, uma nova sintaxe extensível e uma poderosa funcionalidade. O resultado é um melhor gerenciamento de dados e de aplicativos de uso geral, como processamento de imagens e áudio/vídeo, simulações científicas, análises financeiras e modelagem e análise em 3D.

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

No futuro, alguns novos produtos darão um salto significativo em direção ao suporte para SIMD de 512 bits. Os programas podem processar oito números de ponto flutuante de precisão dupla e 16 de precisão simples com vetores de 512 bits, bem como oito inteiros de 64 bits e 16 inteiros de 32 bits. Isto permite o processamento do dobro do número de elementos de dados que o IntelAVX/AVX2 pode processar com uma instrução simples e quatro vezes a capacidade das Intel SSE.

As instruções Intel AVX-512 são importantes por que elas fornecem recursos de maior desempenho para as tarefas computacionais mais exigentes. As instruções Intel AVX-512 oferecem o mais alto grau de suporte para compiladores, pois elas incluem um nível sem precedentes de abrangência das capacidades das instruções.

Os recursos do Intel AVX-512 incluem 32 registradores vetoriais com largura de 512 bits e oito registradores de máscara dedicados. O Intel AVX-512 é um conjunto flexível de instruções que suporta difusão, mascaramento integrado para permitir a predicação, controle integrado de arredondamento de ponto flutuante, supressão integrada de falhas de ponto flutuante, instruções de espalhamento, instruções matemáticas de alta velocidade e representação compactada de valores de alto deslocamento.

O Intel AVX-512 oferece um nível de compatibilidade com o Intel AVX maior do que as transações anteriores para novas larguras de operações SIMD. Ao contrário das Intel SSE e Intel AVX, que não podem ser misturadas sem perda de desempenho, a mistura de instruções Intel AVX e Intel AVX-512 é suportada sem penalidades de desempenho. Os registradores YMM0 a YMM15 da Intel AVX correspondem aos registradores ZMM0 a ZMM15 da Intel AVX-512 (no modo x86-64), de modo muito semelhante ao mapeamento entre os registradores das Intel SSE e os registradores das Intel AVX. Portanto, nos processadores que suportam o Intel AVX-512, as instruções Intel AVX e Intel AVX2 operam nos 128 ou 256 bits inferiores dos primeiros 16 registradores ZMM.

Mais detalhes sobre as instruções Intel AVX-512 podem ser encontrados no "Instruções AVX-512". As instruções estão documentadas na Referência de programação para as extensões do conjunto de instruções da arquitetura Intel® (veja a aba "Visão geral" nesta página).

Intel® System Studio - Solutions, Tips and Tricks
By robert-mueller-albrecht (Intel)Posted 12/03/20130
Training Slides Link to Training Slides Overview New Features and Components of Intel System Studio 2014 Detailed Overview of all Intel System Studio 2014 Components System Requirements Support Matrix - Full list of component support based on Host/Target OS and Embedded Platfo...
Installation of Intel® System Studio on Windows* Host
By Naveen Gv (Intel)Posted 10/07/20130
How to get Intel System Studio 2014 - Windows* Host package? Upon registering for the program you will receive a serial number and email with a license file. You will need either of these two to complete the installation process. If you want to use the license file you can point to it during ins...
How to install Intel® System Studio on Windows* OS
By adminPosted 10/06/20130
Topic: - How to install Intel® System Studio 2014 on Windows* OS Objective: - This article is focused on explaining step wise as “How to install Intel® System Studio 2014 on Windows* OS”. Installation: - After downloading Intel® System Studio 2014 – Windows* Host from Intel® registration center...
Intel® Xeon® Processor E5-2600 V2 Product Family Technical Overview
By Sreelekshmy Syamalakumari (Intel)Posted 10/04/20133
Download Article Intel® Xeon® Processor E5-2600 V2 Product Family Technical Overview [PDF 780KB] Contents Executive Summary Introduction Intel Xeon processor E5-2600 V2 product family enhancements Intel® Secure Key (DRNG) Intel® OS Guard (SMEP) Intel® Advanced Vector Extensions (Intel® AVX): Floa...

Páginas

Assine o
Intel presente no SECOMP 2013 da UNIFEI
By Luciano Palma (Intel)Posted 05/31/20130
A Intel estará presente no Seminário em Computação da Universidade Federal de Itajubá, que acontece entre os dias 3 e 7 de junho de 2013. O Community Manager para Servidores e HPC da Intel, Luciano Palma, realizará um palestra sobre Computação Paralela (dia 4, 13h30). Participe do evento, conheç...
Assine o Blogs do Intel® Developer Zone

    Intel® Software Guard Extensions (Intel® SGX)

    Declaração de Visão da Intel

    As cargas de trabalho computacionais dos dias de hoje estão cada vez mais complexas, com centenas de módulos de software fornecidos por diferentes equipes espalhadas pelo mundo todo. O isolamento de cargas de trabalho em plataformas abertas tem sido um esforço contínuo, começando com a arquitetura de modo protegido para criar uma separação de privilégios entre os sistemas operacionais e os aplicativos. Recentes ataques de malware, entretanto, têm demonstrado a capacidade de penetrar em modos altamente privilegiados e obter o controle de todo o software da plataforma.

    Intel® Software Guard Extensions (Intel® SGX) é o nome das extensões da Arquitetura Intel® projetadas para aumentar a segurança do software por meio de um mecanismo de “inverse sandbox”. Nesta abordagem, ao invés de tentar identificar e isolar todos os malwares da plataforma, o software legítimo pode ser lacrado em um envoltório e protegido contra os ataques do malware, independentemente do nível de privilégio dele. Isto complementa os esforços constantes para a segurança da plataforma contra a intrusão de malware, de modo similar ao da instalação de cofres em casa para proteger itens valiosos, em adição à instalação de fechaduras e sistemas de alarme mais sofisticados para impedir a entrada de intrusos.

    Primeiros passos (comuns a todos os ISA)

    Visão geral

    Ferramentas e downloads

    • Nenhuma mudança do conteúdo existente

    Conteúdo técnico

    Nenhum conteúdo foi encontrado
    Assine o Blogs do Intel® Developer Zone
    Innovative Technology for CPU Based Attestation and Sealing
    By adminPosted 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
    By adminPosted 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
    By adminPosted 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 ...
    Assine o

    Intel® Memory Protection Extensions (Intel® MPX)

    Os sistemas computacionais estão sujeitos a ataques mal-intencionados cada vez mais sofisticados, e uma das formas mais comuns desses ataques é causar ou tirar proveito dos transbordamentos de buffer de aplicativos de software.

    Intel® MPX (Intel® Memory Protection Extensions) é o nome das extensões da Arquitetura Intel® projetadas para aumentar a robustez do software. O Intel MPX fornece recursos de hardware que podem ser usados em conjunto com mudanças de compilador para impedir que as referências de memória usadas durante a compilação não se tornem inseguras no tempo de execução. Dois dos mais importantes objetivos do Intel MPX são fornecer este recurso com baixa sobrecarga para códigos recém compilados, e fornecer mecanismos de compatibilidade com componentes de sobrecarga preexistentes. O Intel MPX estará disponível em um futuro processador Intel®.

    Using Intel® SDE's chip-check feature
    By Mark Charney (Intel)Posted 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
    By Ady Tal (Intel)Posted 07/23/20130
    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
    By Milind Girkar (Intel)Posted 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.
    Introduction to Intel® Memory Protection Extensions
    By RB (Intel)Posted 07/16/20130
    The C and C++ languages provide for memory access via pointers, however, these languages do not ensure the safe use of pointers. Left undetected, the unsafe use of pointers puts an application at risk of data corruption or malicious attack via buffer overruns and overflows. Intel is always lookin...

    Páginas

    Assine o
    Nenhum conteúdo foi encontrado
    Assine o Blogs do Intel® Developer Zone

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

      O SHA (Secure Hash Algorithm - algoritmo de hash seguro) é um dos algoritmos criptográficos mais comumente usados.  Os usos principais do SHA são em integridade de dados, autenticação de mensagens, assinaturas digitais e remoção de dados duplicados.  À medida que o uso generalizado de soluções de segurança continua a crescer, o SHA é visto em mais aplicativos do que nunca. As Intel® SHA Extensions foram projetadas para aumentar o desempenho destes algoritmos de computação intensa em processadores baseados na arquitetura Intel®.

      As Intel® SHA Extensions são uma família de sete instruções baseadas em Intel® Streaming SIMD Extensions (Intel® SSE) que são usadas juntas para acelerar o processamento de SHA-1 e SHA-256 nos processadores baseados na arquitetura Intel®.  Por causa da crescente importância do SHA no dia a dia dos nossos dispositivos computacionais, estas novas instruções fornecem o aumento de desempenho necessário para fazer o hash de um único buffer de dados. Os benefícios de desempenho não apenas ajudam a melhorar a responsividade e a diminuir o consumo de energia de um dado aplicativo, mas também permitem que os desenvolvedores adotem o SHA em novos aplicativos para proteger dados e atingir suas metas de experiência de uso. As instruções são definidas de modo a simplificar o seu mapeamento no fluxo de processamento do algoritmo da maioria das bibliotecas de software, o que facilita o desenvolvimento.

      Innovative Technology for CPU Based Attestation and Sealing
      By adminPosted 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
      By adminPosted 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
      By adminPosted 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
      By adminPosted 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...

      Páginas

      Assine o
      Nenhum conteúdo foi encontrado
      Assine o Blogs do Intel® Developer Zone
        Instruction set extensions programming reference, revision 18
        By Mark Charney (Intel)0
        In early February, an updated instruction set extensions programming reference, revision 18, has been posted here.  It includes information about: Intel® Advanced Vector Extensions 512 (Intel® AVX-512) instructions Intel® Secure Hash Algorithm (Intel® SHA) extensions  Intel® Memory Protection Extensions (Intel® MPX)  For more information about the technologies: http://www.intel.com/software/isa
        Updated Intel® Software Development Emulator
        By Ady Tal (Intel)0
        Hello, we just released version 6.20 of the Intel® Software Development Emulator. It is available here:http://www.intel.com/software/sde It includes: Added support for XSAVEC and CLFLUSHOPT. Disabled TSX CPUID bits when TSX emulation is not requested. Improved disassembly for MPX instructions. Added an option for running chip-check only on the main executable. Added support for -quark (Pentium ISA). Added application debugging for Mac OSX with the lldb debugger.
        Resources about Intel® Transactional Synchronization Extensions (Intel TSX)
        By 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
        By Thomas Willhalm (Intel)24
        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 useful for SSE programming as well.) The Intel Software Development Emulator (Intel SDE) allows simulation of future instructions.
        Problem when using RTM
        By geomap0
        Hello, My name is George Mappouras and I am trying to make a simple program in order to evaluate the TSX in the new Haswell processors. However I came across a very strange problem that I can't find its cause and I was wondering if you could help me with it. The idea is simple, I have 'x' accounts and 'n' threads. Each thread does 'k' amount of transactions between random accounts (I transfer a random amount from account1 to account2 ). I tried this program with RTM, spinlocks and mutex (fine grained locking). In the end I check my results by comparing them to a single threaded version of this program. The problem is that in the case of the RTM (with or without fallback path) I noticed that sometimes the results don't match the single-threaded results.  I also noticed that this seems to happen only when I use hyperthreading. (The computer in which I test my program has 4 physical cores with hyperthreading, that means 8 threads max). I tried to debug my program and I suspect that the...
        asm blocks
        By berthou4
        Hello, I am writing AVX code inside asm blocks (don"t want to use avx intrinsics). A lot of gp registers are used and so they are mixed with the ones generated by the compiler and thus it is screwing the behavior of the code pretty fast. Is there an automatic or manual way to avoid these register overlaps ? Any link to documentation would be great. I would like also to use asm blocks in fortan with ifort, but didn't find the way yet. Thanks Vincent
        SDE produces unstable behavior
        By andysem2
        Hi, I have some SSE/AVX code that I'm trying to test with Intel Software Development Emulator (SDE) on CPUs without the native support for some of the instruction set extensions. In particular, I tried the following setups: 1. Sandy Bridge CPU, SDE is running with -hsw switch. 2. Sandy Bridge CPU, SDE is running with -hsw -sse-sde switches. 3. A KVM guest virtual machine with SSE4 instructions (host CPU is Nehalem), SDE is running with -hsw switch. All this is on Linux x86_64, SDE 6.22 and 6.12. What I'm seeing is when my code is running the emulated branch (i.e. AVX2 path or AVX path when AVX is emulated) I sometimes get corrupted results. The behavior is not stable, it can work correctly in one run and fail in the next one on the same input data. I'm sure my code is correct because I tried it on a Haswell machine and it works every time. Also, the AVX path is failing when emulated and not when executed natively. My code is single-threaded so there aren't any concurrency issues. I ...
        Disabling AVX
        By emmanuel.attia17
        Hi all, Is there a way (under Windows 7) to disable the support of AVX. I wan't to make sure that on a pre-SB machine I don't get "Illegal Instruction exception". Currently I have to use another machine and it's a bit annoying. I don't use the /QaXXX flags because the code is already taking very long to compile (so it's taken care of manually) and I want it to work on Microsoft compiler too (even if performances would be degraded of course ;) ). So if there is some global flag to change to disable it (even if i need to reboot the computer), the information would be more than welcomed. Thanks in advance !

        Páginas

        Assine o Fóruns