A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Estudo da aplicação jogos em sistemas embarcados CMP502 Sistemas Embarcados Renato Fernandes Hentschke

Apresentações semelhantes


Apresentação em tema: "Estudo da aplicação jogos em sistemas embarcados CMP502 Sistemas Embarcados Renato Fernandes Hentschke"— Transcrição da apresentação:

1 Estudo da aplicação jogos em sistemas embarcados CMP502 Sistemas Embarcados Renato Fernandes Hentschke

2 Estudo de caso: jogo Outgun Apresentação do jogo (porque é bom para sistemas embarcados) Dados do programa (estáticos) Dados de execução (dinâmicos) Dados de profiling (% da CPU em grafico, sons, lógica, etc...) Soluções arquiteturais usadas no playstation 2 Arquitetura do processador principal Dados sobre os demais processadores Outline 2 partes: estudo de caso e arquitetura do Playstation 2 Introdução: programação de jogos

3 Introdução: Programação de Jogos Inicialização Leitura de dados Lógica do Jogo Saída Loop, controlado por timer. Ex: 20ms. Se loop terminar antes, libera a CPU para o SO. Crítico! Renderização da tela. Deadline Soft Real Time Timer garante que velocidade do jogo é independente de processador.

4 Render 2D x 3D Utilizam-se dois processos de renderização de jogos: 2D: Utilizam-se sprites (bitmaps), retângulos, círculos, etc... 3D: Utilizam objetos tridimensionais, necessitando de grande quantidade de processamento para cálculos de coordenadas, iluminação, etc... Nos computadores PC, este tipo de renderização é feita em hardware (processador dedicado). Por esta razão, mesmo os jogos mais simples estão migrando para representação tridimensional para acelerar a etapa de renderização.

5 1000 usuários cadastrados (em 6 meses de jogo) Partidas de pequena duração Graficos Simples (2D) Sons simples Pouco uso de CPU Pouco uso de Rede Jogo Outgun

6 Tamanho do código fonte (em C++): linhas Tamanho do executável: 262 Kbytes Allegro (biblioteca gráficos/sons): 223kBytes Hawknl (biblioteca rede): 48KBytes Pthreads: 110 KBytes Informações Estáticas

7 Executado em um PC/Pentium III 1GHz (1000 Mips) Internal Clock : MHz System Bus : MHz System Clock : MHz L1 I-Cache : 16K Byte L1 D-Cache : 16K Byte L2 Cache : 256K Byte Instruct.Cache : 16K byte cache size 4-way set associative 32 byte line size Instruct. TLB : 4K byte pages 4-way set associative 32 entries : 4M byte pages fully associative 2 entries Data Cache : 16K byte cache size 4-way set associative 32 byte line size Data TLB : 4K byte pages 4-way set associative 64 entries : 4M byte pages fully associative 8 entries [L2 Information] Level 2 Cache : 256K byte cache size 8-way set associative 32 byte line size Informações Dinâmicas – PC utilizado

8 30 FPS ( Frames por segundo) Uso de CPU: pico de 30%, média de 20% (dado fornecido pelo sistema operacional Win2K) Uso de memória (dados + programa) : 8Mb (fácil de reduzir pela metade, segundo o programador) Uso de banda de internet: 1-2Kbytes por segundo (é possível de reduzir usando algumas técnicas simples) Profiling: 90% do tempo é gasto em rotinas gráficas! Tempo de rotinas de som é despresível (som em formato wav, sendo que há um processador dedicado na placa de som) Informações Dinâmicas

9 PlayStation 2 Figuras, slides e informações gentilmente cedidas por:

10 PlayStation 2 Domínio de aplicação: Jogos pesados e com muitos recursos gráficos. Diferente do outgun. A solução arquitetural para este tipo de jogo é de utilizar diversos processadores separados (gráficos, lógica, sons, etc..) do jogo. No PC, por exemplo, as placas 3D permitem que jogos deste tipo tenham desempenho satisfatório.

11 Arquitetura PlayStation 2

12 Emotion Engine – Proc. Principal

13

14 (GS) - Processador Gráfico Clock: 150MHz Embedded DRAM (cache):4Mb Pixel fill rate2.4GPixel/sec

15 Processador Som -2 Cores DSP! - 2Mb Memória

16 Conclusões -Jogos demandam muito processamento gráfico (tanto os mais simples quanto os mais sofisticados). -Jogos como Outgun possuem desempenho satisfatório em arquiteturas com um processador somente (PC). - O uso de memória do Outgun é de 8 Mb. Jogos mais complexos tipicamente consomem muito mais memória. -Processamento gráfico de jogos modernos (3D) tipicamente é realizado em processador dedicado. - Processamento de som pode ser realizado em processadores dedicados (como no PS2). No caso do Outgun, o som é armazenado em formato wav, dispensando decodificação de som (porém requer mais memória). - A arquitetura do playstation 2 divide as tarefas de processamento entre diversos processadores.


Carregar ppt "Estudo da aplicação jogos em sistemas embarcados CMP502 Sistemas Embarcados Renato Fernandes Hentschke"

Apresentações semelhantes


Anúncios Google