mirror of
https://github.com/hashcat/hashcat.git
synced 2024-11-26 01:50:10 +00:00
OpenCL Runtime: Switched default OpenCL device type on macOS from GPU to CPU. Use -D 2 to enable GPU devices.
This commit is contained in:
parent
343d3bc0aa
commit
111f39eeb2
@ -40,6 +40,7 @@
|
|||||||
- Module Structure: Add 3rd party library hook management functions. This also requires an update to all existing module_init()
|
- Module Structure: Add 3rd party library hook management functions. This also requires an update to all existing module_init()
|
||||||
- Hash-Mode 13200 (AxCrypt): Changed the name to AxCrypt 1 to avoid confusion
|
- Hash-Mode 13200 (AxCrypt): Changed the name to AxCrypt 1 to avoid confusion
|
||||||
- Hash-Mode 13300 (AxCrypt in-memory SHA1): Changed the name to AxCrypt 1 in-memory SHA1
|
- Hash-Mode 13300 (AxCrypt in-memory SHA1): Changed the name to AxCrypt 1 in-memory SHA1
|
||||||
|
- OpenCL Runtime: Switched default OpenCL device type on macOS from GPU to CPU. Use -D 2 to enable GPU devices.
|
||||||
- Unit tests: Added Python 3 support for all of the Python code in our test framework
|
- Unit tests: Added Python 3 support for all of the Python code in our test framework
|
||||||
- Unit tests: Fixed the packaging of test (-p) feature
|
- Unit tests: Fixed the packaging of test (-p) feature
|
||||||
|
|
||||||
|
@ -317,8 +317,14 @@ static bool setup_opencl_device_types_filter (hashcat_ctx_t *hashcat_ctx, const
|
|||||||
{
|
{
|
||||||
// Do not use CPU by default, this often reduces GPU performance because
|
// Do not use CPU by default, this often reduces GPU performance because
|
||||||
// the CPU is too busy to handle GPU synchronization
|
// the CPU is too busy to handle GPU synchronization
|
||||||
|
// Except for apple, because GPU drivers are not reliable
|
||||||
|
// The user can explicitly enable it by setting -D
|
||||||
|
|
||||||
|
#if defined (__APPLE__)
|
||||||
|
opencl_device_types_filter = CL_DEVICE_TYPE_ALL & ~CL_DEVICE_TYPE_GPU;
|
||||||
|
#else
|
||||||
opencl_device_types_filter = CL_DEVICE_TYPE_ALL & ~CL_DEVICE_TYPE_CPU;
|
opencl_device_types_filter = CL_DEVICE_TYPE_ALL & ~CL_DEVICE_TYPE_CPU;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
*out = opencl_device_types_filter;
|
*out = opencl_device_types_filter;
|
||||||
@ -6147,6 +6153,21 @@ int backend_ctx_devices_init (hashcat_ctx_t *hashcat_ctx, const int comptime)
|
|||||||
#endif // __APPLE__
|
#endif // __APPLE__
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#if defined (__APPLE__)
|
||||||
|
if (opencl_device_type & CL_DEVICE_TYPE_GPU)
|
||||||
|
{
|
||||||
|
if (user_options->force == false)
|
||||||
|
{
|
||||||
|
if (user_options->quiet == false) event_log_warning (hashcat_ctx, "* Device #%u: Apple's OpenCL drivers (GPU) are known to be unreliable.", device_id + 1);
|
||||||
|
if (user_options->quiet == false) event_log_warning (hashcat_ctx, " There are many reports of false negatives and other issues.");
|
||||||
|
if (user_options->quiet == false) event_log_warning (hashcat_ctx, " This is not a hashcat specific issue. Many other projects suffer from the bad quality of these drivers.");
|
||||||
|
if (user_options->quiet == false) event_log_warning (hashcat_ctx, " You can use --force to override, but do not report related errors. You have been warned.");
|
||||||
|
|
||||||
|
device_param->skipped = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // __APPLE__
|
||||||
|
|
||||||
// skipped
|
// skipped
|
||||||
|
|
||||||
if ((backend_ctx->backend_devices_filter & (1ULL << device_id)) == 0)
|
if ((backend_ctx->backend_devices_filter & (1ULL << device_id)) == 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user