1
0
mirror of https://github.com/hashcat/hashcat.git synced 2025-07-07 15:18:15 +00:00
hashcat/include
Jens Steube 69a585fa4a Autotune refactoring II: dynamic threads-per-block
- Integrated occupancy hints from vendor APIs (CUDA, HIP) to set a
  dynamic threads-per-block limit per kernel instead of using static
  values.
- Added `find_tuning_function()` to identify the relevant kernel.
- Autotuner now runs in three stages: threads -> loops -> accel. The
  first two stages now stop increasing when the tested kernel runtime
  gets too close to the target runtime (96ms for `-w 3`), leaving
  headroom for the next stage to adjust in a finer sense.
- Accel tuning now uses a capped floating-point multiplier instead of
  powers of two.
- Removed workarounds for missing thread autotuning in plugins.
- Removed the hardcoded 4GiB host memory limit for accel. Added a
  cross-platform `get_free_memory()` to check actual free RAM during GPU
  initialization, preventing underutilization of high-end GPUs like the
  4090. If needed, users can still cap memory usage with `-T` or `-n`.
- Updated enums for ROCm 6.4.x and CUDA 12.9.
- Added code to detect kernel register spilling. That's relevant so we
  can keep free enough global memory on the runtime for the runtime to
  handle spills efficiently.
2025-06-24 20:19:42 +02:00
..
affinity.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
autotune.h Autotune refactoring II: dynamic threads-per-block 2025-06-24 20:19:42 +02:00
backend.h Autotune and Benchmark refactoring 2025-06-22 20:17:52 +02:00
benchmark.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
bitmap.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
bitops.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
brain.h fix stdcall warnings under clang32/64 2023-08-09 17:26:34 -07:00
bridges.h The Assimilation Bridge (Framework) 2025-05-29 15:38:13 +02:00
combinator.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
common.h Increased-virtual-backend-limit 2024-01-25 10:27:38 +01:00
convert.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
cpt.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
cpu_crc32.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
cpu_features.h Fix compile error on apple silicon 2025-06-04 10:41:24 +02:00
debugfile.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
dictstat.h Fix missing check for -j and -k before writing hashcat.dictstat2 which can lead to false negatives 2023-08-08 21:11:44 +00:00
dispatch.h include winsock2 instead of 1 2023-08-09 17:44:21 -07:00
dynloader.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_general.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_bignum_operations.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_cipher_aes.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_cipher_des.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_ecc_secp256k1.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_base58.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_md4.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_md5.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_sha1.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_sha256.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_hash_sha512.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_radmin3_constants.h Prepare rename macros in header files from _MACRO to MACRO 2023-01-17 19:25:40 +00:00
emu_inc_rp_optimized.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
emu_inc_rp.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
event.h Rename EVENT_H macro to avoid collision with EVENT_H macro from Apple library 2023-01-29 18:03:37 +00:00
ext_ADL.h fix prototypes and old declarations 2023-08-20 21:13:12 -07:00
ext_cuda.h Autotune refactoring II: dynamic threads-per-block 2025-06-24 20:19:42 +02:00
ext_hip.h Autotune refactoring II: dynamic threads-per-block 2025-06-24 20:19:42 +02:00
ext_hiprtc.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_iokit.h using hc_IOMasterPortDefault instead of kIOMasterPortDefault/kIOMainPortDefault 2023-06-03 22:36:40 +02:00
ext_lzma.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_metal.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_nvapi.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_nvml.h Improvements to SCRYPT autotuning strategy 2025-06-09 11:02:34 +02:00
ext_nvrtc.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_OpenCL.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
ext_sysfs_amdgpu.h Improvements to SCRYPT autotuning strategy 2025-06-09 11:02:34 +02:00
ext_sysfs_cpu.h fix prototypes and old declarations 2023-08-20 21:13:12 -07:00
filehandling.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
folder.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
hashcat.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
hashes.h Introduce hashes_init_stage5() and call module_extra_tmp_size() there. At this stage, the self-test hash is initialized and its values can be used. 2025-06-15 14:13:48 +02:00
hlfmt.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
hwmon.h Improvements to SCRYPT autotuning strategy 2025-06-09 11:02:34 +02:00
induct.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
interface.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
keyboard_layout.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
locking.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
logfile.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
loopback.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
memory.h Add hcmalloc_aligned() and hcfree_aligned() 2023-05-08 23:11:33 +00:00
modules.h Improvements to SCRYPT autotuning strategy 2025-06-09 11:02:34 +02:00
monitor.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
mpsp.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
outfile_check.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
outfile.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
pidfile.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
potfile.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
restore.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
rp_cpu.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
rp.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
selftest.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
shared.h Autotune refactoring II: dynamic threads-per-block 2025-06-24 20:19:42 +02:00
slow_candidates.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
sort_r.h Fix some typos 2023-07-27 23:11:55 +07:00
status.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
stdout.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
straight.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
terminal.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
thread.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
timer.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
tuningdb.h Improvements to SCRYPT autotuning strategy 2025-06-09 11:02:34 +02:00
types.h Autotune refactoring II: dynamic threads-per-block 2025-06-24 20:19:42 +02:00
usage.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
user_options.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00
wordlist.h Prefix more macros to avoid collisions in other existing libraries 2023-01-30 14:41:12 +00:00