Por que o método Jacobi é um bom algoritmo candidato para implementar em uma GPU?

5

Eu entendo que a GPU tem centenas de núcleos que podem lidar com milhares de threads de uma só vez e que com a iteração Jacobi você está essencialmente usando os mesmos números repetidamente para atualizar um vetor. É por isso que implementar o método Jacobi em uma GPU é uma boa ideia, especialmente se tivermos um sistema realmente grande, porque temos muitos cálculos redundantes?

Eu acho que não vejo realmente porque o método Jacobi é adequado para uma GPU

    
por user111707 03.12.2014 / 01:20
fonte

2 respostas

2

O algoritmo iterativo de Jacobi calcula cada linha (portanto, cada componente do novo palpite) independentemente .

E exatamente esse é o truque de mágica que está sendo realizado em uma GPU. Uma GPU pode fazer cálculos altamente paralelos .

No Algoritmo Gauss-Seidel (que geralmente converge muito mais rápido), por exemplo, cada linha depende do resultado do cálculo da linha anterior. Assim, tornando muito mal paralelizável e executar terrivelmente em uma GPU.

    
por 15.07.2015 / 11:32
fonte
0

De acordo com Margars, et. al.

The Jacobi iterative algorithms are very good candidates for parallelization …due to being very computationally intensive and inherently divisible into parallel tasks.

Um problema que pode se beneficiar de programação paralela como essa é inerentemente adequado à implementação em GPUs.

    
por 15.07.2015 / 11:21
fonte