Heyas, Também estou curioso quanto aos novos modelos de threads, teóricamente o NTPL encaixa-se melhor no scheduler do linux(2.5.*,2.6) uma vez que o scheduler é O(1) Portanto, como temos um scheduler bom como tudo, podemos dar-nos ao luxo de ter um modelo 1:1 para threading. O problema surge quando tens aplicações c/ uso massivo de threads, polling de threads etc.. mas em que apenas uma curta percentagem delas é que estão a trabalhar, neste caso tens o kernel a gerir centenas de milhares de threads inutilmente( e a ocupar kernel space abusivamente) e um modelo N:M terá melhor performance, pois só terá algumas threads a correr no kernel.(comprova-se pelos ultimos testes que vi, onde o modelo NGPT lidava melhor com grandes quantidades de threads) Anyway, e como alguns kernel hackers dizem, qualquer aplicação com estas caracteristicas de milhares de threads ou tem uma muito boa razão para fazer isto, ou está mal concebida. De qualquer maneira ambas as tecnologias estão a fazer grandes progressos, e a tirar proveito das inovações a afinações que se têm feito no kernel 2.5.*. A concorrência é uma coisa saudável, ambas as duas tecnologias estão a ir mais longe por terem concorrência... viu-se bem pela ultima release do NGPT)(v2.2.0), que eu pensava já estar arrumada.. depois de ver testes à coisa de 6 meses onde o NLPT lhe dava um bailinho da madeira... Que ganhe a melhor... a mim é me indiferente, gosto mais da filosofia KISS, mas prefiro performance a design bonito. Miguel F. M. de Sousa Filipe handle: m3thos More Human than Human.
|