03.04.2013 Views

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

Uma Arquitetura de Suporte a Interações 3D ... - DCA - Unicamp

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

6.1 Testes <strong>de</strong> <strong>de</strong>sempenho 131<br />

Mo<strong>de</strong>lo Somente visualização Ray picking Nossa arquitetura<br />

Chaleira (1.178 vértices) 0,32 76,49 1,066<br />

Esfera (19.802 vértices) 0,32 1351,56 4,967<br />

Chaleira (51.362 vértices) 0,54 3478,27 11,383<br />

Tab. 6.1: Tempo médio <strong>de</strong> ren<strong>de</strong>rização (em milissegundos) <strong>de</strong> mo<strong>de</strong>los <strong>de</strong>formados por funções<br />

senoidais e utilizados para interação segundo o método <strong>de</strong> ray picking e nossa arquitetura.<br />

nada foi composta <strong>de</strong> 1.178 vértices, e a mais refinada foi composta <strong>de</strong> 51.362 vértices. Os atributos<br />

processados neste teste foram os atributos <strong>de</strong> valor <strong>de</strong> profundida<strong>de</strong> (para obtenção da posição <strong>3D</strong>) e<br />

vetor normal. Em nossa arquitetura, o vetor normal foi calculado na GPU. No método <strong>de</strong> ray pick-<br />

ing, este processamento foi realizado na CPU. Os resultados são mostrados na tabela 6.1 e contêm o<br />

tempo total <strong>de</strong> ren<strong>de</strong>rização <strong>de</strong> cada mo<strong>de</strong>lo, em milissegundos. A coluna “Somente visualização”<br />

mostra o tempo <strong>de</strong> ren<strong>de</strong>rização dos mo<strong>de</strong>los apenas para visualização, i.e., sem processamento dos<br />

atributos necessários para interação, mas ainda assim utilizando as funções <strong>de</strong> <strong>de</strong>formação da posição<br />

dos vértices. A coluna “Ray picking” mostra o tempo <strong>de</strong> ren<strong>de</strong>rização juntamente com o tempo <strong>de</strong><br />

execução do algoritmo <strong>de</strong> seleção da biblioteca D<strong>3D</strong>X. A coluna “Nossa arquitetura” mostra o tempo<br />

<strong>de</strong> ren<strong>de</strong>rização quando nossa arquitetura foi utilizada.<br />

Para os três mo<strong>de</strong>los, observamos que o <strong>de</strong>sempenho obtido com nossa arquitetura foi substancial-<br />

mente melhor do que aquele obtido com o método <strong>de</strong> ray picking implementado através das funções<br />

da biblioteca D<strong>3D</strong>X. Isso é esperado, pois o gargalo principal do método baseado na função da bi-<br />

blioteca D<strong>3D</strong>X está em sua limitação <strong>de</strong> usar processamento apenas na CPU, e na necessida<strong>de</strong> <strong>de</strong><br />

recalcular, para cada quadro <strong>de</strong> exibição, o buffer <strong>de</strong> vértices do mo<strong>de</strong>lo <strong>de</strong>formado com base na<br />

geometria original. Nossa arquitetura produz resultados mais eficientes em razão do maior po<strong>de</strong>r<br />

computacional das GPUs, seja para acessar os dados geométricos, seja para ren<strong>de</strong>rizar a geometria<br />

e assim obter os atributos equivalentes aos obtidos dos testes <strong>de</strong> interseção entre a geometria e o<br />

raio <strong>de</strong> seleção. Isso se torna mais evi<strong>de</strong>nte quando se aumenta a complexida<strong>de</strong> do mo<strong>de</strong>lo tratado.<br />

Em particular, as funções <strong>de</strong> <strong>de</strong>formação são executadas na GPU, assim como a estimativa dos ve-<br />

tores normais. O buffer <strong>de</strong> vértices utilizado é sempre aquele da geometria original, e po<strong>de</strong> então ser<br />

armazenado em memória <strong>de</strong> ví<strong>de</strong>o local para ser acessado com maior eficiência.<br />

É razoável supor que o <strong>de</strong>sempenho <strong>de</strong> nossa arquitetura <strong>de</strong>pen<strong>de</strong> da quantida<strong>de</strong> e dos tipos <strong>de</strong><br />

atributos requisitados em cada tarefa <strong>de</strong> manipulação direta, pois quanto maior o número <strong>de</strong> atributos,<br />

maior será o processamento exigido na GPU. Em um primeiro teste para verificar esse comporta-<br />

mento, medimos o tempo <strong>de</strong> processamento <strong>de</strong> diferentes tarefas <strong>de</strong> interação em diferentes mo<strong>de</strong>los<br />

geométricos. Assim como no teste anterior, estes testes foram conduzidos em um computador AMD<br />

Athlon 64 3500+ <strong>de</strong> 2.2GHz e 2GB RAM, equipado com uma placa gráfica NVIDIA GeForce 8800

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!