Mimochodem tohle je taky divné:
counters[i] = (n * threadIdx.x / (uint64_t)pow(62, characters - 1 - i) % 62);
crackujeme hesla s floatovými funkcemi
. Když potřebuješ rozhodit prohledávaný prostor mezi kernely (nepotřebuješ, dokud si neobenchmarkuješ, že režie na kernel je dost velká na to abys to musel řešit) tak to udělej tak, že kernelu přiřadíš třeba prvních 5 znaků a zbylé 3 znaky se proiterují uvnitř kernelu.
Rád si nechám poradit, jak skupiny generovaných hesel rovnoměrně rozložit na jednotlivá vlákna bez floatu

. Funkčnost svého kódu jsem si nejdříve otestoval v Excelu.
Programuji mj. také 8 bitové MCU, např.
ATtiny202 a tam je nesmysl, že by překladač vyhodil kód, který údajně nic nedělá

.
S odladěním na GPU mám problém. VS2022 a nejnovější NVIDIA Nsight Visual Studio Edition Debugger (režim Next-Gen) nepodporuje starší grafické karty architektury Maxwell (CUDA verze 5.0) což je má karta NVIDIA GeForce GTX 960M, kterou mám v netebooku. Ladění by mělo jít s Nsight v Legacy režimu ve VS2017. To jsem zkoušel, ale debugger se k aplikaci připojí jen na zlomek sekundy a pak se hned odpojí s chybovou hláškou, že nesouhlasí security nastavení v parametrech laděného programu a Nsight Monitoru. Defaultně je ale u obou nastaveno security False. I když jsem oboje změnil na True nic se nezměnilo. Možná je zádrhelem to, že v seznamu podporovaných grafik je u Nsight Legacy uvedena karta GeForce GTX 960 a ne GeForce GTX 960
M (má mobilní). Hlavu si z toho ale moc nedělám a nový notebook s výkonější GPU kartou nebudu kvůli tomu kupovat. Zkusím do programu doplnit to hashování a odzkouším rychlost nalezení hesla měřením času.
Pokud má někdo na svém PC novější GPU může zkusit jak se můj program na generování hesel chová v debuggeru

.