.... pole cca 90 mil * 90 mil prvků
Jestli je to "plné", tak to máš 8 Pb (8000 Tb) a s tím ti asi žádná GPU nepomůže.
[/quote]
Je to bitové pole 0/1, okraje bývají prázdné a tak velké to není, na 80TB storage mám jednu stávající zkomprimovanou verzi a "přitéká" aktuální, potřebuji tu stávající kopii zahodit dřív, než dojde místo. Pokud jí zahodím, nic se nestane, signalizuje se reset a začne se zapisovat nový snímek, problém s CPU je, že se ty snímky zahazují až příliš často, resp. se jich vyhodnotí podstatně méně, než by mi bylo milé. Nejprve jsem zkoušel použít AVX, což není tak těžké, ale výkon vzrostl řádově, já potřebuji tak o pět řádů.
pokud nemáš zkušenosti, doporučuji se mrknout na tensorflow, umí gpu i cpu. Psát to low level v Cudě nebo OpenCL může být na dlouho. Pokud nemáš zkušenosti s vývojem nad GPU, raději si pronajmi pár mašin a udři to na nich.
Práce nad maticemi lze dobře škálovat nebo rozložit. Mrkni ještě na Spark a Scalu, mají implementované distribuované práce s maticemi, komprimování sturktur atd.
Koukají z toho do budoucna €, když to udělám hrubou silou, € půjdou do nákupu hrubé síly a ne mě, CUDA i OpenCL se zvládnu naučit, resp. za danou částku to udělám velmi rád.
Doplnění:
Zdá se mi, že CUDA má lepší učící křivku, že bych mohl dostat kýžený výsledek o poznání jednodušeji/dřív.
A jestli si s tím mám pak ještě půl roku hrát, abych znovu zvedl rychlost, proč ne.