Witam,
jestem w trakcie pisania pracy magisterskiej o temacie "Zwiększenie wydajności obliczeń z wykorzystaniem GPGPU", jednakże stanąłem w pewnym miejscu i ciężko poruszyć się dalej.
Otóż, poszukuję algorytm / problem, które się da w miarę dobrze zrównoleglić i pozwoli pokazać wyższość GPU nad standardowym rozwiązaniem CPU. Program będzie napisany z wykorzystaniem CUDA API w C/C++.
Algorytm / problem powinien mieć następujące cechy:
- algorytm (fragmenty) można podzielić na około 1000 - 10000 wątków
- liczbę wątków można określić przed wykonaniem podstawowej części programu
- liczba rozgałęzień wątków jest minimalna
- wykonywane są obliczenia zarówno na typach całkowitych jak i zmiennoprzecinkowych
- dobrze, gdyby były wykonywane operacje na macierzach
Wiem, że dużo takich algorytmów jest związanych z przetwarzaniem obrazów, jednakże chciałbym ja pominąć, ze względu na konieczność nauki OpenGL czy też DirectX.
Z góry będę wdzięczny za wszelkie propozycje!!!