1
mirror of https://github.com/hashcat/hashcat synced 2024-11-13 17:28:58 +01:00
hashcat/include/kernel_vendor.h
jsteube 0bf4e3c34a - Dropped all vector code since new GPU's are all scalar, makes the code much easier
- Some performance on low-end GPU may drop because of that, but only for a few hash-modes
- Dropped scalar code (aka warp) since we do not have any vector datatypes anymore
- Renamed C++ overloading functions memcat32_9 -> memcat_c32_w4x4_a3x4
- Still need to fix kernels to new function names, needs to be done manually
- Temperature Management needs to be rewritten partially because of conflicting datatypes names
- Added code to create different codepaths for NV on AMD in runtime in host (see data.vendor_id)
- Added code to create different codepaths for NV on AMD in runtime in kernels (see IS_NV and IS_AMD)
- First tests working for -m 0, for example
- Great performance increases in general for NV so far
- Tested amp_* and markov_* kernel
- Migrated special NV optimizations for rule processor
2015-12-15 12:04:22 +01:00

35 lines
459 B
C

/**
* Author......: Jens Steube <jens.steube@gmail.com>
* License.....: MIT
*/
#pragma OPENCL EXTENSION cl_khr_byte_addressable_store : enable
/**
* vendor specific
*/
#if VENDOR_ID == 4096
#define IS_AMD
#endif
#if VENDOR_ID == 4318
#define IS_NV
#endif
/**
* AMD specific
*/
#ifdef IS_AMD
#pragma OPENCL EXTENSION cl_amd_media_ops : enable
#pragma OPENCL EXTENSION cl_amd_media_ops2 : enable
#endif
/**
* NV specific
*/
#ifdef IS_NV
#endif