2
Linguagens de Programação
UMG
11
Linguagens de Programação
UMG
4
Linguagens de Programação
UMG
8
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
2
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
2
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
Texto de pré-visualização
Exercício de Programação Paralela usando Recursos da Biblioteca TPL em C Processamento Paralelo em Jogos Digitais Objetivo O objetivo deste exercício é explorar e aplicar conceitos de programação paralela usando os recursos da biblioteca TPL Parallel Library em um cenário de desenvolvimento de jogo Vocês devem analisar o código sequencial que simula a lógica de alguns métod os de um jogo e identificar oportunidades para paralelizar operações visando melhorar o desempenho e a fluidez do jogo Cenário Você recebeu um código sequencial que simula alguns métodos que podem fazer parte da mecânica de um jogo simples O jogo en volve a movimentação de jogadores em um cenário o controle de tempo da fase atualizações de música de fundo cálculo de danos nos personagens etc O código atual funciona corretamente mas pode ser otimizado para aproveitar melhor os recursos do processa dor e proporcionar uma experiência mais fluida Tarefas Análise do Código Sequencial Estude o código sequencial fornecido e compreenda a proposta de cada método e como eles estão inseridos na mecânica do jogo Identifique partes do código que possa m ser candidatas à paralelização Considere operações que podem ser executadas de forma independente e em paralelo Identificação de Oportunidades de Paralelização Liste as operações identificadas que podem ser paralelizadas Indique qual recurso da TPL ParallelInvoke ParallelFor ou ParallelForEach você acredita ser mais adequado para cada operação Implementação da Versão Paralela Para cada operação identificada altere o código sequencial para criar uma versão parale la usando o recurso da TPL que você considerou mais apropriado Assegurese de que a lógica da operação paralela esteja correta e que não haja conflitos de acesso a recursos compartilhados Testes e Avaliação de Desempenho Realize testes comparativos e ntre a versão sequencial e a versão paralela do código Meça e compare o tempo de execução de cada versão para verificar se houve ganhos significativos de desempenho O código sequencial já possui monitores de tempo para fazer essa medição stopwatch Documentação e Reflexão Documente as alterações feitas no código destacando as partes que foram paralelizadas Faça uma reflexão sobre os resultados obtidos Houve melhorias significativas no desempenho A paralelização foi bemsucedida Discuta com se u grupo e escreva suas conclusões Entrega Cada grupo deve entregar um relatório em PDF contendo Uma análise das oportunidades de paralelização identificadas O código paralelo implementado para cada operação Um print com as saídas geradas a partir da execução do código paralelo Resultados dos testes de desempenho tempo de execução comparativo gráfico ou tabela ou texto comparando os tempos da versão sequencial vs paralela Uma reflexão sobre a eficácia da paralelização promovida No Teams além de postar o relatório PDF o código fonte paralelo cs também deve ser enviado Apenas um aluno do grupo precisa postar coloque o nome dos integrantes no relatório e no cabeçalho do código como comentário Observações Certifiquese de manter a lógica do jogo inalterada apenas aplicando a paralelização nas partes identificada s como candidatas Lembrese de adicionar comentários no código para explicar as partes mais relevantes Mantenha um controle de versão do projeto para acompanhar as alterações feitas Nota Este exercício tem como objetivo promover a compreensão e ap licação de conceitos de programação paralela em um contexto prático de desenvolvimento de jogos A ideia é que vocês possam experimentar e explorar diferentes estratégias de paralelização para obter os melhores resultados O design do personagem Pac Man foi inspirado em uma pizza com uma fatia faltando A primeira profissão de Mario Bros não foi como encanador e sim carpinteiro no jogo Donkey Kong Naquela época ele se c hamava Jumpman O design do personagem Pac Man foi inspirado em uma pizza com uma fatia faltando A primeira profissão de Mario Bros não foi como encanador e sim carpinteiro no jogo Donkey Kong Naquela época ele se c hamava Jumpman
2
Linguagens de Programação
UMG
11
Linguagens de Programação
UMG
4
Linguagens de Programação
UMG
8
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
2
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
2
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
1
Linguagens de Programação
UMG
Texto de pré-visualização
Exercício de Programação Paralela usando Recursos da Biblioteca TPL em C Processamento Paralelo em Jogos Digitais Objetivo O objetivo deste exercício é explorar e aplicar conceitos de programação paralela usando os recursos da biblioteca TPL Parallel Library em um cenário de desenvolvimento de jogo Vocês devem analisar o código sequencial que simula a lógica de alguns métod os de um jogo e identificar oportunidades para paralelizar operações visando melhorar o desempenho e a fluidez do jogo Cenário Você recebeu um código sequencial que simula alguns métodos que podem fazer parte da mecânica de um jogo simples O jogo en volve a movimentação de jogadores em um cenário o controle de tempo da fase atualizações de música de fundo cálculo de danos nos personagens etc O código atual funciona corretamente mas pode ser otimizado para aproveitar melhor os recursos do processa dor e proporcionar uma experiência mais fluida Tarefas Análise do Código Sequencial Estude o código sequencial fornecido e compreenda a proposta de cada método e como eles estão inseridos na mecânica do jogo Identifique partes do código que possa m ser candidatas à paralelização Considere operações que podem ser executadas de forma independente e em paralelo Identificação de Oportunidades de Paralelização Liste as operações identificadas que podem ser paralelizadas Indique qual recurso da TPL ParallelInvoke ParallelFor ou ParallelForEach você acredita ser mais adequado para cada operação Implementação da Versão Paralela Para cada operação identificada altere o código sequencial para criar uma versão parale la usando o recurso da TPL que você considerou mais apropriado Assegurese de que a lógica da operação paralela esteja correta e que não haja conflitos de acesso a recursos compartilhados Testes e Avaliação de Desempenho Realize testes comparativos e ntre a versão sequencial e a versão paralela do código Meça e compare o tempo de execução de cada versão para verificar se houve ganhos significativos de desempenho O código sequencial já possui monitores de tempo para fazer essa medição stopwatch Documentação e Reflexão Documente as alterações feitas no código destacando as partes que foram paralelizadas Faça uma reflexão sobre os resultados obtidos Houve melhorias significativas no desempenho A paralelização foi bemsucedida Discuta com se u grupo e escreva suas conclusões Entrega Cada grupo deve entregar um relatório em PDF contendo Uma análise das oportunidades de paralelização identificadas O código paralelo implementado para cada operação Um print com as saídas geradas a partir da execução do código paralelo Resultados dos testes de desempenho tempo de execução comparativo gráfico ou tabela ou texto comparando os tempos da versão sequencial vs paralela Uma reflexão sobre a eficácia da paralelização promovida No Teams além de postar o relatório PDF o código fonte paralelo cs também deve ser enviado Apenas um aluno do grupo precisa postar coloque o nome dos integrantes no relatório e no cabeçalho do código como comentário Observações Certifiquese de manter a lógica do jogo inalterada apenas aplicando a paralelização nas partes identificada s como candidatas Lembrese de adicionar comentários no código para explicar as partes mais relevantes Mantenha um controle de versão do projeto para acompanhar as alterações feitas Nota Este exercício tem como objetivo promover a compreensão e ap licação de conceitos de programação paralela em um contexto prático de desenvolvimento de jogos A ideia é que vocês possam experimentar e explorar diferentes estratégias de paralelização para obter os melhores resultados O design do personagem Pac Man foi inspirado em uma pizza com uma fatia faltando A primeira profissão de Mario Bros não foi como encanador e sim carpinteiro no jogo Donkey Kong Naquela época ele se c hamava Jumpman O design do personagem Pac Man foi inspirado em uma pizza com uma fatia faltando A primeira profissão de Mario Bros não foi como encanador e sim carpinteiro no jogo Donkey Kong Naquela época ele se c hamava Jumpman