Numa altura em que os processadores multicore com 4 (e até 8) núcleos se começam a popularizar, e que nos próximos anos provavelmente aumentarão para os 16 e 32, é tempo de começar a utilizá-los.
Para isso a Intel tem feito alguns estudos para promover a adopção de código que utilize dinamicamente o número de cores disponíveis e se ajuste automaticamente.
Ou seja, em vez de termos um CPU "potente" desperdiçado com poucos objectos no ecrã, porque não aumentar o número de objectos na cena - até ao limite máximo que permita manter um framerate aceitável?
É isso que podemos ver em várias demonstrações disponibilizadas pela Intel (com sourcecode completo.)
Por exemplo, nesta demonstração que coloca cavalos a passear pela paisagem, um CPU dual core é capaz de suportar 235 cavalos simultaneamente.
Mas, se corrermos a demonstração num Core i7, com 8 cores, passamos a poder ter quase 600 cavalos.
E o mesmo pode ser aplicado a sistemas de partículas como nesta demo "Smoke":
Deviam era, além destas tentativas de promoção de ambientes multi core, continuar a investir em ambientes multi core...distribuídos!
ResponderEliminarJá devíamos ter algo que permitisse usar threads distribuídas em condições (tal como se tivéssemos a programar localmente)!
Hugz,
Luís
Luis mas isso ja existe.
ResponderEliminaré mt comum qd se ker compilar grandes projectos, em vez de estar tudo num CPU, distribui-se por varios PCs.
@Luis
ResponderEliminarTudo vai nesse sentido. À medida que as latências se reduzem, eventualmente chegaremos ao tempo em que seja "transparente" um processo ser executado num CPU local, ou a milhares de KM de distância.
(Só tens que fazer bem o teu trabalho, para que isso seja cada vez mais potente e simples de usar! ;)