mirror of
https://github.com/hashcat/hashcat
synced 2024-12-27 05:13:45 +01:00
Pure black magic to workaround 100% CPU usage bug in NVidias OpenCL runtime on Linux
This commit is contained in:
parent
eb88171bdd
commit
b2ff9922c9
@ -150,6 +150,8 @@ double TARGET_MS_PROFILE[4] = { 2, 12, 96, 480 };
|
||||
|
||||
#define NUM_DEFAULT_BENCHMARK_ALGORITHMS 143
|
||||
|
||||
#define NVIDIA_100PERCENTCPU_WORKAROUND 100
|
||||
|
||||
#define global_free(attr) \
|
||||
{ \
|
||||
myfree ((void *) data.attr); \
|
||||
@ -5446,8 +5448,25 @@ void SetConsoleWindowSize (const int x)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef _POSIX
|
||||
int (*clock_gettime_orig) (clockid_t clk_id, struct timespec *tp);
|
||||
|
||||
int clock_gettime (clockid_t clk_id, struct timespec *tp)
|
||||
{
|
||||
int r = clock_gettime_orig (clk_id, tp);
|
||||
|
||||
usleep (NVIDIA_100PERCENTCPU_WORKAROUND);
|
||||
|
||||
return r;
|
||||
}
|
||||
#endif
|
||||
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
#ifdef _POSIX
|
||||
clock_gettime_orig = dlsym (RTLD_NEXT, "clock_gettime");
|
||||
#endif
|
||||
|
||||
#ifdef _WIN
|
||||
SetConsoleWindowSize (132);
|
||||
#endif
|
||||
@ -18274,4 +18293,3 @@ int main (int argc, char **argv)
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user