Jens Steube
a0eae9050c
OpenCL Runtime: Workaround JiT compiler deadlock on NVIDIA driver >= 465.89
3 years ago
Jens Steube
3c199bfa1b
Merge pull request #2693 from matrix/out_of_host_memory
...
[backend.c] skipping devices instead of stop with error
3 years ago
Jens Steube
d53913f444
Merge pull request #2672 from matrix/example2info
...
Replaced --example-hashes with --hash-info
3 years ago
Chick3nman
9b6235a5fc
Downgrade Kernel Exec Timeout Warning
...
Kernel times of >450ms are very uncommon and this warning is not a blocking, downgrading it to advice to allow for it to be hidden along with other advice messages.
3 years ago
Gabriele Gristina
fda0d668e5
use skip also with first checks of backend_session_begin()
3 years ago
Gabriele Gristina
4c2605f7f2
switch to skip instead return -1 for all checks, moved cuda counter update to the end of loop
3 years ago
Gabriele Gristina
f4dbd46b71
trying skip devices instead of return -1
3 years ago
Gabriele Gristina
77e328d659
Removed option --example-hashes, now is an alias of --hash-info
4 years ago
Gabriele Gristina
3ed1f0d840
Added new option: --hash-info
4 years ago
Jens Steube
04d5e5a119
New Attack-Mode: Association Attack. Like JtR's single mode. Very early
...
stage. See hashcat Forum for detailed writeup.
4 years ago
Jens Steube
57bef8abc9
Display possible NVIDIA CUDA/RTC library loading error message only in case a NVIDIA device was found using OpenCL
4 years ago
Jens Steube
111f39eeb2
OpenCL Runtime: Switched default OpenCL device type on macOS from GPU to CPU. Use -D 2 to enable GPU devices.
4 years ago
Jens Steube
343d3bc0aa
CUDA Backend: Give detailed warning if either the NVIDIA CUDA or the NVIDIA RTC library cannot be initialized
...
CUDA Backend: Do not warn about missing CUDA SDK installation if --backend-ignore-cuda is used
4 years ago
Jens Steube
6a419d068c
CUDA Backend: Use blocking events to avoid 100% CPU core usage (per GPU)
4 years ago
Jens Steube
62a7ae4075
Increase EXTRA_SPACE to leave some room for free device memory
4 years ago
Jens Steube
3ebf4c5f9f
Merge branch 'master' of https://github.com/hashcat/hashcat
4 years ago
Jens Steube
98aef2ae92
Module Structure: Add 3rd party library hook management functions. This also requires an update to all existing module_init()
4 years ago
philsmd
ee5bce1c3e
fixes #2518 : call clear_prompt () more often to avoid misaligned prompt
4 years ago
Jens Steube
a72ba6faab
Add OPTI_TYPE_SLOW_HASH_SIMD_INIT2 and OPTI_TYPE_SLOW_HASH_SIMD_LOOP2
4 years ago
Jens Steube
e21463da4b
Fixed race condition resulting in out of memory error on startup if multiple hashcat instances are started at the same time
4 years ago
Jens Steube
0ff2f8c5e1
OpenCL Devices: Utilize PCI domain to improve alias device detection
4 years ago
philsmd
3e822e97b9
fixes #2460 : better alias detection esp. for macOS
4 years ago
Jens Steube
5628317de8
OpenCL Runtime: Reinterpret return code CL_DEVICE_NOT_FOUND from clGetDeviceIDs() as non-fatal
4 years ago
philsmd
e59f61e8cf
cosmetic: minor code style fixes
4 years ago
Jens Steube
a6a6bb200a
Mark NV 441.x as fixed
4 years ago
Jens Steube
1e469a96a4
Add missing branch in automatic alias device selection
4 years ago
Jens Steube
34f71aaea3
Re-enable POCL is version detected is >= 1.5 and LLVM is >= 9.x and also remove performance warning. Still prefers native OpenCL runtime in alias detection, but this default can be overriden using -d parameter.
4 years ago
Matt Palmer
240d35976a
Fix build warning in DEBUG mode
...
Just a tiny cleanup to avoid an 'unused variable' warning when building
with DEBUG=1.
4 years ago
Jens Steube
008072eb65
OpenCL Runtime: Added a warning if OpenCL runtime NEO, Beignet, POCL or MESA is detected and skip associated devices (override with --force)
4 years ago
Jens Steube
434ad76381
Improve alias device detection to distinguish between Intel CPU and embedded GPU
4 years ago
Jens Steube
ba7163062d
Do not set -cl-std=XXX to workaround NEO driver bug causing to hang while compiling -m 22000
4 years ago
Jens Steube
2b2a7ede66
OpenCL Options: Set --spin-damp to 0 (disabled) by default. With the CUDA backend this workaround became deprecated
4 years ago
Jens Steube
8c3808bad5
Fix NUL filename on windows
4 years ago
Jens Steube
3e4d110fd2
Add stderr redirection the regular way
4 years ago
Jens Steube
125e9ec863
Do not redirect stderr to /dev/null to prevent rocm 3.1 from crashing on debian
4 years ago
Jens Steube
f381e1bbf8
Remove force_recompile functionality, doesn't work with cubin anymore
4 years ago
Jens Steube
f96e35649d
Change bitsliced kernels from 3d to 2d invocation mode for slightly better performance
4 years ago
Jens Steube
d9473358ef
Add support for OPTS_TYPE_LOOP_EXTENDED kernel for special cases like VeraCrypt
4 years ago
Jens Steube
c90d83c3eb
Prepare for UNROLL whitelisting
4 years ago
Jens Steube
4788c61dd2
Add OPTI_TYPE_REGISTER_LIMIT flag to enable register limiting in CUDA
4 years ago
Jens Steube
17a64f5019
Set a fixed register count maximumfor CUDA kernel. This prevents kernels going out of control and to have negative effects on other kernels from the same source code (For instance 16600)
4 years ago
Jens Steube
c40f474c2e
Add special module option to indicate the kernel is using dynamic shared memory
4 years ago
Jens Steube
fb7bb04587
Do not use dynamic shared memory if dynamic_local_mem_size is a multiple of local_mem_size
4 years ago
Jens Steube
96a2c36f53
Reduce CUDA Toolkit minimum version to 9.0 (even 8.0 should be sufficient)
4 years ago
Jens Steube
aef53f7e10
OpenCL Runtime: Allow the kernel to access post-48k shared memory region on CUDA. Requires both module and kernel preparation
4 years ago
Jens Steube
1fc37c25f9
OpenCL Kernels: Moved "gpu_decompress", "gpu_memset" and "gpu_atinit" into new OpenCL/shared.cl in order to reduce compile time
4 years ago
Jens Steube
08163501cf
Add option to disable cubin cache binaries and moved some redundant kernel load code into specific function
4 years ago
Jens Steube
01085cdab2
Move cujit_opts allocation closer to the calling functions because CUDA library needs it reinitialized after each use
4 years ago
Jens Steube
346637ec43
Improve cujit logging
4 years ago
Jens Steube
66ae5125ce
Cache cubin instead of PTX to decrease startup time
4 years ago
Jens Steube
cc4fd48ace
Optimize hook buffer size to be copied
4 years ago
Jens Steube
041a777025
OpenCL Runtime: Unlocked maximum thread count for NVIDIA GPU
4 years ago
Jens Steube
ccacc508cb
Reenabled support for Intel GPU OpenCL runtime (Beignet and NEO) because a workaround was found (force -cl-std=CL2.0)
4 years ago
Jens Steube
fe372dffb7
Add RDNA ISA instructions test for ADD/ADDC/SUB/SUBB
5 years ago
Jens Steube
df5e2361d3
Disable inline assembly instruction tests for CUDA and refer to documented requirements
5 years ago
Jens Steube
d0fb171da9
Added new options --backend-ignore-cuda and --backend-ingore-opencl, to ignore CUDA and/or OpenCL interface from being load on startup
5 years ago
Jens Steube
b3690fcd05
Backport instruction test cache from CUDA to OpenCL
5 years ago
Jens Steube
2b4d0656d5
Cache inline assembly instruction check results for same devices types
5 years ago
Jens Steube
5d1d48f5d7
Do not check for COPY_PW limits in outside kernels
5 years ago
Jens Steube
53254b45aa
Backport inc_ecc_secp256k1 inline assembly code for AMD ISA
5 years ago
Jens Steube
bfd95d42f6
- OpenCL Runtime: Reenabled support for Intel GPU OpenCL runtime
5 years ago
Jens Steube
2884bded32
Initialize some variable to make scan-build happy
5 years ago
Jens Steube
00b9f4c557
Add kernel accel minimum limit check
5 years ago
Jens Steube
424777ae28
Add kernel accel limiter based on kernel threads to reduce host memory requirements
5 years ago
Jens Steube
f7c3ced548
Fix use of calloc() in backend.c
5 years ago
Jens Steube
c4dd020685
Add support for NVIDIA Jetson AGX Xavier developer kit
5 years ago
Jens Steube
53e96a12a0
Improve automatic calculation of hook threads value
5 years ago
Jens Steube
fe8c17f4c7
Support pause/abort in hooks
5 years ago
Jens Steube
9c2c73c6cc
Clear hook buffers after full kernel chain is finished
5 years ago
Jens Steube
7458e4f487
Add per-device available memory test of static data (hashlist, ruleset) before test of dynamic data (-n based)
5 years ago
Rosen Penev
a6edb84157
Fix extra semicolon warnings
...
These macros don't need a ; but since ; is used, make the macros more
robust by enclosing them in a do while loop.
5 years ago
Jens Steube
c12470b978
Merge pull request #2188 from neheb/cast
...
Add casts where needed in C++ mode
5 years ago
Jens Steube
a8555fa048
Support use of all available CPU cores for hash-mode specific hooks
5 years ago
Rosen Penev
fd8150769d
Add casts where needed in C++ mode
...
Otherwise, -fpermissive must be passed.
5 years ago
Jens Steube
57a149276c
Do alias check only in case both CUDA and OpenCL devices were detected
5 years ago
Jens Steube
97c9e86d15
Filehandling: Print a truncation warning in case an oversized line was detected
5 years ago
Rosen Penev
dca1a86315
Run through Clang's bugprone-macro-parentheses
5 years ago
Rosen Penev
6dc72ebcc5
Run through Clang's readability-else-after-return
...
There's no need for a return statement in an else path. Just take it out.
Simplifies the code slightly.
5 years ago
Rosen Penev
fb75164126
Run through Clang's google-readability-casting
...
Removes casts where the type is identical.
5 years ago
Rosen Penev
2f76326c37
Run through Clang's android-cloexec checkers
...
This is mainly useful with SELinux.
5 years ago
Rosen Penev
98e17d5774
Run through clang-tidy's readability-uppercase-literal-suffix
...
1 and l are visually similar and can be confused. This also changes u to U
for consistency.
5 years ago
Gabriele Gristina
ae62e597ce
(backend) remove unused *rc* vars and cleanup
5 years ago
Jens Steube
a7fd1e40f8
Merge pull request #2075 from matrix/zlib_support_2
...
Add zlib support for loading hashlist/wordlist (v2)
5 years ago
Gabriele Gristina
2db6dfcd4e
fix HCFILE with potfile BUG and something else related to HCFILE wrong usage
5 years ago
Gabriele Gristina
ea786f715f
avoid logical negation operator
5 years ago
Gabriele Gristina
3161aec3da
fix the comments :)
5 years ago
Gabriele Gristina
5679ca3344
Rewrite hc_fopen to better handling file descriptor locking/unlocking functions, saving kernels binary from plain to gzip format
5 years ago
Gabriele Gristina
caf34e0e83
Fix some *print* format arguments
5 years ago
Gabriele Gristina
5d3ed3e754
Remove union from HCFILE, using std file ops in ocl_check_dri, remove debug comments
5 years ago
Gabriele Gristina
c2e634c426
switch is_gzip from short to bool
5 years ago
Gabriele Gristina
481c752456
No more compress functions, update example.dict.gz, remove some comments
5 years ago
Gabriele Gristina
398c89c75c
switch almost all FILE ops, potfile is the only missing
5 years ago
Jens Steube
2cda236a18
OpenCL Runtime: Do not run a shared- and constant-memory size check if their memory type is of type global memory (typically CPU)
5 years ago
Jens Steube
6dfb474adf
OpenCL Runtime: Do not run a shared- and constant-memory size check if their memory type is of type global memory (typically CPU)
5 years ago
Gabriele Gristina
b2529af172
remove original commented code
5 years ago
Gabriele Gristina
6cb4abd526
Add zlib support v2
5 years ago
Jens Steube
955bfeaa14
Improve performance of bitsliced algorithms on ROCm
5 years ago
Jens Steube
5e0eb288c9
Use __launch_bounds__ in CUDA as replacement for reqd_work_group_size() in OpenCL
5 years ago
Jens Steube
c2fc849e2c
Fix minimum threads_per_block check
5 years ago
Jens Steube
0568c0746a
Emulate effect of reqd_work_group_size() in CUDA
5 years ago
Jens Steube
44ecc83d82
Do some CUDA and NVRTC version checks on startup
5 years ago
Jens Steube
03ed89684e
Use --restrict nvrtc option by default
5 years ago
Jens Steube
87c336e822
Fix format warning in backend.c
5 years ago
Jens Steube
1f6c82b6d1
Add hc_cuModuleLoadDataExLog wrapper function for more detailed error logging from CUDA
5 years ago
Jens Steube
ce8a6fde0a
Fix status screen current password query
5 years ago
Jens Steube
f84eaa2e4d
Fix bitsliced algorithm brute-force with CUDA
5 years ago
Jens Steube
523e0f7151
Fix free unallocated memory in case OpenCL initialization failed
5 years ago
Jens Steube
bca03bb7ed
CUDA offers a nice way to query available device memory, no need to brute force
5 years ago
Jens Steube
a6bc1d3cc0
Experimental kernel-thread autotuner
5 years ago
Jens Steube
d59474fded
Testwise unlock full thread count on NVidia
5 years ago
Jens Steube
d378aa7ab9
Show host memory requirement on startup
5 years ago
Jens Steube
46f737c5af
Use real constant memory on CUDA
5 years ago
Jens Steube
5d14a59304
Need 3.x nvrtc minimum
5 years ago
Jens Steube
54feb62e94
brute-force nvrtc .dll name
5 years ago
Jens Steube
a2b5981303
Fix some library names
5 years ago
Jens Steube
be8f29ca39
Only warn about broken NVIDIA driver
5 years ago
Jens Steube
39e150fc1e
Use xxx_v2 CUDA symbols
5 years ago
Jens Steube
33028314f0
Add hc_cuCtxSetCacheConfig()
5 years ago
Jens Steube
fb82bfc169
Improve thread handling based on FIXED_LOCAL_SIZE
5 years ago
Jens Steube
3a3df091c7
Fix CUDA num_elements
5 years ago
Jens Steube
363e789b89
Assume local nvrtc.dll and cuda.dll on windows
5 years ago
Jens Steube
a7d04adba3
Fix opencl_devices_active and backend_devices_active
5 years ago
Jens Steube
8ff8c5d536
Add LOCAL_VK to make use of __shared__
5 years ago
Jens Steube
bbed0cd67a
Fix test.sh and bitsliced algos
5 years ago
Jens Steube
d0bd33c9d1
Rename CONSTANT_AS to CONSTANT_VK
5 years ago
Jens Steube
64c495dfa5
Use CUDA stream for all cuLaunchKernel() invocations
5 years ago
Jens Steube
d94f582097
Replace CEILDIV() with round_up_multiple_64()
5 years ago
Jens Steube
e9c04c2446
More CUDA implementation
5 years ago
Jens Steube
08dc1acc02
More CUDA rewrites
5 years ago
Jens Steube
ec9925f3b1
Warnings self-check and autotune with CUDA
5 years ago
Jens Steube
4df00033d7
Prepare CUDA events
5 years ago
Jens Steube
f2948460c9
Some first kernel invocations
5 years ago
Jens Steube
5ee033673c
Disable name mangling in NVRTC's PTX output and more
5 years ago
Jens Steube
503304f36a
Add some first CUDA device memory allocations and host buffer copies
5 years ago
Jens Steube
50a6e720ca
More OpenCL variables rename
5 years ago
Jens Steube
af8e317cf4
Begin renaming some OpenCL only variables
5 years ago
Jens Steube
a6fa7a2749
Add support for some first CUDA module loader
5 years ago
Jens Steube
456c57a6d0
Set vector width size for CUDA
5 years ago
Jens Steube
3c4f4df771
Rename some more variables
5 years ago
Jens Steube
495d89f831
Find alias devices across different backend API's
5 years ago
Jens Steube
6fd936b43a
Removed --opencl-platforms filter in order to force backend device numbers to stay constant
5 years ago
Jens Steube
e3500ff4aa
Add CUDA device attributes to -I
5 years ago
Jens Steube
d862458ab5
Begin renaming API specific variables in backend section
5 years ago
Jens Steube
d73c0ac8a9
More CUDA attribute queries
5 years ago
Jens Steube
a415422123
Initialize CUDA devices and some first attribute queries
5 years ago
Jens Steube
58213c81d6
Add vector datatypes operators
5 years ago
Jens Steube
052e42ccef
Fix CUDA_ARCH value
5 years ago
Jens Steube
06171958ee
Add --gpu-architecture to NVRTC build options
5 years ago
Jens Steube
9faba41848
Use nvrtc to compile PTX (resulting PTX not yet used)
5 years ago
Jens Steube
4045e60021
Add nvrtc wrapper for later use
5 years ago
Jens Steube
4b986de5fb
Prepare native CUDA hybrid integration
5 years ago