Framework Dataflow para Computação Paralela de Alto Desempenho Aplicado a Sistemas Lineares Esparsos
Autores
6970 |
3101,44,2048
|
|
6971 |
3101,44,2048
|
|
6972 |
3101,44,2048
|
Informações:
Publicações do PESC
As arquiteturas modernas de HPC vêm crescendo em escala e complexidade, tornando o desenvolvimento de algoritmos eficientes cada vez mais desafiador nessas arquiteturas. O paradigma dataflow, modelo de programação em que a computação é descrita como um grafo direcionado que representa o fluxo de dados (arestas) entre as tarefas a serem executadas (vértices), tem grande potencial para simplificar o desenvolvimento de aplicações paralelas. Esse modelo já foi amplamente estudado em arquiteturas de memória compartilhada, e, mais recentemente, vem suscitando estudos em arquiteturas distribuídas e heterogêneas. No entanto, ainda existem poucos trabalhos em HPC para álgebra linear esparsa envolvendo esse paradigma. Este trabalho apresenta um framework dataflow distribuído aplicado a núcleos de álgebra linear esparsa. O objetivo do framework é conciliar ganhos de produtividade na implementação de algoritmos paralelos com boa performance. Foram realizados testes extensivos, com até 2000 processos, comparando o desempenho de núcleos selecionados (incluindo um produto triplo de matrizes esparsas de larga escala) com o PETSc.
The modern HPC architectures are growing in scale and complexity, making the development of efficient algorithms increasingly challenging in these architectures. The dataflow paradigm, a programming model in which computing is described as a directed graph that represents the data flow (edges) between the tasks to be executed (vertices), has great potential to simplify the development of parallel applications. This model has already been extensively studied in shared memory architectures, and, more recently, it has given rise to studies in distributed and heterogeneous architectures. However, there are still few studies on HPC for sparse linear algebra involving this paradigm. This work presents a distributed dataflow framework applied to sparse linear algebra kernels. The objective of the framework is to reconcile productivity gains in the implementation of parallel algorithms with good performance. Extensive tests were carried out, with up to 2000 processes, comparing the performance of selected kernels (including a triple product of sparse matrices of large scale) with PETSc.