adl.c


Log

Author Commit Date CI Message
Luke Dashjr 543265d6 2012-01-24T14:34:17 Generalize --temp-cutoff and implement support for reading temperature from BitFORCE FPGAs
Con Kolivas c72a8b8c 2012-02-05T22:41:37 Silence ADL warnings.
Con Kolivas 23685aa4 2012-02-05T17:28:53 Continue auto-management of fan and engine speeds even if a device is disabled for safety reasons.
Con Kolivas f8fed37e 2012-02-05T17:24:26 No need to check we're highest performance level when throttling GPU engine speed.
Con Kolivas af5aaece 2012-01-30T21:15:47 Revert "Pass the correct GPU from the menu to the adl code." This reverts commit 7bcda9a28fcaff801ed9ee9e0b6613cbdb3be646. Corrected for virtual device twice by mistake.
Con Kolivas 94059c06 2012-01-30T21:07:16 Ensure all virtual_gpu entries are set when the number of ADL devices does not match the number of OpenCL devices.
Con Kolivas c9404f4d 2012-01-30T15:33:55 Make sure to set virtual adapters if --dev-reorder is not enabled or device numbers don't match.
Con Kolivas 5a14ec53 2012-01-30T15:21:14 Add a --dev-reorder option to only reorder devices according to PCI Bus ID when requested.
Con Kolivas 7bcda9a2 2012-01-30T12:42:43 Pass the correct GPU from the menu to the adl code.
Con Kolivas a73156ac 2012-01-30T10:02:51 Display GPU number and device name when ADL is successfully enabled on it.
Con Kolivas 176bbcbc 2012-01-30T09:44:19 Display GPU ordering remapping in verbose mode.
Con Kolivas 89196038 2012-01-30T09:15:20 Don't fail in the case the number of ADL and OpenCL devices do not match, and do not attempt to reorder devices unless they match. Instead give a warning about the likely cause and the potential consequence of it - Hardware monitoring may NOT match up with devices.
Con Kolivas f0746f0b 2012-01-30T08:18:50 Display error codes should ADL not return ADL_OK in the more critical function calls.
Con Kolivas cdcaaba6 2012-01-30T08:06:23 Revert "Add ADL_Overdrive5_ThermalDevices_Enum interface." This reverts commit 1e1519e93ec6a3de432dd0b34504675f037c3542.
Con Kolivas 430a1954 2012-01-30T08:06:00 Revert "Read off lpThermalControllerInfo from each ADL device." This reverts commit 2d29cdb6117be29ff6353d94a6be0784a588fdb6.
Con Kolivas 4ae0aad1 2012-01-30T08:05:36 Revert "Set iSize for thermal device enum first." This reverts commit 990bb4a994261fb0aca8a6bd1b324a3007583207. Thermal devices is not used. 1st of 3 reverts.
Con Kolivas 82af288e 2012-01-29T22:57:29 Revert "Fix various harmless warnings." This reverts commit a4b67f030fc0c7e2b18e79114a441c1e1617d5f8.
Con Kolivas a4b67f03 2012-01-29T21:06:17 Fix various harmless warnings.
Con Kolivas a8e46a07 2012-01-29T20:47:08 Add extensive ADL based device info in debug mode.
Con Kolivas 83a83676 2012-01-29T13:49:08 Linux's ADL uses a busnumber in descending order for devices so enumerate them in the opposite order to windows.
Con Kolivas 4bf01f01 2012-01-28T12:08:55 Fix potential overflow.
Con Kolivas 05970127 2012-01-28T11:26:56 Carry virtual gpu number across.
Con Kolivas 3bc05834 2012-01-28T11:19:28 Iterate and change virtual device order instead of shuffling ram.
Con Kolivas 371e5f68 2012-01-28T09:22:33 Reorder displayed devices to map to physical locations and initialise according to logical location instead.
Con Kolivas 5a0b4f62 2012-01-28T01:56:12 Map GPU devices to virtual devices in their true physical order based on BusNumber.
Con Kolivas 06fd9c4a 2012-01-26T23:27:10 Detect dual GPU cards by iterating through all GPUs, finding ones without fanspeed and matching twins with fanspeed one bus ID apart.
Kano 487327f8 2012-01-26T14:06:31 Remove compile warning
ckolivas 4995b7c2 2012-01-25T16:34:39 On dual GPUs, only autotune the shared fan once per gpu autotune cycle.
ckolivas c009c6cd 2012-01-25T16:16:28 Don't try to explicitly drift to exactly the target temperature, aim for just below it.
ckolivas 312724ce 2012-01-25T15:48:28 Adjust fan speed gently while in the optimal range when temperature is drifting to minimise overshoot in either direction.
Con Kolivas 9549dacf 2012-01-25T01:19:58 Detect dual GPU cards via the indirect information of - 1st card has a fan controller. 2nd card does not have a fan controller, cards share the same device name, and are one bus ID apart. Use this information to create paired devices, displaying the fan speed on both devices and using the hottest temperature from either GPU to control the overall fanspeed.
Con Kolivas 990bb4a9 2012-01-23T10:54:21 Set iSize for thermal device enum first.
Con Kolivas 2d29cdb6 2012-01-23T09:25:53 Read off lpThermalControllerInfo from each ADL device.
Con Kolivas 1e1519e9 2012-01-23T09:20:21 Add ADL_Overdrive5_ThermalDevices_Enum interface.
Kano ec2c0b78 2012-01-22T18:24:55 Add API commands: config, switchpool, gpu settings, save
Luke Dashjr 845961af 2012-01-05T19:26:01 Refactor to abstract device-specific code
Con Kolivas 400cb21d 2011-12-24T08:06:53 Off by one error in performance level.
Con Kolivas f4d657ee 2011-12-24T07:35:42 Only adjust gpu engine speed in autotune mode if the gpu is currently at the performance level of that being adjusted.
Con Kolivas 8c63061e 2011-10-23T20:50:52 Allow a fixed speed difference between memory and GPU clock speed that will change memory speed when GPU speed is changed in autotune mode.
Con Kolivas 5976f6b3 2011-10-14T21:51:55 Get rid of unused variable.
Con Kolivas 0ae3f718 2011-09-23T10:45:43 Check last temperature we reached and don't change fan speed if it's already correcting.
Con Kolivas b8ea0dd1 2011-09-17T13:23:58 Update curses logging to allow LOG_WARNING and LOG_ERR messages to still go through while within the menu, and drop share message to LOG_NOTICE.
Con Kolivas 5a24c282 2011-09-16T16:46:14 Try to set temperature regardless of whether get fanspeed fails. This may need to be reverted if it causes problems.
Con Kolivas 12e99c83 2011-09-16T16:42:11 Initialise all the iSizes of the ADL structures for completeness.
Con Kolivas 07c21bcb 2011-09-16T10:40:58 Don't forget to set the actual fanspeed too!
Con Kolivas 3c38adc9 2011-09-16T10:27:36 Only set the speed once, but set it only if fanspeed get says the card is ok and ready.
Con Kolivas 67fe6ab7 2011-09-16T10:26:25 Don't both with adapter speed set as it has no effect on mining speed.
Con Kolivas 92e1ffd3 2011-09-16T08:31:27 Store the targetfan even if the later getfanspeed fails in case it's temporary.
Con Kolivas 8feb661d 2011-09-15T20:46:39 Set the fanspeed in coarse rounded up values and then ever finer grained values in case the card does not support fine values.
Con Kolivas 3f10e80a 2011-09-15T12:18:30 If the user defined flag is not set on fanspeed, set the fanspeed with it first.
Con Kolivas 87ec3f47 2011-09-15T11:21:54 Convert fanspeed management to default on exit.
Con Kolivas 918ec7b0 2011-09-14T23:01:07 Enable adl earlier to allow values to be set in init_adl or they're silently ignored!
Con Kolivas 1db6ab0b 2011-09-14T22:18:49 Set targetfan when fanspeed is set on parameters.
Con Kolivas 2e09eee7 2011-09-14T21:45:04 Use the gpu_fan set value as the starting fan speed. Don't try and change the value if get() doesn't match as it's unreliable, just save the reentrant value. Limit fanspeeds to reported iMax and iMin.
Con Kolivas 88eb514c 2011-09-11T11:57:08 Only display supported values from fanspeed on change settings.
Con Kolivas b4009ada 2011-09-11T11:47:22 Remove redundant check.
Con Kolivas ebae03f2 2011-09-11T11:38:02 Do not bother resetting values to old ones if changes to GPU parameters report failure, instead returning a failure code only if the return value from get() differs.
Con Kolivas dff1a81d 2011-09-11T11:25:28 Use a re-entrant value to store what fanspeed we're trying to set in case the card doesn't support small changes. Force it to a multiple of 10% if it fails on trying to speed up the fan.
Con Kolivas 076677dd 2011-09-11T11:08:01 Flag any devices with autofan or autogpu as being managed.
Con Kolivas a602f4e5 2011-09-11T11:06:52 Only force the adapter speed to high if we've flagged this device as being managed.
Con Kolivas 25c77ae8 2011-09-09T11:53:45 Only display values in the log if they're supported and standardise device log line printing.
Con Kolivas 2fafdab9 2011-09-09T10:03:10 Allow adapterid 0 cards to enumerate as a device as they will be non-AMD cards, and enable ADL on any AMD card.
Con Kolivas b7d81781 2011-09-08T14:10:55 Setting the hysteresis is unlikely to be useful on the fly and doesn't belong in the per-gpu submenu.
Con Kolivas 0e1c2916 2011-09-08T14:05:41 Display fan range in autofan status.
Con Kolivas e0a9f1aa 2011-09-08T13:53:10 Allow temperature targets to be set on a per-card basis on the command line.
Con Kolivas d6f3bd05 2011-09-08T13:33:24 Display which GPU has overheated in warning message.
Con Kolivas b50041c8 2011-09-08T13:29:13 Allow per-device fan ranges to be set and use them in auto-fan mode.
Con Kolivas 9b5cd618 2011-09-08T13:04:39 Implement accepting a range of engine speeds as well to allow a lower limit to be specified on the command line.
Con Kolivas 7ea7f5f3 2011-09-08T10:51:32 Allow temperatures greater than 100 degrees.
Con Kolivas 4628db5b 2011-09-07T10:44:57 Change the fan speed by only 5% if it's over the target temperature but less than the hysteresis value to minimise overshoot down in temperature.
Con Kolivas 3997f308 2011-09-07T10:43:26 Add a thermal cutoff option as well and set it to 95 degrees by default.
Con Kolivas 311420db 2011-09-07T10:03:06 Flag adl as active if any card is successfully activated.
Con Kolivas 058303bc 2011-09-07T10:00:10 Only reset values on exiting if we've ever modified them.
Con Kolivas b8be1e6c 2011-09-07T09:17:51 Ignore whether the display is active or not since only display enabled devices work this way, and we skip over repeat entries anwyay.
Con Kolivas f89c032d 2011-09-06T12:04:23 The ° character is not reliably shown on all platforms so remove it.
Con Kolivas fd23532b 2011-09-06T09:41:58 Make adl attempt to compile only on win32 or linux since there is no support for it on onther platforms, and fix sleep() definition on win32.
Con Kolivas 16aff37c 2011-09-06T09:36:42 Fix compilation errors on mingw32 to do with order of pulling in headers, curses.h and definition of bool.
Con Kolivas 9f618f4a 2011-09-05T17:14:09 Lower profile settings cannot be higher than higher profile ones so link any drops in settings.
Con Kolivas ca379355 2011-09-05T16:14:43 Ramp up the fan more if we're over target temperature.
Con Kolivas bc972440 2011-09-05T16:05:04 Provide locking around all adl calls to prevent races.
Con Kolivas 666d724b 2011-09-05T13:48:06 Set a safe starting fan speed if we're automanaging the speeds.
Con Kolivas 5fc56a45 2011-09-05T09:36:43 Force the speed to high on startup and restore it to whatever the setting was on exit.
Con Kolivas cb29fb7d 2011-09-05T09:04:15 Remove the safety checks in speed setting since confirmation is done first in the menu, then show the new current values after a short pause.
Con Kolivas ee06a3ba 2011-09-05T08:33:00 Limit fanspeed to 85% properly when temperature is below overheat levels.
Con Kolivas 40491cd5 2011-09-05T08:32:31 Change default hysteresis to 3 degrees for lower average fanspeeds.
Con Kolivas 47f1a759 2011-09-04T23:23:31 Implement setting the GPU powertune value of all devices or each device as a comma separated value.
Con Kolivas 656bacc5 2011-09-04T23:14:36 Get the value of powertune in get_stats.
Con Kolivas 7711c6fb 2011-09-04T23:10:57 Implement changing of powertune value from the GPU change settings menu.
Con Kolivas bd292258 2011-09-04T22:56:19 Add support for monitoring powertune setting.
Con Kolivas 3a5663ca 2011-09-04T22:25:31 Implement setting the GPU fan speed of all devices or each device as a comma separated value.
Con Kolivas 8ae273c5 2011-09-04T22:08:42 Implement setting the GPU voltage of all devices or each device as a comma separated value.
Con Kolivas 54bc30ce 2011-09-04T22:01:58 Implement setting the GPU memory clock speed of all devices or each device as a comma separated value.
Con Kolivas ec8808d0 2011-09-04T21:55:06 Implement setting the GPU engine clock speed of all devices or each device as a comma separated value.
Con Kolivas 12a167a3 2011-09-04T13:57:40 Implement menus to change temperature limits.
Con Kolivas 1ed21937 2011-09-04T10:19:29 Combine all stats collating into one function to avoid repeating function calls on each variable.
Con Kolivas e9f886d8 2011-09-04T09:43:53 Allow target, overheat and hysteresis temperatures to be set from command line.
Con Kolivas 847adf68 2011-09-04T07:17:07 Add a small amount of hysteresis before lowering clock speed.
Con Kolivas 9b7262ec 2011-09-04T00:36:14 Clean up by setting performance profiles and fan settings to startup levels on exit.
Con Kolivas e9b5885e 2011-09-03T22:30:11 Add a gpu autotune option which adjusts GPU speed to maintain a target temperature within the bounds of the default GPU speed and any overclocking set.
Con Kolivas dcc97e45 2011-09-03T15:46:57 Add an --auto-fan command line option to allow all GPUs to have autofan enabled from startup.