Eu estava lendo a história do computador e encontrei os processadores IA-64 (Itanium). Eles pareciam muito interessantes e eu fiquei confuso sobre o motivo pelo qual a Intel decidiu abandoná-los.
A capacidade de escolher explicitamente quais as 2 instruções que você deseja executar nesse ciclo é uma ótima idéia, especialmente ao escrever seu programa em assembly, por exemplo, um gerenciador de inicialização mais rápido.
As centenas de registros devem ser convincentes para qualquer programador de montagem. Você pode essencialmente armazenar todas as variáveis de funções nos registradores se não chamar outras.
A capacidade de executar instruções como esta:
(qp) xor r1 = r2, r3 ; r1 = r2 XOR r3
(qp) xor r1 = (imm8), r3 ; r1 = (imm8) XOR r3
versus ter que fazer:
; eax = r1
; ebx = r2
; ecx = r3
mov eax, ebx ; first put r2 into r1
xor eax, ecx ; then set r1 equivalent to r2 XOR r3
mov eax, (imm32) ; first put (imm32) into r1
xor eax, ecx ; then set r1 equivalent to (imm32) XOR r3
Ouvi dizer que não era possível comparar o x86 com versões anteriores, mas não foi possível consertar apenas adicionando o circuito Pentium e adicionando um sinalizador do processador que o alternaria para o modo Itanium (como alternar para o modo Protegido ou Longo)
Todas as grandes coisas sobre isso os colocariam um salto gigantesco à frente da AMD.
Alguma ideia?
Infelizmente, isso significa que você precisará de um compilador muito avançado para fazer isso. Ou mesmo um por modelo específico da CPU. (Por exemplo, uma versão mais recente do Itanium com um recurso extra exigiria um compilador diferente).
Quando eu estava trabalhando em um projeto WinForms (o destino tinha apenas o .NET 2.0) no Visual Studio 2010, eu tinha um destino de compilação do IA-64. Isso significa que existe um tempo de execução .NET que pôde ser compilado para IA-64 e um tempo de execução .NET significa Windows. Além disso, a resposta de Hamilton menciona o Windows NT. Ter um sistema operacional completo como o Windows NT significa que existe um compilador capaz de gerar código de máquina IA-64.
fonte
Respostas:
O desempenho foi muito decepcionante em comparação às expectativas e não vendeu bem em comparação com as arquiteturas x86 da Intel.
A Intel me convenceu a criar meu shell Hamilton C no Itanium, executando o Windows NT por volta de 2000, para uma feira. Como era difícil encontrar Itaniums, usei uma VPN para uma máquina em seu laboratório. Tendo já construído versões para NT no x86, MIPS, Alpha e PowerPC, a "porta" era trivial, apenas pequenos ajustes principalmente nos meus makefiles. Acho que demorei meia hora.
Mas o desempenho foi realmente abaixo do esperado, definitivamente muito superior à VPN, e ainda decepcionante quando cheguei à feira e pude testá-la pessoalmente. O Itanium não foi a lugar nenhum porque não era um ótimo produto e ninguém o comprou.
Adicionado:
Por um tempo, a Intel divulgou minha experiência de migrar para o Itanium usando a experiência de desenvolvimento remoto de VPN em seu site. Agora, mas instantâneos em archive.org, eis o que dizia em suas perguntas frequentes remotas :
No " estudo de caso ", ele diz que criei uma versão do Itanium porque os clientes estavam clamando por ela. Mas não me lembro de ter vendido uma cópia pela Itanium. Vendeu-os para todo o resto, incluindo o PowerPC (e quantos dos que estão executando o NT supõem que existiam?) Nunca para o Itanium.
fonte
Resposta rápida: Baixo desempenho. A Intel tentou lançar um produto revolucionário quando deveria ter evoluído para o produto que queria.
Mais especificamente: O processador não foi rápido o suficiente em circunstâncias gerais. A Intel lançou o processador assim que a velocidade do processador para a diferença de velocidade da memória estava aumentando. Itanium, sendo um processador RISC (Reduced Instruction Set), requeria mais bytes por instrução do que seu primo, variantes x86. O aumento da carga de memória fez com que o processador funcionasse lentamente.
Tudo isso foi exasperado por toda a arquitetura ser, essencialmente, um primeiro lançamento. Embora o RISC em si não fosse uma idéia nova, muitos dos componentes de hardware eram e precisavam de novos designs de layout. Havia também muitas idéias novas no layout das instruções do Itanium que precisavam ser completamente digeridas pela comunidade de desenvolvimento antes que um software de alta qualidade estivesse disponível.
No final, muita tecnologia acabou sendo usada no lançamento de chips existente da Intel - apenas não é facilmente visível para o usuário final.
fonte
time
calcular coisas ligadas (por exemplo, números de fatoração), E / S (copiar ou criar arquivos) e OS perf (criar threads ou processos). No Alpha, foi como, uau, isso é rápido. Me dê um processador duplo, eu poderia medi-lo facilmente. Estou lhe dizendo, o Itanium era um cachorro da maneira que você olhava para ele, especialmente em comparação com o hype.O itanium é um ótimo design se você pode aproveitar suas vantagens .
Infelizmente, isso significa que você precisará de um compilador muito avançado para fazer isso. Ou mesmo um por modelo específico da CPU. (Por exemplo, uma versão mais recente do Itanium com um recurso extra exigiria um compilador diferente).
Criar esse compilador uma vez é uma tarefa difícil. Fazer isso para todas as variações de uma CPU não é econômico.
fonte
A outra parte importante da história do Itanium que realmente não foi abordada é o fato de que, em 2001, com a estréia do Itaniums, era impossível colocar grandes quantidades de RAM em hardware comum. x86_64 foi apenas um pontinho no horizonte e o AMD Opterons nem seria lançado por mais 2 anos.
Minha primeira (e única) experiência com um servidor Itanium foi em 2002 em uma empresa química, onde eles precisavam de um SQL Server para realizar análises de óleo para detectar defeitos. Esse petróleo vinha e entrava em máquinas multimilionárias em uma empresa de bilhões de dólares, então eles tinham um cluster de Itaniums, cada um com 128 GB de RAM. Hoje, 128 GB de RAM ainda são uma quantidade razoável, mas é fácil e barato de instalar em um servidor.
Em 2002, 128Gb de RAM era uma quantidade gigantesca e, como eles já tinham uma infraestrutura existente do SQL Server, era mais barato instalar algumas máquinas Itanium e carregá-las com RAM do que mudar para uma plataforma diferente. banco de dados diferente.
Agora que é trivial colocar 128Gb (ou mais) em um servidor de commodities, uma das grandes partes do mercado de Itanium que não tinha concorrentes realmente viáveis (o Opteron surgiu em 2003 e, agora, é claro, servidores que podem centenas de shows de memória são onipresentes) são inundados com opções que eram mais baratas de comprar, mais baratas de possuir e mais rápidas.
fonte
Ouvi dizer que foi porque a AMD pressionou a Intel a alocar mais recursos para seus processadores convencionais para competir. A AMD lançou seus Athlon 64s em 2003, que tinham melhor preço / desempenho que os Pentiums. Há uma crença de que se a Intel continuasse desenvolvendo o Itanium com força total, seria mais rápido que os atuais processadores x86.
fonte