Testing Vulkan pattern perfomance with path-tracing

Detalhes bibliográficos
Autor(a) principal: Ferreira, Miguel Ângelo Crespo
Data de Publicação: 2019
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10773/28622
Resumo: Performance and low overhead are the selling points of modern graphics APIs, such as Vulkan API, when compared to previous versions. However, these come with added complexity over previous APIs. Understanding all involved API elements takes time and, sometimes, there is no clear perception of the bene ts and drawbacks in each. The thesis focus is to draw a clear view of a subset of Vulkan patterns and layout their pros and cons. The thesis features a path-tracer implemented in Vulkan uniquely out of Compute shaders. It is used to evaluate multi-threading, command scheduling and memory management e ects with a consistent test method. Furthermore, it also features a set of guidelines and abstractions created from Vulkan's work experience. These can be used to atten other API users learning curve or provide some improvement lines on existing applications.
id RCAP_3eb1b6690d16e18dc0550a8f5b0bec15
oai_identifier_str oai:ria.ua.pt:10773/28622
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Testing Vulkan pattern perfomance with path-tracingVulkanPath-tracingThreadingMemoryCompute shadersGuidelinesPerformance and low overhead are the selling points of modern graphics APIs, such as Vulkan API, when compared to previous versions. However, these come with added complexity over previous APIs. Understanding all involved API elements takes time and, sometimes, there is no clear perception of the bene ts and drawbacks in each. The thesis focus is to draw a clear view of a subset of Vulkan patterns and layout their pros and cons. The thesis features a path-tracer implemented in Vulkan uniquely out of Compute shaders. It is used to evaluate multi-threading, command scheduling and memory management e ects with a consistent test method. Furthermore, it also features a set of guidelines and abstractions created from Vulkan's work experience. These can be used to atten other API users learning curve or provide some improvement lines on existing applications.Desempenho e baixo consumo são as vantagens dadas pelas API gráficas modernas, como a API Vulkan, quando comparadas com as versões anteriores. Em contrapartida, também oferecem um maior grau de complexidade. É preciso tempo para perceber todos os elementos envolvidos, como também nem sempre é percetível quais os benefícios e perdas do uso desses mesmos elementos. O foco da dissertação é criar uma perspetiva nítida das vantagens e desvantagens em torno de determinados padrões em Vulkan. Esta dissertação avalia os efeitos de multi-threading, ordem de comandos e manipulação de memória, com base num método consistente, via um pathtracer feito unicamente de Compute shaders com Vulkan. Ainda junta toda a experiência de uso e conclusões num conjunto de guias e abstrações, a fim de ajudar a reduzir a curva de aprendizagem ou dar ideias sobre possíveis melhorias em aplicações existentes.2020-06-03T02:00:13Z2019-12-01T00:00:00Z2019-12info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10773/28622engFerreira, Miguel Ângelo Crespoinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-02-22T11:55:22Zoai:ria.ua.pt:10773/28622Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T03:01:07.450633Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Testing Vulkan pattern perfomance with path-tracing
title Testing Vulkan pattern perfomance with path-tracing
spellingShingle Testing Vulkan pattern perfomance with path-tracing
Ferreira, Miguel Ângelo Crespo
Vulkan
Path-tracing
Threading
Memory
Compute shaders
Guidelines
title_short Testing Vulkan pattern perfomance with path-tracing
title_full Testing Vulkan pattern perfomance with path-tracing
title_fullStr Testing Vulkan pattern perfomance with path-tracing
title_full_unstemmed Testing Vulkan pattern perfomance with path-tracing
title_sort Testing Vulkan pattern perfomance with path-tracing
author Ferreira, Miguel Ângelo Crespo
author_facet Ferreira, Miguel Ângelo Crespo
author_role author
dc.contributor.author.fl_str_mv Ferreira, Miguel Ângelo Crespo
dc.subject.por.fl_str_mv Vulkan
Path-tracing
Threading
Memory
Compute shaders
Guidelines
topic Vulkan
Path-tracing
Threading
Memory
Compute shaders
Guidelines
description Performance and low overhead are the selling points of modern graphics APIs, such as Vulkan API, when compared to previous versions. However, these come with added complexity over previous APIs. Understanding all involved API elements takes time and, sometimes, there is no clear perception of the bene ts and drawbacks in each. The thesis focus is to draw a clear view of a subset of Vulkan patterns and layout their pros and cons. The thesis features a path-tracer implemented in Vulkan uniquely out of Compute shaders. It is used to evaluate multi-threading, command scheduling and memory management e ects with a consistent test method. Furthermore, it also features a set of guidelines and abstractions created from Vulkan's work experience. These can be used to atten other API users learning curve or provide some improvement lines on existing applications.
publishDate 2019
dc.date.none.fl_str_mv 2019-12-01T00:00:00Z
2019-12
2020-06-03T02:00:13Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10773/28622
url http://hdl.handle.net/10773/28622
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799137667015770112