[FUGSPBR] [Off Toppic] NetBSD e AMD64

Joao Rocha Braga Filho goffredo em webkey.com.br
Qua Jul 21 21:25:14 BRT 2004


m0f0x wrote:

> Eu já procurei e também não achei... dizem que no Free 5.1 para  
> cima/CURRENT funciona...


    Não achei no NetBSD.

    O FreeBSD tem no CURRENT desde Outubro, mas a data de lamcamento do 
FreeBSD 5.1
é 2003/05/28. Não sei se tinha o suporte e eu não encontrei nada.

    Só achei Release Notes relativo o AMD64 de 2004/01/09, i.e., versão 
5.2. Não achei do 5.1.
Numa outra página do site do FreeBSD indica que não existe.

    O OpenBSD parece ter preparado uma versão rapidamente para o AMD64, 
mas só fez o
primeiro lançamento oficial em 1/5/2004. Eles testaram o novo da 
processador da Intel, que era
para ser compatível com o AMD64, e falaram que era um lixo. Não tinha o 
NX-bit e não era
100% compatível. Agora a Intel disse que vai implementar o NX-bit em 
quase toda a sua linha.
A versão do OpenBSD para o AMD64 não estava completa. Faltava uma ou 
duas coisas que
não estavam prontas, mas pouca gente usa. Acho que era ferramentas de debug.

    Uma coisa que ouvi falar é que o OpenBSD usava algum artifício no 
i386 para dificultar o
buffers overflows. Mas não tenho certeza absoluta.

    Acho que o recurso do NX-bit até demorou para aparecer. Um novo 
recurso que eu acho que
pode surgir de SIMD (Single Instruction, Multiple Data) é criptografia. 
O FreeBSD deverá
gostar, e o OpenBSD adorar. O OpenBSD criptografa o swap. Estas 
instruções viriam a calhar.

    O Linux também não tem suporte ao NX-bit. No dia 2/6/2004 foi 
anunciado um patch para
dar suporte a este recurso. O suporte não faz parte do kernel original. 
Mas o Suse Linux lançou
uma versão com suporte ao AMD64 no final de Novembro de 2003, se não me 
engano.

    A Microsoft esta atrasada. Ela está prometendo que vai implementar o 
suporte ao NX-bit no
SP2 do Windows XP, mas tem adiado a data de lançamento. Ela prometeu 
para Junho, mas depois
adiou para Julho, mas o que foi liberado no meio deste mês foi mais uma 
versão beta do SP2. A
minha impressão é que a implementação deve ser por demais complicada. 
Pode ser que eles usassem
alguma baixaria em algumas coisas que o NX-bit não deixaria que fizessem.


> Falando em 64, eu vi coisas sobre que o IA64 ainda não tem o  
> HyperThreading totalmente suportado, coisas do tipo... vc tem alguma  
> documentação?


    Não tenho. Mas o HyperThreading não é vantagem tecnológica, e sim, 
necessidade tecnológica.
Como assim? No caso do Pentium 4, com 20 níveis de pipeline (são 31 no 
Pentium 4E), o processador
poderia ficar ocioso esperando por alguma ordem do pipeline. Com o 
HyperThreading, o processador
tem duas pipelines para dar ordens, decodificadas das instruções, e o 
processador fica menos ocioso. O
ganho total é de cerca de 30%.

    O AMD K7 tem 10 níveis de pipeline, e o AMD64 tem 12, são bem mais 
curtos.

    Uma novidade em breve são dois ou mais processadores por chip, 
possivelmente compartilhando a
cache L2. Isto já até existe, mas não no mundo i386. Os processadores já 
estão tão complexos que
talvez seja mais fácil colocar mais de um no chip do que projetar um 
mais complexo. Já é possível
colocar 200 Milhões de transístores em um chip, mas um processador 
Pentium 4 tem 29 Milhões. O
resto, que o faz chegar a 54 Milhões ( e 192, se não me engano, no 
Pentium 4EE, com 2 MB de cache)
é a cache L2. O grande problema disto é que o processador geram mais 
comsumo e calor do que 1MB
de cache. A dissipação de clor se torna mais séria.

    Eu acho que tem uma solução melhor e talvez mais barata, para chips 
