mirror of
https://github.com/hashcat/hashcat.git
synced 2025-01-09 15:20:59 +00:00
Added current engine clock and current memory clock to the status display (ADL only atm)
Automatically enable AMD powertune in benchmark-mode
This commit is contained in:
parent
75a6e432db
commit
e97fa06a7a
@ -23,6 +23,7 @@ It combines all features of all hashcat projects in one project.
|
|||||||
- Added makefile native compilation target
|
- Added makefile native compilation target
|
||||||
- Added makefile install and uninstall targets
|
- Added makefile install and uninstall targets
|
||||||
- Added autotuning engine and user-configurable tuning database
|
- Added autotuning engine and user-configurable tuning database
|
||||||
|
- Added current engine clock and current memory clock to the status display
|
||||||
- Added execution timer of the running kernel to the status display
|
- Added execution timer of the running kernel to the status display
|
||||||
- Added command prompt to quit at next restore checkpoint
|
- Added command prompt to quit at next restore checkpoint
|
||||||
- Added human-readable error message for the OpenCL error codes
|
- Added human-readable error message for the OpenCL error codes
|
||||||
|
@ -1457,6 +1457,8 @@ int hm_check_fanspeed_control (void *adl, hm_attrs_t *hm_device, u32 *valid_adl_
|
|||||||
int hm_get_temperature_with_device_id (const uint device_id);
|
int hm_get_temperature_with_device_id (const uint device_id);
|
||||||
int hm_get_fanspeed_with_device_id (const uint device_id);
|
int hm_get_fanspeed_with_device_id (const uint device_id);
|
||||||
int hm_get_utilization_with_device_id (const uint device_id);
|
int hm_get_utilization_with_device_id (const uint device_id);
|
||||||
|
int hm_get_memoryspeed_with_device_id (const uint device_id);
|
||||||
|
int hm_get_corespeed_with_device_id (const uint device_id);
|
||||||
|
|
||||||
int hm_set_fanspeed_with_device_id_amd (const uint device_id, const int fanspeed);
|
int hm_set_fanspeed_with_device_id_amd (const uint device_id, const int fanspeed);
|
||||||
|
|
||||||
|
@ -1550,9 +1550,13 @@ void status_display ()
|
|||||||
char utilization[HM_STR_BUF_SIZE] = { 0 };
|
char utilization[HM_STR_BUF_SIZE] = { 0 };
|
||||||
char temperature[HM_STR_BUF_SIZE] = { 0 };
|
char temperature[HM_STR_BUF_SIZE] = { 0 };
|
||||||
char fanspeed[HM_STR_BUF_SIZE] = { 0 };
|
char fanspeed[HM_STR_BUF_SIZE] = { 0 };
|
||||||
|
char corespeed[HM_STR_BUF_SIZE] = { 0 };
|
||||||
|
char memoryspeed[HM_STR_BUF_SIZE] = { 0 };
|
||||||
|
|
||||||
hm_device_val_to_str ((char *) utilization, HM_STR_BUF_SIZE, "%", hm_get_utilization_with_device_id (device_id));
|
hm_device_val_to_str ((char *) utilization, HM_STR_BUF_SIZE, "%", hm_get_utilization_with_device_id (device_id));
|
||||||
hm_device_val_to_str ((char *) temperature, HM_STR_BUF_SIZE, "c", hm_get_temperature_with_device_id (device_id));
|
hm_device_val_to_str ((char *) temperature, HM_STR_BUF_SIZE, "c", hm_get_temperature_with_device_id (device_id));
|
||||||
|
hm_device_val_to_str ((char *) corespeed, HM_STR_BUF_SIZE, "Mhz", hm_get_corespeed_with_device_id (device_id));
|
||||||
|
hm_device_val_to_str ((char *) memoryspeed, HM_STR_BUF_SIZE, "Mhz", hm_get_memoryspeed_with_device_id (device_id));
|
||||||
|
|
||||||
if (device_param->device_vendor_id == VENDOR_ID_AMD)
|
if (device_param->device_vendor_id == VENDOR_ID_AMD)
|
||||||
{
|
{
|
||||||
@ -1563,7 +1567,7 @@ void status_display ()
|
|||||||
hm_device_val_to_str ((char *) fanspeed, HM_STR_BUF_SIZE, "%", hm_get_fanspeed_with_device_id (device_id));
|
hm_device_val_to_str ((char *) fanspeed, HM_STR_BUF_SIZE, "%", hm_get_fanspeed_with_device_id (device_id));
|
||||||
}
|
}
|
||||||
|
|
||||||
log_info ("HWMon.GPU.#%d...: %s Util, %s Temp, %s Fan", device_id + 1, utilization, temperature, fanspeed);
|
log_info ("HWMon.GPU.#%d...: %s Util, %s Temp, %s Fan, %s Core, %s Memory", device_id + 1, utilization, temperature, fanspeed, corespeed, memoryspeed);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -3841,6 +3845,7 @@ static void *thread_monitor (void *p)
|
|||||||
|
|
||||||
if (data.devices_status != STATUS_RUNNING) continue;
|
if (data.devices_status != STATUS_RUNNING) continue;
|
||||||
|
|
||||||
|
|
||||||
#ifdef HAVE_HWMON
|
#ifdef HAVE_HWMON
|
||||||
if (hwmon_check == 1)
|
if (hwmon_check == 1)
|
||||||
{
|
{
|
||||||
@ -6883,6 +6888,7 @@ int main (int argc, char **argv)
|
|||||||
potfile_disable = 1;
|
potfile_disable = 1;
|
||||||
weak_hash_threshold = 0;
|
weak_hash_threshold = 0;
|
||||||
gpu_temp_disable = 1;
|
gpu_temp_disable = 1;
|
||||||
|
powertune_enable = 1;
|
||||||
|
|
||||||
data.status_timer = status_timer;
|
data.status_timer = status_timer;
|
||||||
data.restore_timer = restore_timer;
|
data.restore_timer = restore_timer;
|
||||||
|
46
src/shared.c
46
src/shared.c
@ -3231,6 +3231,52 @@ int hm_get_utilization_with_device_id (const uint device_id)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int hm_get_memoryspeed_with_device_id (const uint device_id)
|
||||||
|
{
|
||||||
|
if ((data.devices_param[device_id].device_type & CL_DEVICE_TYPE_GPU) == 0) return -1;
|
||||||
|
|
||||||
|
#ifdef HAVE_ADL
|
||||||
|
if (data.devices_param[device_id].device_vendor_id == VENDOR_ID_AMD)
|
||||||
|
{
|
||||||
|
if (data.hm_amd)
|
||||||
|
{
|
||||||
|
ADLPMActivity PMActivity;
|
||||||
|
|
||||||
|
PMActivity.iSize = sizeof (ADLPMActivity);
|
||||||
|
|
||||||
|
if (hm_ADL_Overdrive_CurrentActivity_Get (data.hm_amd, data.hm_device[device_id].adapter_index.amd, &PMActivity) != ADL_OK) return -1;
|
||||||
|
|
||||||
|
return PMActivity.iMemoryClock / 100;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // HAVE_ADL
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int hm_get_corespeed_with_device_id (const uint device_id)
|
||||||
|
{
|
||||||
|
if ((data.devices_param[device_id].device_type & CL_DEVICE_TYPE_GPU) == 0) return -1;
|
||||||
|
|
||||||
|
#ifdef HAVE_ADL
|
||||||
|
if (data.devices_param[device_id].device_vendor_id == VENDOR_ID_AMD)
|
||||||
|
{
|
||||||
|
if (data.hm_amd)
|
||||||
|
{
|
||||||
|
ADLPMActivity PMActivity;
|
||||||
|
|
||||||
|
PMActivity.iSize = sizeof (ADLPMActivity);
|
||||||
|
|
||||||
|
if (hm_ADL_Overdrive_CurrentActivity_Get (data.hm_amd, data.hm_device[device_id].adapter_index.amd, &PMActivity) != ADL_OK) return -1;
|
||||||
|
|
||||||
|
return PMActivity.iEngineClock / 100;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // HAVE_ADL
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef HAVE_ADL
|
#ifdef HAVE_ADL
|
||||||
int hm_set_fanspeed_with_device_id_amd (const uint device_id, const int fanspeed)
|
int hm_set_fanspeed_with_device_id_amd (const uint device_id, const int fanspeed)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user