Anonim

Ouvimos bastante sobre conjuntos de instruções, com o conjunto de instruções x86 sendo um dos mais comuns por aí; no entanto, existem muito mais conjuntos de instruções do que apenas x86. De fato, existem muitos conjuntos de instruções específicos do fabricante, como o conjunto de instruções SSE3 da Intel. Veremos o SSE3 especificamente nesta visão geral, então siga abaixo para descobrir tudo.

O que é um conjunto de instruções?

Para entender o SSE3, é importante entender o que é um conjunto de instruções e o que ele faz. Um conjunto de instruções, geralmente chamado de ISA (Instruction Set Architecture), é essencialmente uma linguagem de máquina - uma linguagem de programação de computador à qual o computador pode responder diretamente (por exemplo, instrução binária ou hexadecimal). Dito isto, um conjunto de instruções basicamente fornece instruções ou comandos para o processador. Esses comandos basicamente dizem ao processador para mudar para transistores específicos. As instruções podem ser tão simples quanto ler, gravar e mover comandos, mas ficam muito mais técnicas do que isso, pois são uma parte essencial da arquitetura de computadores, ajudando a lidar com tipos de dados, arquitetura de memória, registros, manipulação de exceções, E / S externos. O e muito mais.

O que o conjunto de instruções SSE3 faz?

Então, especificamente, o que o SSE3 faz? SSE3 significa Streaming SIMD Extensions 3, com o "3" indicando que é a terceira geração ou iteração do conjunto de instruções Steaming SIMD Extensions (SSE).

Em processadores mais antigos, apenas um único elemento de dados poderia ser processado por instrução. Mas, com a introdução do SSE, esse conjunto de instruções permite que as instruções gerenciem e gerenciem vários elementos de dados, tornando o processamento muito mais rápido em certos aplicativos. Principalmente, o SSE realmente entra em ação quando se trata de aplicativos mais intensivos, especialmente onde são necessários gráficos 3D. Um bom exemplo seria em videogames, programas de edição de vídeo, software de modelagem 3D e muitas outras aplicações.

A terceira geração - SSE3 - traz uma grande mudança: a capacidade de trabalhar horizontalmente em um registro de processador. No passado, éramos capazes apenas de operações verticais. Com a introdução desse recurso, podemos processar operações de Processamento de sinal digital (DSP) e 3D em um ritmo muito mais rápido.

O SSE3 traz outra mudança interessante - uma nova instrução para converter números de ponto flutuante em números inteiros sem precisar mexer no modo de arredondamento global. Ao tornar esse processo mais eficiente com o SSE3, o pipeline de instruções fica muito menos entupido e, assim, evita uma paralisação do pipeline, que é um atraso no manuseio das instruções para evitar riscos.

E o SSE4?

SSE4 é a quarta iteração do conjunto de instruções de Streaming SIMD Extensions. Este conjunto de instruções contém 54 instruções, embora esteja disponível um subconjunto - chamado SSE4.1 - que contém 47 instruções, mas você só encontrará esse subconjunto em Penryn. Um subconjunto semelhante - SSE4.2 - com as 7 instruções restantes é encontrado no processador Core i7 baseado em Nehalem.

Como já sabemos, o SSE3 (e versões anteriores) são instruções especiais para aplicativos baseados em "multimídia". Você pode ver o SSE4 como uma versão nova e aprimorada disso, essencialmente uma programação ainda mais otimizada que permite que as tarefas sejam executadas muito mais rapidamente.

Encerramento

Seguindo este artigo, esperamos ajudá-lo a entender alguns dos aspectos mais técnicos dos conjuntos de instruções SSE3 e SSE4. Tem perguntas? Não deixe de se juntar a nós na seção de comentários abaixo ou nos fóruns da PCMech!

O que são conjuntos de instruções sse e o que eles fazem?