Jens Steube
576a71af5c
Update minimum HIP version from 4.4 to upcoming 4.5
3 years ago
Jens Steube
756c29ec57
Add missing cleanup on windows if outdated HIP version is detected
3 years ago
Jens Steube
733f9c2d77
Add better detection future HIP 4.4
3 years ago
Jens Steube
07e58631a5
Backend devices: In non -S mode, limit the number of workitems so that no more than 4GB of host memory is required per backend device
3 years ago
Jens Steube
4b6654b503
Fix unstable plugin to driver warning
3 years ago
Jens Steube
c1fd42fe72
Reduce work item maximum in -S mode even further, tested with NTLM
3 years ago
Jens Steube
bd2cde31ae
Back-end devices: In -S mode, limit the number of workitems so that no more than 2GB of host memory is required per backend device
3 years ago
Jens Steube
4ef1509bc7
Backend Devices: Reduce maximum workitems limited derived from available host memory down from to 8GB to 4GB per backend device
3 years ago
Jens Steube
721e1ea54d
Fixed division by zero because backend_ctx->hardware_power_all was not re-inserted after refactoring device_param->hardware_power
3 years ago
Jens Steube
8c14fd85ea
POCL: Added a workaround for an issue in POCL that uses a quote character as part of the path itself given to a path for the -I option
3 years ago
Jens Steube
b4b2195fa5
OpenCL Runtime: The use of clUnloadPlatformCompiler () was disabled after some users received unexpected return codes
3 years ago
Jens Steube
85854236d1
Merge pull request #2935 from matrix/apple_gpu_workaround
...
workaround to 'clEnqueueWriteBuffer(): CL_INVALID_VALUE' with apple gpu
3 years ago
Jens Steube
50e28ff306
Merge pull request #2926 from jtojanen/master
...
Code cleanup and small fixes
3 years ago
Jukka Ojanen
6b4786de84
Make blocking clEnqueueWriteBuffer() non-blocking
3 years ago
Jukka Ojanen
f3cd32bffd
Avoid memory copy in rebuild_pws_compressed_append() and assign instead
3 years ago
Jens Steube
76e388ea47
Memory Management: Check in OpenCL that CL_DEVICE_HOST_UNIFIED_MEMORY is true and if so, then half of the available memory
...
NEO driver: Activate the NEO driver (Intel GPU) after it passed several tests in hashcat using the latest NEO driver version
3 years ago
Jens Steube
9254603960
Fixed out-of-boundary read in PKZIP masterkey kernel if the password candidate has length zero.
...
Now that kernel threads are no longer fixed over the entire session, hardware_power and hardware_power_all
needs to be updated the same way as kernel_power and kernel_power_all for each call to inner2_loop().
3 years ago
Gabriele Gristina
72735ed7c4
update workaround
3 years ago
Gabriele Gristina
fef18965c3
workaround to 'clEnqueueWriteBuffer(): CL_INVALID_VALUE' with apple gpu
3 years ago
Jukka Ojanen
5c0820b8d3
Assume hashconfig->tmp_size is the element size
3 years ago
Jukka Ojanen
bcb4a8f391
Add clFlush() to backend_session_update_mp() and backend_session_update_mp_rl()
3 years ago
Jukka Ojanen
3b11b51113
Remove unnecessary hc_cuEventSynchronize() call
3 years ago
Jukka Ojanen
1edb649c1f
Remove duplicate conditions
3 years ago
Jens Steube
5e1d37c82e
Make unsupported AMD HIP runtime version error message a bit more human readable
3 years ago
Jens Steube
cb69e2d413
Added some HIP version checks, fall back to OpenCL automatically
...
Switched HIP version check from driverVersion to runtimeVersion
Fixed syntax check of HAS_VPERM macro in several kernel includes causing invalid error message for AMD GPUs on Windows
Updated AMD driver requirements
Updated docs/changes.txt with missing changes from previous commits
Fixed invalid vector data type in Murmur Hash in -a 3 mode
Fixed uninitialized variable warning in src/hashes.c
Fixed broken support for --generate-rules-func-min
3 years ago
Jens Steube
b2d1f42905
Fix self-test functionality if FIXED_LOCAL_SIZE_COMP is used
...
Fix -m 25700 datatype in -a 3 mode and maximum password length in pure kernel mode
Fix -m 12500, 23700 and 23800 if password is exactly length 128
3 years ago
Jens Steube
af5d346244
Merge pull request #2894 from jtojanen/master
...
Allow async execution
3 years ago
Jens Steube
20a7b9f992
Tuning-Database: Add new module function module_extra_tuningdb_block() to extend hashcat.hctune content from a plugin
...
See src/modules/module_08900.c as an example
3 years ago
Jukka Ojanen
3d7ce7162b
Merge branch 'master' of https://github.com/hashcat/hashcat
3 years ago
Jukka Ojanen
62a06f735f
kernel_memset32(): assume offset and size are bytes, not elements
3 years ago
Jukka Ojanen
fdbfae9a28
Modify OpenCL clEnqueueFillBuffer() workaround
3 years ago
Jukka Ojanen
dbe2bad098
Maintain code style
3 years ago
Jukka Ojanen
1ee222d43f
Replace free() with hcfree()
3 years ago
Jukka Ojanen
e352a79a05
Extend context in gidd_to_pw_t()
3 years ago
Jens Steube
d4997d1255
Added support for auto-tuning --kernel-threads (-T) on startup
3 years ago
Jukka Ojanen
e154f9e781
Few cleanups
3 years ago
Jukka Ojanen
c3195d0603
Merge branch 'master' of https://github.com/hashcat/hashcat
3 years ago
Jukka Ojanen
1064cce08c
Synchronize before hooks
3 years ago
Jukka Ojanen
81c2ec3caf
Small cleanup in gidd_to_pw_t()
3 years ago
Jukka Ojanen
7a8065d090
Do not call clWaitForEvents() after spin damper when we know that event status is CL_COMPLETE
3 years ago
Jukka Ojanen
c48e6a25a8
Enqueue several commands before clFlush()
3 years ago
Jens Steube
03ed06849a
Merge branch 'HIP44' into master
3 years ago
Jens Steube
d38d40c8ba
Unlock all GPU threads for AMD GPUs if WaveFront size is 32 (basically new models)
...
Add new hash-modes to tools/benchmark_deep.pl
Fix MINGW issue on 64 bit constant in refactored kernel-accel limiting section
3 years ago
Jukka Ojanen
9ed231c99c
Add comment to blocking OpenCL calls
3 years ago
Jens Steube
a4299b74af
Memory Management: Refactored the code responsible for limiting kernel accel in order to avoid out of -host- memory situations
3 years ago
Jukka Ojanen
d7cc8d7cd2
Revert due to module_03200.c, module_25600.c and module_25800.c using device_param->kernel_dynamic_local_mem_size_memset
3 years ago
Jukka Ojanen
8b590f651b
Remove unused gpu_memset and its references
3 years ago
Jens Steube
9c0a37accf
Update driver requirement
3 years ago
Jukka Ojanen
cdf27a1cb3
Implement async run_cuda_kernel_memset() and run_cuda_kernel_memset32()
3 years ago
Jukka Ojanen
d7de3550b1
Add fast event for CUDA and HIP, and use it to synchronize check_hash()
3 years ago
Jens Steube
f6de3e61e0
Merge pull request #2906 from hashcat/master
...
Backports
3 years ago
Jens Steube
fd2cb59d26
AMD GPUs: On Apple OpenCL platform, we ask for the preferred kernel thread size rather than hard-coding 32
...
ECC secp256k1: Removed the inline assembly code for AMD GPUs because the latest JIT compilers optimize it with the same efficiency
3 years ago
Jukka Ojanen
a642f7b233
Remove synchronous GPU memory copy functions
3 years ago
Jukka Ojanen
de5200cffc
Allow async execution of backend
3 years ago
Jens Steube
72e307fbce
Merge pull request #2901 from hashcat/master
...
Backport changes
3 years ago
Jens Steube
959a232828
Merge pull request #2885 from neheb/charfixes
...
const and char fixes
3 years ago
Jens Steube
84a4058edf
Merge pull request #2900 from hashcat/master
...
Backport changes
3 years ago
Jens Steube
640d95a00f
Vendor Detection: Add "Intel" as a valid vendor name for GPU on macOS
3 years ago
Jens Steube
5ffcaa980d
HIP Backend: Added support to support HIP 4.4 and later, but added check to rule out older versions because they are incompatible
3 years ago
Rosen Penev
adaf3f293b
make const char pointers actually const
...
const char* is a non const pointer that points to const data. Add
missing const.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Jukka Ojanen
9f9333f2ef
Allow async execution of run_opencl_kernel_bzero(), run_hip_kernel_bzero() and run_opencl_kernel_bzero()
3 years ago
Jukka Ojanen
fafd24237d
Define HC_ALIGN macro to control data alignment and use common constant zero buffer in run_cuda_kernel_bzero(), run_hip_kernel_bzero() and run_opencl_kernel_bzero().
3 years ago
Jukka Ojanen
2c2988518d
Remove all calls to clFlush()
3 years ago
Jens Steube
5024865d87
Kernel Threads: Use warp size / wavefront size query instead of hardcoded values as base for kernel threads
...
Kernel Cache: Add kernel threads into hash computation which is later used in the kernel cache filename
Remove some unused function symbol lookups in HIP library
3 years ago
Jens Steube
c990e252d3
Added option --multiply-accel-disable (short: -M) to disable multiply the kernel-accel with the multiprocessor count automatism
3 years ago
Jens Steube
a7a899e5a4
Backport changes from #2888 to HIP backend
3 years ago
Jukka Ojanen
cb923d6e46
Replace CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK with CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN
3 years ago
Jukka Ojanen
d23f2d6c2f
Calculation kernel dynamic memory size based on CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK
3 years ago
Jukka Ojanen
8674e23d79
Add async HIP memcpy functions: hc_hipMemcpyDtoDAsync(), hc_hipMemcpyDtoHAsync() and hc_hipMemcpyHtoDAsync(). Implement partially async HIP memset and bzero kernels.
3 years ago
Jukka Ojanen
4263cafdcf
Add async CUDA memcpy functions: hc_cuMemcpyDtoDAsync(), hc_cuMemcpyDtoHAsync() and hc_cuMemcpyHtoDAsync(). Implement partially async CUDA memset and bzero kernels.
3 years ago
Jukka Ojanen
4c0f6dd263
Merge branch 'hashcat:master' into master
3 years ago
Jukka Ojanen
ea5180ac46
Include missing bzero kernel parameters
3 years ago
Jens Steube
257098a301
Get rid of hip/hip_runtime.h dependancy
3 years ago
Jukka Ojanen
a2a1d04bcf
Implement gpu_bzero
3 years ago
Jens Steube
45e65dd05a
Backport more ROCm based optimizations to HIP
3 years ago
Jens Steube
cf512faa53
Update large switch() cases in inc_common.cl and some inline assembly common functions for devices managed with HIP backend
3 years ago
Jens Steube
f3bd936971
Add hardware monitor mapping for HIP devices
3 years ago
Jens Steube
219bed457f
Fix use of --gpu-max-threads-per-block
3 years ago
Jens Steube
674ca7d88f
Add GPU threads to kernel cache checksum because it has an influence on HIP offline compile options
...
Add V_ALIGNBIT_B32 inline assembly wrapper because HIP does not provide amd_bitalign()
3 years ago
Jens Steube
23c3c178bf
Limit max threads per block to 64 to enable offline compiler to make better use if available registers
...
Fix double free() for hip_event1/hip_event2 and hip_stream causes segfault
Replace hc_cuCtxSetCurrent() with hc_cuCtxPushCurrent() in order to align changes with HIP
Add vector datatype operators (if we decide to use them - currently unused)
3 years ago
Jens Steube
ca3beacd93
Disable dynamic shared memory on HIP, because hipFuncSetAttribute() maps to cudaFuncSetAttribute() and not to cuFuncSetAttribute()
3 years ago
Jens Steube
1b84a9e53b
Add missing backports from code base v6.2.2
...
Fix context to thread management
Fix missing code in selftest.c, autotune.c, hashes.c, dispatch.c and backend.c
Use IS_HIP depending code makes it easier for future optimization related to inline assembly calls - instead of using IS_CUDA || IS_HIP
See TODO markers for more optimizations / next steps
3 years ago
Jens Steube
bfe83ec138
Added temperature watchdog for CPU on linux using sysfs
3 years ago
Jens Steube
979f9e9868
Rename hardware monitor interface sysfs to sysfs_amdgpu
3 years ago
Jukka Ojanen
a0eaefa0c2
Missing whitespaces
3 years ago
Jukka Ojanen
e133bd4ec4
Change rc_board_name_amd initial value to CL_INVALID_VALUE. If CHECK_BOARD_NAME_AMD is changed to 0, there is a problem with CL_SUCCESS which equals to 0, device will be skipped.
3 years ago
Jukka Ojanen
b3d18f86e2
Fix early return leaks in backend_session_begin
3 years ago
Jukka Ojanen
b976e52bc7
Fix early return leaks in load_kernel; nvrtc_options, nvrtc_options_string, build_log. Ensure build log NULL termination.
3 years ago
Jukka Ojanen
2f7eec2fd7
Fix early return leaks in backend_ctx_init and backend_ctx_devices_init
3 years ago
Jukka Ojanen
bcbb9b0d2c
Fix skipped device param leak in backend_ctx_devices_destroy
3 years ago
Jukka Ojanen
5f109b5862
Fix iconv_ctx and iconv_tmp leaks in backend.c
3 years ago
Jens Steube
8a3eee3fe5
OpenCL Runtime: Workaround JiT crash (SC failed. No reason given.) on macOS by limiting local memory allocations to 32k
3 years ago
Jens Steube
909d5e64a5
Added hash-mode: AES-128/192/256-ECB NOKDF
...
This mode is probably very rare in real-life scenarios,
but it is a nice template for kernels which do
not use a KDF,
or use AES,
or simple fast hashes with lookup tables
or simple optimized kernels in general
3 years ago
Jens Steube
28c08de9ef
Folders: Do not escape the variable cpath_real to prevent certain OpenCL runtimes from running into an error which do not support escape characters
3 years ago
Jens Steube
90f0e78b5b
Add event about autodetection process start
...
Remove "..." substring from final messages
Add patient message on "..." startup messages
Add missing docs/changes.txt entry
3 years ago
Jens Steube
7e267b9b37
Merge pull request #2825 from matrix/hwmon_osx_v2
...
Add OSX HW Monitor initial support (2021)
3 years ago
Jens Steube
2d7f67fd23
Alias Devices: Show a warning in case the user specifically listed a device to use which in a later step is skipped because it is an alias of another active device
3 years ago
Gabriele Gristina
bc4ce4cbeb
Add support for CPU/GPU device temperature and fanspeed using iokit (Apple)
3 years ago
Jens Steube
ee7fca82f5
Scrypt Kernels: Re-enable scrypt based kernels to use kernel cache
3 years ago
Jens Steube
7fc0ac4ef1
Do not initialize backend devices in case --id is used and some bug fixes
3 years ago