Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU

Detalhes bibliográficos
Autor(a) principal: Silva, Ricardo Inácio Álvares e
Data de Publicação: 2024
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UEL
Texto Completo: https://repositorio.uel.br/handle/123456789/13806
Resumo: Resumo: Este trabalho desenvolve dois algoritmos para decomposição de multiplicação matricial geral (GEMM, do inglês General Matrix Multiplication) em tarefas menores, adequadas à distribuição entre processadores disponíveis em sistemas heterogêneos, como CPUs e GPUs, que têm como objetivo a escalabilidade de desempenho Um dos algoritmos gera tarefas que são multiplicações matriciais menores, independentes entre si, mas com redundância de dados nas transferências entre os processadores O trabalho mostra que esse algoritmo também pode ser utilizado para explorar recursos de GPUs como a sobreposição de operações de transferências e execução de kernels Já o outro algoritmo decompõe multiplicações matriciais em três grupos de tarefas, sendo dois de multiplicações menores e um de somas vetoriais Demonstra-se que apesar das tarefas possuírem independência apenas parcial, podem ser organizadas de tal forma a serem resolvidas concorrentemente Este algoritmo também prevê a viabilidade de redução nas transferências de memória entre os processadores e evita redundância nas transferências de dados O trabalho ainda mostra que tais características são desejáveis para sistemas computacionais heterogêneos baseados em computação de propósito geral na unidade de processamento gráfico (GPGPU, do inglês General Purpose computing on GPU) Por fim, o trabalho apresenta implementações dos algoritmos propostos e seus respectivos desempenhos A experimentação mostra que, em um sistema com duas GPUs, os algoritmos podem melhorar o desempenho de multiplicações em 5%, para matrizes de dimensão 1?1, até acima de 1%, para 4?4 adiante
id UEL_8c962632fcacaf4c5d3790d012450453
oai_identifier_str oai:repositorio.uel.br:123456789/13806
network_acronym_str UEL
network_name_str Repositório Institucional da UEL
repository_id_str
spelling Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPUProgramação paralela (Computação)Processamento paralelo (Computadores)Álgebra linearProcessamento de dadosSistemas operacionais distribuídos (Computadores)Parallel programming (Computer science)Parallel processing (Electronic computers)AlgebResumo: Este trabalho desenvolve dois algoritmos para decomposição de multiplicação matricial geral (GEMM, do inglês General Matrix Multiplication) em tarefas menores, adequadas à distribuição entre processadores disponíveis em sistemas heterogêneos, como CPUs e GPUs, que têm como objetivo a escalabilidade de desempenho Um dos algoritmos gera tarefas que são multiplicações matriciais menores, independentes entre si, mas com redundância de dados nas transferências entre os processadores O trabalho mostra que esse algoritmo também pode ser utilizado para explorar recursos de GPUs como a sobreposição de operações de transferências e execução de kernels Já o outro algoritmo decompõe multiplicações matriciais em três grupos de tarefas, sendo dois de multiplicações menores e um de somas vetoriais Demonstra-se que apesar das tarefas possuírem independência apenas parcial, podem ser organizadas de tal forma a serem resolvidas concorrentemente Este algoritmo também prevê a viabilidade de redução nas transferências de memória entre os processadores e evita redundância nas transferências de dados O trabalho ainda mostra que tais características são desejáveis para sistemas computacionais heterogêneos baseados em computação de propósito geral na unidade de processamento gráfico (GPGPU, do inglês General Purpose computing on GPU) Por fim, o trabalho apresenta implementações dos algoritmos propostos e seus respectivos desempenhos A experimentação mostra que, em um sistema com duas GPUs, os algoritmos podem melhorar o desempenho de multiplicações em 5%, para matrizes de dimensão 1?1, até acima de 1%, para 4?4 adianteDissertação (Mestrado em Ciência da Computação) - Universidade Estadual de Londrina, Centro de Ciências Exatas, Programa de Pós-Graduação em Ciência da ComputaçãoAbstract: In this work, we developed two algorithms for decomposing a general matrix multiplication (GEMM) into smaller tasks, adequate to distribution between available processors in heterogeneous systems, such as CPUs and GPUs, that have performance scalability as its main objective One of the algorithms generates independent smaller matrix multiplication tasks, but with redundancy in data transfers between processors We show that this algorithm can utilize GPUs features such as overlapping of memory transfers and kernel executions The other algorithm presented decomposes matrix multiplications in three groups of tasks, two being smaller multiplications and, the other, vectorial sums We show that although the independence of these tasks being only partial, they can be organized in such a way that are able to be solved concurrently This algorithm also provides reduction in memory transfers between processors and avoids redundancy We also show that such features are desirable in heterogeneous systems based in general purpose computing in GPU (GPGPU) Finally, we show implementations to the proposed algorithms and their respective performance Experimentation shows that, in a system with two GPUs, they can improve matrix multiplication performance by 5%, for matrix dimensions from 1?1, up to over 1%, for 4?4 and onBrancher, Jacques Duílio [Orientador]Zarpelão, Bruno BogazAttrot, WesleyRomeiro, Neyva Maria LopesSilva, Ricardo Inácio Álvares e2024-05-01T14:19:05Z2024-05-01T14:19:05Z2013.0020.02.2013info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://repositorio.uel.br/handle/123456789/13806porMestradoCiência da ComputaçãoCentro de Ciências ExatasPrograma de Pós-Graduação em Ciência da ComputaçãoLondrinareponame:Repositório Institucional da UELinstname:Universidade Estadual de Londrina (UEL)instacron:UELinfo:eu-repo/semantics/openAccess2024-07-12T04:19:48Zoai:repositorio.uel.br:123456789/13806Biblioteca Digital de Teses e Dissertaçõeshttp://www.bibliotecadigital.uel.br/PUBhttp://www.bibliotecadigital.uel.br/OAI/oai2.phpbcuel@uel.br||opendoar:2024-07-12T04:19:48Repositório Institucional da UEL - Universidade Estadual de Londrina (UEL)false
dc.title.none.fl_str_mv Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
title Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
spellingShingle Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
Silva, Ricardo Inácio Álvares e
Programação paralela (Computação)
Processamento paralelo (Computadores)
Álgebra linear
Processamento de dados
Sistemas operacionais distribuídos (Computadores)
Parallel programming (Computer science)
Parallel processing (Electronic computers)
Algeb
title_short Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
title_full Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
title_fullStr Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
title_full_unstemmed Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
title_sort Decomposição de multiplicação matricial em tarefas adequadas a ambientes heterogêneos baseados em GPGPU
author Silva, Ricardo Inácio Álvares e
author_facet Silva, Ricardo Inácio Álvares e
author_role author
dc.contributor.none.fl_str_mv Brancher, Jacques Duílio [Orientador]
Zarpelão, Bruno Bogaz
Attrot, Wesley
Romeiro, Neyva Maria Lopes
dc.contributor.author.fl_str_mv Silva, Ricardo Inácio Álvares e
dc.subject.por.fl_str_mv Programação paralela (Computação)
Processamento paralelo (Computadores)
Álgebra linear
Processamento de dados
Sistemas operacionais distribuídos (Computadores)
Parallel programming (Computer science)
Parallel processing (Electronic computers)
Algeb
topic Programação paralela (Computação)
Processamento paralelo (Computadores)
Álgebra linear
Processamento de dados
Sistemas operacionais distribuídos (Computadores)
Parallel programming (Computer science)
Parallel processing (Electronic computers)
Algeb
description Resumo: Este trabalho desenvolve dois algoritmos para decomposição de multiplicação matricial geral (GEMM, do inglês General Matrix Multiplication) em tarefas menores, adequadas à distribuição entre processadores disponíveis em sistemas heterogêneos, como CPUs e GPUs, que têm como objetivo a escalabilidade de desempenho Um dos algoritmos gera tarefas que são multiplicações matriciais menores, independentes entre si, mas com redundância de dados nas transferências entre os processadores O trabalho mostra que esse algoritmo também pode ser utilizado para explorar recursos de GPUs como a sobreposição de operações de transferências e execução de kernels Já o outro algoritmo decompõe multiplicações matriciais em três grupos de tarefas, sendo dois de multiplicações menores e um de somas vetoriais Demonstra-se que apesar das tarefas possuírem independência apenas parcial, podem ser organizadas de tal forma a serem resolvidas concorrentemente Este algoritmo também prevê a viabilidade de redução nas transferências de memória entre os processadores e evita redundância nas transferências de dados O trabalho ainda mostra que tais características são desejáveis para sistemas computacionais heterogêneos baseados em computação de propósito geral na unidade de processamento gráfico (GPGPU, do inglês General Purpose computing on GPU) Por fim, o trabalho apresenta implementações dos algoritmos propostos e seus respectivos desempenhos A experimentação mostra que, em um sistema com duas GPUs, os algoritmos podem melhorar o desempenho de multiplicações em 5%, para matrizes de dimensão 1?1, até acima de 1%, para 4?4 adiante
publishDate 2024
dc.date.none.fl_str_mv 20.02.2013
2013.00
2024-05-01T14:19:05Z
2024-05-01T14:19:05Z
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 https://repositorio.uel.br/handle/123456789/13806
url https://repositorio.uel.br/handle/123456789/13806
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv Mestrado
Ciência da Computação
Centro de Ciências Exatas
Programa de Pós-Graduação em Ciência da Computação
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.coverage.none.fl_str_mv Londrina
dc.source.none.fl_str_mv reponame:Repositório Institucional da UEL
instname:Universidade Estadual de Londrina (UEL)
instacron:UEL
instname_str Universidade Estadual de Londrina (UEL)
instacron_str UEL
institution UEL
reponame_str Repositório Institucional da UEL
collection Repositório Institucional da UEL
repository.name.fl_str_mv Repositório Institucional da UEL - Universidade Estadual de Londrina (UEL)
repository.mail.fl_str_mv bcuel@uel.br||
_version_ 1809823256417402880