multiprocessados. É uma
melhoria do HyperThreading. Imagine um processador com 4 bancos de 
registradores, 4 pipelines de
decodificação de instruções, mas com todas as unidades internas de 
processamento triplicadas. Um dos
grandes desafios seria a taxa interna de transferência. Teria que ter 
uma quantidade inacreditavelmente
grande de trilhas para dados e instruções, e um bom sistema de 
arbitragem. Mas o desempenho seria
absurdo. Teria um desempenho muito próximo de 4 processadores, e não 
duvido que, em casos especiais,
até superasse. Se estuvesse rodando um programa com ponto flutuante 
pesado, e os outros em execução
não usassem ponto flutuante, todas as unidades de ponto flutuante 
poderiam estar sendo usadas para o
que estivesse usando o ponto flutuante. Imagine só o nível de 
desempenho. E como quase todas as unidades
de processamento não estariam quadruplicadas, tendo algumas triplicadas, 
e talvez outras só duplicadas, a
quantidade de trasístores cairia em muito. O pipeline é que precisaria 
realmente ser quadruplicado. Já deu
para sentir o desempenho disto? E para ainda exagerar, cada pipeline 
poderia ter a sua própria cache L1.


       João Rocha.

>
> []'s,
> m0f0x
>
> On Sun, 18 Jul 2004 12:41:25 -0300, Joao Rocha Braga Filho  
> <goffredo em webkey.com.br> wrote:
>
>>
>>     Eu estou procurando informações sobe o suporte ao
>> NX-bit do AMD64, mas não achei nada do NetBSD.
>>
>>     Do FreeBSD achei referências datando de Novembro
>> de 2003. O FreeBSD 5.2 já tinha suporte. Mas, se não
>> me engano, a primeira release do FreeBSD para o AMD64
>> foi a 5.1.
>>
>>     O OpenBSD oficialmente tem suporte na sua versão
>> de 1/5/2004, que foi também a primeira versão para o
>> AMD64.
>>
>>     O Suse Linux tem suporte para o AMD64 desde final
>> de Novembro, mas sem o NX-bit. O primeiro suporte do
>> NX-bit para o Linux foi lançado em 2/06/2004, e foi
>> desenvolvido pela Red Hat em um protótipo da Intel. No
>> artigo que li não falou sobre compatibilidade ou testes
>> com o AMD64.
>>
>>     A Microsoft adiou o Service pack 2 para o Windows
>> XP, que daria suporte para o NX-bit. No dia 14/07/2004
>> lançou uma versão beta. Pode ser que o service pack
>> seja adiado de novo.
>>
>>     Mas ainda não achei nada sobre o NetBSD. Sei que ele
>> tem suporte para o AMD64, e mais nada, e que preparou
>> o port em 1 mês, mas adiou o lançamento oficial para coincidir
>> com o lançamento de uma versão. Mas nada sobre o NX-bit.
>>
>>     Se alguém souber algo sobre o NX-bit para o NetBSD,
>> por favor, me informe.
>>
>>
>>        João Rocha.
>
> _______________________________________________________________
> Para enviar um novo email para a lista: fugspbr em fugspbr.org
> Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
> Historico: http://www4.fugspbr.org/lista/html/FUG-BR/
>
>


-- 

goffredo em goffredo.eti.br
goffredo em gmail.com
goffredo em webkey.com.br
http://www.goffredo.eti.br


_______________________________________________________________
Para enviar um novo email para a lista: fugspbr em fugspbr.org
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/



Mais detalhes sobre a lista de discussão freebsd