mirror of
https://github.com/hashcat/hashcat.git
synced 2025-02-16 17:42:04 +00:00
Add round_up_multiple_32() and round_up_multiple_64()
This commit is contained in:
parent
f75accef59
commit
1af8e29a4b
@ -64,4 +64,7 @@ u64 hc_strtoull (const char *nptr, char **endptr, int base);
|
||||
u32 power_of_two_ceil_32 (const u32 v);
|
||||
u32 power_of_two_floor_32 (const u32 v);
|
||||
|
||||
u32 round_up_multiple_32 (const u32 v, const u32 m);
|
||||
u64 round_up_multiple_64 (const u64 v, const u64 m);
|
||||
|
||||
#endif // _SHARED_H
|
||||
|
12
src/opencl.c
12
src/opencl.c
@ -1573,7 +1573,7 @@ int run_kernel (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, con
|
||||
|
||||
// kernel_threads = power_of_two_floor_32 (kernel_threads);
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
int CL_rc;
|
||||
|
||||
@ -1762,7 +1762,7 @@ int run_kernel_mp (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param,
|
||||
return -1;
|
||||
}
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
int CL_rc;
|
||||
|
||||
@ -1846,7 +1846,7 @@ int run_kernel_amp (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param,
|
||||
|
||||
const u64 kernel_threads = device_param->kernel_wgs_amp;
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
cl_kernel kernel = device_param->kernel_amp;
|
||||
|
||||
@ -1882,7 +1882,7 @@ int run_kernel_atinit (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_par
|
||||
|
||||
const u64 kernel_threads = device_param->kernel_wgs_atinit;
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
cl_kernel kernel = device_param->kernel_atinit;
|
||||
|
||||
@ -1928,7 +1928,7 @@ int run_kernel_memset (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_par
|
||||
|
||||
u64 num_elements = num16d;
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
cl_kernel kernel = device_param->kernel_memset;
|
||||
|
||||
@ -1981,7 +1981,7 @@ int run_kernel_decompress (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device
|
||||
|
||||
const u64 kernel_threads = device_param->kernel_wgs_decompress;
|
||||
|
||||
while (num_elements % kernel_threads) num_elements++;
|
||||
num_elements = round_up_multiple_64 (num_elements, kernel_threads);
|
||||
|
||||
cl_kernel kernel = device_param->kernel_decompress;
|
||||
|
||||
|
22
src/shared.c
22
src/shared.c
@ -535,3 +535,25 @@ u32 power_of_two_floor_32 (const u32 v)
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
u32 round_up_multiple_32 (const u32 v, const u32 m)
|
||||
{
|
||||
if (m == 0) return v;
|
||||
|
||||
const u32 r = v % m;
|
||||
|
||||
if (r == 0) return v;
|
||||
|
||||
return v + m - r;
|
||||
}
|
||||
|
||||
u64 round_up_multiple_64 (const u64 v, const u64 m)
|
||||
{
|
||||
if (m == 0) return v;
|
||||
|
||||
const u64 r = v % m;
|
||||
|
||||
if (r == 0) return v;
|
||||
|
||||
return v + m - r;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user