Qual é a diferença entre processadores escalares e matrizes?
Há uma grande diferença entre dois dos principais formatos - processadores escalar e array - nos quais um sistema de computador processa informações. Enquanto os processadores escalares trabalham em um item de dados por vez, os processadores de matriz podem lidar com vários fluxos de dados simultaneamente. Ambos os processadores, no entanto, fazem parte da unidade central de processamento (CPU), que controla todas as ações de um computador e pode lidar com todos os momentos dos dados. Os processadores escalar e de matriz executam muitas das mesmas operações, mas de uma maneira diferente, tornando cada um adequado para uma finalidade diferente e assegurando que todas as funções da mais simples à mais complexa possam ser realizadas.
Os processadores de matriz aplicam uma única instrução a várias matrizes ou matrizes de dados simultaneamente antes de passar para a próxima instrução. Isso permite que os processadores de matriz operem muito mais rapidamente, porque o processador não precisa esperar a execução do primeiro conjunto de instruções em um item antes de passar para o próximo. Muitas das etapas necessárias para executar uma operação são eliminadas porque o computador recupera vários itens ao mesmo tempo, executa a operação em todos eles e depois a reescreve na memória, em vez de repetir as etapas com cada novo dado.
Os processadores escalares operam em um item de dados por vez antes de passar para o próximo item. Cada instrução deve ser executada no item atual antes de passar para a próxima instrução. No final do loop, o conjunto de instruções é executado no próximo item em sequência. Quase todas as CPUs de mercado de massa são escalares, embora possam ter elementos que operam mais como processadores de matriz.
Os supercomputadores das décadas de 1980 e 1990 foram projetados para processar grandes quantidades de dados usando uma única instrução-múltiplos-dados. Os processadores de matriz tornaram possível manipular dados de ciência e pesquisa em um tempo menor. Embora possa parecer intuitivo que os processadores de matriz lidem com todas as funções da CPU mais rapidamente que os processadores escalares, esse não é o caso. Os processadores de matriz são capazes de lidar com grandes quantidades de dados com eficiência, mas como a função exige que a CPU seja mais complexa, é mais difícil executar operações mais simples.
As diferenças entre os processadores escalar e de matriz tornaram-se menos pronunciadas com a introdução dos microprocessadores em 1994. Desde então, os microprocessadores com elementos de instrução única com vários dados tornaram-se a norma e diminuíram ainda mais a diferença entre os processadores escalar e de matriz. Os consoles de videogame e os aceleradores gráficos têm sua própria CPU gráfica que é executada paralelamente à CPU escalar principal, liberando assim a CPU principal para executar funções não gráficas.