Matrix inversion in OpenCL

Ich versuche zu beschleunigen, einige Berechnungen mit OpenCL und Teil des Algorithmus besteht in der Invertierung einer matrix. Gibt es eine open-source-Bibliothek oder frei verfügbare code zur Berechnung lu-Faktorisierung (lapack dgetrf und dgetri) der matrix oder Allgemeine inversion geschrieben in OpenCL oder CUDA? Die matrix ist real und Platz, aber keine anderen speziellen Eigenschaften außerdem. Bisher habe ich es geschafft, nur basic-blas matrix-Vektor-Operationen-Implementierungen auf der gpu.

Die matrix ist ziemlich klein, nur etwa 60-100 Zeilen und Spalten, so könnte es sein, schneller berechnet auf die cpu, aber es wird irgendwie in der Mitte des Algorithmus, so hätte ich es zu übertragen, zu hosten, berechnen Sie die inverse, und übertragen Sie dann das Ergebnis wieder auf das Gerät, wo es dann in viel größeren Berechnungen.

  • Sie sollten auch beachten, dass das invertieren einer matrix eine teure operation sein kann, insbesondere für große Matrizen, und sehr oft gibt es eine alternative Möglichkeit zur Lösung des Problems bei der hand. LU-ZERLEGUNG ist ein "Baustein", dass kann verwendet werden, um zu vermeiden, tun eine echte inverse.
InformationsquelleAutor buchtak | 2010-05-31
Schreibe einen Kommentar