Utilize este link para identificar ou citar este item: https://bdm.unb.br/handle/10483/31196
Arquivos neste item:
Arquivo Descrição TamanhoFormato 
2021_GabrielPatrickMourao_NurCorezzi_tcc.pdf2,52 MBAdobe PDFver/abrir
Título: Estudo e análise de algoritmos para o problema do produtor único e consumidor único
Autor(es): Mourão, Gabriel Patrick Alcantara
Corezzi, Nur
Orientador(es): Alchieri, Eduardo Adilio Pelinson
Assunto: Programação (Computadores)
Memória (Computação)
Algoritmos
Data de apresentação: 26-Out-2021
Data de publicação: 26-Jun-2022
Referência: MOURÃO, Gabriel Patrick Alcantara; COREZZI, Nur. Estudo e análise de algoritmos para o problema do produtor único e consumidor único. 2021. xiv, 71 f., il. Trabalho de conclusão de curso (Bacharelado em Ciência da Computação) — Universidade de Brasília, Brasília, 2021.
Resumo: O problema do produtor e consumidor é um exemplo clássico de sincronização em buffers com capacidade de armazenamento limitada. Múltiplos produtores e consumidores podem cooperar acessando uma região de memória compartilhada para troca de dados. Ao se reduzir o problema para um único produtor e um único consumidor é possível aplicar soluções que utilizem mecanismos de sincronização mais eficientes do que as alternativas bloqueantes. Neste contexto é importante compreender o funcionamento destes mecanismos e o porquê apresentam os ganhos observados em máquinas modernas com múltiplos núcleos. Trabalhos atuais não oferecem comparações entre os algoritmos bloqueantes e não bloqueantes além de não considerarem suas otimizações mais atuais. Neste trabalho, experimentos foram efetuados em máquinas com múltiplas unidades de processamento para entender como os algoritmos podem se comportar, principalmente em ambientes que reflitam o contexto atual de uso em massa de programas concorrentes em nuvem.
Abstract: The producer-consumer problem is a classical example of a bounded buffer synchronization problem. Multiple producers and consumers can cooperate by accessing a shared memory region to exchange data. By reducing the problem to a single producer and a single consumer, it is possible to apply solutions that use more efficient synchronization mechanisms than blocking alternatives. In this context, it is important to understand how these mechanisms work and why they present the gains observed in modern machines with multiple cores. Current papers do not make comparisons between blocking and non-blocking algorithms in addition to not considering their optimizations. In this work, experiments were conducted on machines with multiple processing units to understand how algorithms behave, especially in environments that reflect the current context of the massive use of concurrent cloud programs.
Informações adicionais: Trabalho de conclusão de curso (graduação) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2021.
Licença: A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.
Aparece na Coleção:Ciência da Computação



Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.