quarta-feira, 23 de novembro de 2016

Hyper Threading

  • Hyper-Threading ou hiperprocessamento é uma tecnologia usada em processadores que faz com que cada núcleo do processador possa executar mais de um processo de uma única vez, tornando o sistema mais rápido quando se usam vários programas ao mesmo tempo. É uma tecnologia desenvolvida pela Intel e foi primeiramente empregada no processador Pentium 4 de núcleo Northwood, de 32 bit. Apesar do foco da tecnologia Hyper-Threading ser os processadores para servidores de rede, os processadores da série Intel® Core2™ (Extreme Edition) e Intel® Core™ (i3 e i7) usufruem dessa tecnologia proporcionando até 12 núcleos totais (i7 4960x). Essa técnica foi criada para oferecer maior eficiência na utilização dos recursos de execução do processador. Segundo a Intel, a Hyper-Threading oferece um aumento de desempenho de até 30% dependendo da configuração do sistema.

  • A simulação do segundo processador é feito utilizando partes não aproveitadas do processador na previsão de desvio do pipeline. Estas partes são conhecidas como bolhas do pipeline e não teriam utilidade nenhuma desperdiçando ciclos. Simulando em um único processador físico dois processadores lógicos, cada processador lógico recebe seu próprio controlador de interrupção programável (EPIC) e um conjunto de registradores. Os outros recursos do processador físico como cache de memória, unidade lógica e aritmética, barramentos, são compartilhados entre os processadores lógicos, parecendo assim um sistema com dois processadores.

  • Um efeito colateral do Hyper-Threading é o aumento do consumo de energia e, conseqüentemente, a dissipação térmica do processador em 6 a 8%.


Arquiteturas RISC x CISC

  • O projeto do Conjunto de Instruções inicia com a escolha de uma entre duas abordagens, a abordagem RISC e a CISC. 
  • O termo RISC é a abreviação de Reduced Instruction Set Computer, ou Computador de Conjunto de Instruções Reduzido e CISC vem de Complex Instruction Set Computer, ou Computador de Conjunto de Instruções Complexo. 
  • Um computador RISC parte do pressuposto de que um conjunto simples de instruções vai resultar numa Unidade de Controle simples, barata e rápida
  • Já os computadores CISC visam criar arquiteturas complexas o bastante a ponto de facilitar a construção dos compiladores, assim, programas complexos são compilados em programas de máquina mais curtos. Com programas mais curtos, os computadores CISC precisariam acessar menos a memória para buscar instruções e seriam mais rápidos.
Os processadores RISC geralmente adotam arquiteturas mais simples e que acessam menos a memória, em favor do acesso aos registradores. A arquitetura Registrador-Registrador é mais adotada, enquanto que os computadores CISC utilizam arquiteturas Registrador-Memória.

CaracterísticasRISCCISC
ArquiteturaRegistrador-RegistradorRegistrador-Memória
Tipos de DadosPouca variedadeMuito variada
Formato das InstruçõesInstruções poucos endereçosInstruções com muitos endereços
Modo de EndereçamentoPouca variedadeMuita variedade
Estágios de PipelineEntre 4 e 10Entre 20 e 30
Acesso aos dadosVia registradoresVia memória