Opracowałem już działające rozwiązanie metody elementów skończonych do rozwiązywania problemów związanych z przenoszeniem ciepła za pomocą GPU i OpenCL przy użyciu metody gradientu sprzężonego. Główną wadą tej metody jest duże zapotrzebowanie na pamięć. Co więcej, w przypadku kart graficznych pamięć jest często bardzo ograniczona. Widzę dwie opcje:
- Twórz poddomeny i zamieniaj części siatki za pomocą pamięci hosta
- Stosuj metody wielopłaszczyznowe
Muszę wziąć pod uwagę specyficzną architekturę. Zamiana może być bardzo droga. Metoda CG jest popularna w kontekście obliczeń GPGPU, ale nie mogę znaleźć żadnego porównania między CG a metodami wielopłaszczyznowymi (w przypadku GPGPU). Czy metoda wielopłaszczyznowa może być szybsza niż CG? To jest ogólne pytanie, w rzeczywistości wciąż zależy od wdrożenia.