Hlavní navigace

Názor ke zprávičce Posledních pět znaků z každého řádku

  • 12. 1. 2018 21:45

    Vít Šesták

    Kromě zmíněného problému, že jen přesun dat na GPU a zpět je časově náročný (to by neplatilo, kdyby to bylo součástí delšího zpracování, které by probíhalo celé na GPU), tu vidím problém, jak to vhodně paralelizovat na GPU. (Předpokládám, že nemáme žádné zjednodušení jako třeba konstantní délka řádku.):

    1. Hledání konců řádků paralelizovat půjde, ale na GPU se budou těžko zapisovat výsledky. Dostanu různě dlouhé seznamy konců řádků.
    2. Potom bude potřeba dát výsledky dohromady. To už těžko paralelizujete. A bez toho bude GPU krutě pomalá. (Ještě by se to dalo celé odeslat CPU a nechat to na něm, ale to má samozřejmě nároky na přenos dat atd.)
    3. Kód bude nejspíš plný větvení, což GPU nemá ráda. Když se různá vlákna vydají různými směry (jakože se to bude asi dít celkem často), Musejí vlákna, která nejdou touto cestou, čekat na ostatní (a naopak).