On Sat, 2005-10-29 at 10:23 -0200, Marcos Lazarini wrote: > Datacom - Tavares wrote: > > On Tue, 2005-10-11 at 23:17 -0300, Marcos Lazarini wrote: > > > >>>E tem um problema, se voce habilitar na Bios o HT e usar um kernel nao > >>>SMP ou um windows 98 sem suporte a SMP, o sistema ficará instavel.. > >> > >>Isso eu já nao sei não, veja os e-mails do Francisco que iniciou a > >>thread - ele usava um HT com kernel 2.4 não smp. E só comecou a travar > >>depois que comecou a brincar com essas coisas. > > > > Partindo do principio q se vc tiver 2 cores e um kernel nao SMP, somente > > o core 1 serah usado, com HT o mesmo pode ocorrer, correto? Nao > > aproveitando o hardware do sistema de forma plena e deixando parte > > processador ocioso.. > > Isso é instavel? Veja o que voce mesmo falou acima
Independente.. Pra que voce vai usar um sistema com HT configurado de maneira incorreta? Nao sei se eh instavel pois nunca o usei configurado incorretamente para testar se fica instavel.. Quando comprei a maquina a 3 anos atras (aproximadamente) li textos que afirmavam que essa possibilidade existia.. > >>>Acredito que o ganho de desempenho eh baixo nos computadores com > >>>windows, onde a maioria dos benchmarks "comerciais" executam. > >>>O windows nao faz um bom proveito do paralelismo, ao contrario do que > >>>acontece com o linux.. Isso quer dizer, o ganho do HT no linux eh > >>>significativo :) > >> > >>Isso eu discordo... e bastante. > >>Primeiro, pq os benchmarks comerciais iriam fazer o windows rodar mais > >>devagar? > >>Segundo, não dá pra ver o código do windows pra ver se ele realmente > >>implementa de maneira eficiente. Só da pra especular. Ai a comparação > >>fica complicada, mas podemos tentar dentro de certos parâmetros. > >>E outra coisa: uma coisa é o sistema operacional suportar multiplas > >>CPUs; outra coisa completamente diferente é seus aplicativos tirarem > >>proveito delas.... E isso eu não sei como anda nem no linux, nem windows. > > > > Defensor de windows? :) > > Benchmark comercial fechado eh desconsideravel pois ele pode ter uma > > implementacao q beneficiaria um ou outro caso.. Nao temos como saber. > > > > Eu nao disse em momento algum q os benchmarks fariam o windows rodar > > mais devagar, acho q fui mal interpretado. Na verdade, nenhum programa > > em sua natureza, poder fazer um OS "rodar mais devagar". Timesharing > > existe! :) Os conceitos de OS detalham isso.. > > > > O q quis dizer eh q os benchmarks executados sao todos para windows e q > > no windows nao temos um ganho com o uso de HT tao grande quanto temos no > > linux.. > > Qual o critério que vc usou pra chegar nessa conclusão? Achometro? Se o > critério foi numero de processos/threads rodando ao mesmo vc está > enganado... > > > e q os benchmarks deveriam ser executado sobre linux para > > podermos comparar um HT com um nao HT pois o ambiente de trabalho no > > linux tem uma natureza mais paralelizavel. > > > > Sim, nao podemos ver o codigo do windows, mas podemos ver os tamanhos > > dos binarios em execucao e a sua quantidade (pequena) para executar uma > > determinada tarefa. Quando comparado com o linux temos muito mais > > programas (threads) em paralelo e estes sao equivalentes aos grandes > > binarios do windows (mesma tarefa) soh q partidos em pedacos menores > > resultando numa maior quantidade de pequenos programas em execucao (mais > > paralelizavel), fui claro? Talvez nao.. > > Ninguem disse q eles podem ser executados simultaneamente em CPUs > diferentes; os mesmos conceitos de SO que vc cita acima também mencionam > Locks, Semáforos, etc. > Outra coisa, nao entendi a questão do tamanho ai em cima - já compilou > alguma coisa com -O3? Fica gigante e super-rápido. > Seguindo pelo seu raciocinio, o linux deveria ser mais lento que o > windows, pois haveria mais troca de contexto entre as muitas coisas que > ele roda (e toda troca de contexto/interrupcao é péssimo pra performance) > > > >>>Percebi isso verificando no winXP que mesmo possuindo 2 processadores, > >>>ao disparar um programa, era praticamente usado somente um deles. > >> > >>E no linux? Fez o mesmo? > >>Tentou carregar um programa multi-thread no windows pra ver a diferença? > > > > > > Nao.. Ele paraleliza ok.. > > Sim, mas mesmo assim, os programas pra windows nao implementam muitas > > threads, mas percebe-se elas executando em paralelo.. > > ??? > > > >>Um bom teste: pegue um crack de qquer coisa (.doc, .zip, passwd, etc); > >>em geral eles não são multi-threaded pois não é tão facil paralelizar > >>essa tarefa. > > > > Jah fiz o teste usando um encoder MPEG 1 sem multi-thread.. > > > > > >>No micro HT, coloque no windows e veja se vai gastar 100% de CPU; depois > >>repita no linux. Eu diria que fatalmente ambos vão parar em 50%. E ai? > >>quem é o mais rápido? > > > > Essa nao é a questao.. A questao eh quantas threads tens executando num > > windows para realizar uma tarefa e quantas tens no linux para executar a > > mesma tarefa.. > > Eu não queria entrar no mérito, mas acho que não tem jeito. > processo é diferente de thread, e eu acho que você está confundindo. Não > sou expert no assunto [e o guru mais próximo está bem longe], mas vamos lá: > > ao fazer um 'ps' ou olhar no 'task manager' vc lista os processos, nao > as threads. As threads são sub-divisões dos processos, e correm por > dentro deles. > Paralelizar vários processos é 'facilmente' feito pelo escalonador do > SO, a custa de locks, semaforos, etc. Paralelizar um processo, > utilizando várias threads é em geral complicado, pois afeta diretamente > o algoritmo escolhido e exige formulação das estratégias adequadas. > > A minha duvida reside no fato do que é mais fácil de acontecer: por dois > processos pra rodar ao mesmo tempo, ou fatiar um processo e colocar as > threads pra rodar separadas? E em qual caso vc tem ganho de velocidade > de execução maior? > > > > Exemplo: Ao carregar o windows tens bem poucas threads gerenciando todo > > o ambiente grafico. > > No linux, o ambiente grafico se resume a um grande conjunto de > > programas, por exemplo, gerenciador de janelas, font-server, desktop, > > painel, etc, etc, etc, e cada um com suas n threads.. entende agora o q > > quis dizer? > > > > A natureza do linux eh muito mais paralelizavel do q a do windows, > > portanto uma maquina com linux com HT teria um ganho bem maior em > > comparacao a uma sem HT do q se compararmos a uma maquina com windows > > com HT e sem HT. Fui claro agora na minha explicacao? :) > > Agora tá entendido o seu conceito, só não sei se há relação direta com o > numero de processos (ou threads) rodando com a capacidade de > paralelização como vc assume (e consequente ganho de velocidade). Na verdade, todo esse assunto eh bem complicado e cheio de variaveis.. Acho que somente no final consegui explicar o que estava querendo dizer.. :) -- [] JA Tavares -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

