Stránka 1 z 1

Knihovna - slepá ulička?

Napsal: 03-02-2018 18:59
od FeelaV
Zdravím,

Našel jsem zde témata o knihovně, kde se řešil 1) vstup a 2) paměť. Mám 3. otázku, dá se knihovna vyřešit pouze na procesoru, nebo bych měl začít experimentovat s OpenCl/CUDA?

Mé první řešení spotřebovalo ohromné množství paměti a neprošli přes těžké vstupy, trvalo to pár sekund. Optimalizoval jsem to a přepsal do druhého řešení, které sice používalo pár MB paměti, ale trvalo mu to přes půl hodiny a nedostalo se to přes těžké zadání. Přepsal jsem to do třetí verze, která spotřebuje pár desítek MB, trvá jí to pár vteřin a pomalu ale jistě chroustá i těžké zadání (cca 6h). Nevím jak moc tu mohu hovořit o svém řešení (i když to technicky moc řešení není) .

Tedy: Když slova porovnávaná slova ukládám v celku, exploduje paměť. Když je komprimuji, vyhoří to na počtu operací na statisícovém slovu, nebo při použití kryptografické funkce na době alokování paměti. Nevím jestli se vůbec vydávám správným směrem, měl bych se zaměřit na masivní paralelizaci? Obejít alokování paměti pomocí unsafe kódu? Pracuji v C#, nejlépe by mi posloužila rada která by mě nasměrovala.

Re: Knihovna - slepá ulička?

Napsal: 04-02-2018 11:05
od simon
Ahoj,
k vyřešení úlohy Knihovna paralelizace není potřeba.

Za tým organizátorů,
Šimon