1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-04-17 23:59:07 +00:00

Reduce CUDA Toolkit minimum version to 9.0 (even 8.0 should be sufficient)

This commit is contained in:
Jens Steube 2020-02-01 19:32:03 +01:00
parent aef53f7e10
commit 96a2c36f53
3 changed files with 20 additions and 12 deletions

View File

@ -155,7 +155,7 @@
- OpenCL Kernels: Moved "gpu_decompress", "gpu_memset" and "gpu_atinit" into shared.cl in order to reduce compile time
- OpenCL Options: Removed --opencl-platforms filter in order to force backend device numbers to stay constant
- Parsers: switched from strtok() to strtok_r() for thread safety
- Requirements: Add new requirement for NVIDIA GPU: CUDA Toolkit (10.1 or later)
- Requirements: Add new requirement for NVIDIA GPU: CUDA Toolkit (9.0 or later)
- Requirements: Update runtime check for minimum NVIDIA driver version from 367.x to 418.56 or later
- Test Script: Switched from /bin/bash to generic /bin/sh and updated code accordingly

View File

@ -15,7 +15,7 @@ AMD GPUs on Windows require "AMD Radeon Software Crimson Edition" (15.12 or late
Intel CPUs require "OpenCL Runtime for Intel Core and Intel Xeon Processors" (16.1.1 or later)
Intel GPUs on Linux require "OpenCL 2.0 GPU Driver Package for Linux" (2.0 or later)
Intel GPUs on Windows require "OpenCL Driver for Intel Iris and Intel HD Graphics"
NVIDIA GPUs require "NVIDIA Driver" (418.56 or later) and "CUDA Toolkit" (10.1 or later)
NVIDIA GPUs require "NVIDIA Driver" (418.56 or later) and "CUDA Toolkit" (9.0 or later)
##
## Features

View File

@ -697,10 +697,10 @@ int nvrtc_init (hashcat_ctx_t *hashcat_ctx)
char dllname[100];
for (int major = 20; major >= 10; major--) // older than 3.x do not ship _v2 functions anyway
// older than 7.x does not support sm 5.x
// older than 8.x does not have documentation archive online, no way to check if nvrtc support whatever we need
// older than 10.x is just a theoretical limit since we define 10.1 as the minimum required version
for (int major = 20; major >= 9; major--) // older than 3.x do not ship _v2 functions anyway
// older than 7.x does not support sm 5.x
// older than 8.x does not have documentation archive online, no way to check if nvrtc support whatever we need
// older than 9.x is just a theoretical limit since we define 9.0 as the minimum required version
{
for (int minor = 20; minor >= 0; minor--)
{
@ -4920,6 +4920,16 @@ int backend_ctx_init (hashcat_ctx_t *hashcat_ctx)
backend_ctx->nvrtc_driver_version = nvrtc_driver_version;
if (nvrtc_driver_version < 9000)
{
event_log_error (hashcat_ctx, "Outdated NVIDIA NVRTC driver version '%d' detected!", nvrtc_driver_version);
event_log_warning (hashcat_ctx, "See hashcat.net for officially supported NVIDIA CUDA Toolkit versions.");
event_log_warning (hashcat_ctx, NULL);
return -1;
}
// cuda version
int cuda_driver_version = 0;
@ -4928,11 +4938,9 @@ int backend_ctx_init (hashcat_ctx_t *hashcat_ctx)
backend_ctx->cuda_driver_version = cuda_driver_version;
// some pre-check
if ((nvrtc_driver_version < 10000) || (cuda_driver_version < 10000))
if (cuda_driver_version < 9000)
{
event_log_error (hashcat_ctx, "Outdated NVIDIA CUDA Toolkit version '%d' detected!", cuda_driver_version);
event_log_error (hashcat_ctx, "Outdated NVIDIA CUDA driver version '%d' detected!", cuda_driver_version);
event_log_warning (hashcat_ctx, "See hashcat.net for officially supported NVIDIA CUDA Toolkit versions.");
event_log_warning (hashcat_ctx, NULL);
@ -5001,7 +5009,7 @@ int backend_ctx_init (hashcat_ctx_t *hashcat_ctx)
event_log_warning (hashcat_ctx, "* NVIDIA GPUs require this runtime and/or driver (both):");
event_log_warning (hashcat_ctx, " \"NVIDIA Driver\" (418.56 or later)");
event_log_warning (hashcat_ctx, " \"CUDA Toolkit\" (10.1 or later)");
event_log_warning (hashcat_ctx, " \"CUDA Toolkit\" (9.0 or later)");
event_log_warning (hashcat_ctx, NULL);
return -1;
@ -5283,7 +5291,7 @@ int backend_ctx_init (hashcat_ctx_t *hashcat_ctx)
event_log_warning (hashcat_ctx, "* NVIDIA GPUs require this runtime and/or driver (both):");
event_log_warning (hashcat_ctx, " \"NVIDIA Driver\" (418.56 or later)");
event_log_warning (hashcat_ctx, " \"CUDA Toolkit\" (10.1 or later)");
event_log_warning (hashcat_ctx, " \"CUDA Toolkit\" (9.0 or later)");
event_log_warning (hashcat_ctx, NULL);
return -1;