node-gpuinfo 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +674 -0
- package/README.md +336 -0
- package/binding.gyp +69 -0
- package/build/Release/gpu.exp +0 -0
- package/build/Release/gpu.lib +0 -0
- package/build/Release/gpu.node +0 -0
- package/build/Release/gpu.pdb +0 -0
- package/build/binding.sln +19 -0
- package/build/gpu.vcxproj +175 -0
- package/build/gpu.vcxproj.filters +169 -0
- package/example.js +69 -0
- package/index.js +33 -0
- package/package.json +68 -0
- package/src/binding.cpp +201 -0
- package/src/gpu_info.c +130 -0
- package/src/gpu_info.h +86 -0
- package/src/includes/adlx/ADLX.h +367 -0
- package/src/includes/adlx/ADLXDefines.h +1345 -0
- package/src/includes/adlx/ADLXHelper/ADLXHelper.c +175 -0
- package/src/includes/adlx/ADLXHelper/ADLXHelper.h +245 -0
- package/src/includes/adlx/ADLXHelper/WinAPIS.c +64 -0
- package/src/includes/adlx/ADLXStructures.h +206 -0
- package/src/includes/adlx/ADLXVersion.h +18 -0
- package/src/includes/adlx/I3DSettings.h +3476 -0
- package/src/includes/adlx/I3DSettings1.h +292 -0
- package/src/includes/adlx/I3DSettings2.h +317 -0
- package/src/includes/adlx/IApplications.h +397 -0
- package/src/includes/adlx/IChangedEvent.h +71 -0
- package/src/includes/adlx/ICollections.h +325 -0
- package/src/includes/adlx/IDesktops.h +918 -0
- package/src/includes/adlx/IDisplay3DLUT.h +663 -0
- package/src/includes/adlx/IDisplayGamma.h +683 -0
- package/src/includes/adlx/IDisplayGamut.h +760 -0
- package/src/includes/adlx/IDisplaySettings.h +3476 -0
- package/src/includes/adlx/IDisplays.h +2676 -0
- package/src/includes/adlx/IDisplays1.h +191 -0
- package/src/includes/adlx/IDisplays2.h +188 -0
- package/src/includes/adlx/IDisplays3.h +256 -0
- package/src/includes/adlx/IGPUAutoTuning.h +460 -0
- package/src/includes/adlx/IGPUManualFanTuning.h +1007 -0
- package/src/includes/adlx/IGPUManualGFXTuning.h +607 -0
- package/src/includes/adlx/IGPUManualPowerTuning.h +340 -0
- package/src/includes/adlx/IGPUManualVRAMTuning.h +576 -0
- package/src/includes/adlx/IGPUPresetTuning.h +469 -0
- package/src/includes/adlx/IGPUTuning.h +1239 -0
- package/src/includes/adlx/IGPUTuning1.h +197 -0
- package/src/includes/adlx/II2C.h +198 -0
- package/src/includes/adlx/ILog.h +72 -0
- package/src/includes/adlx/IMultiMedia.h +578 -0
- package/src/includes/adlx/IPerformanceMonitoring.h +2520 -0
- package/src/includes/adlx/IPerformanceMonitoring1.h +134 -0
- package/src/includes/adlx/IPerformanceMonitoring2.h +341 -0
- package/src/includes/adlx/IPerformanceMonitoring3.h +199 -0
- package/src/includes/adlx/IPowerTuning.h +473 -0
- package/src/includes/adlx/IPowerTuning1.h +515 -0
- package/src/includes/adlx/ISmartAccessMemory.h +114 -0
- package/src/includes/adlx/ISystem.h +1557 -0
- package/src/includes/adlx/ISystem1.h +237 -0
- package/src/includes/adlx/ISystem2.h +643 -0
- package/src/linux/amd_linux.c +269 -0
- package/src/linux/intel_linux.c +20 -0
- package/src/linux/nvidia_linux.c +257 -0
- package/src/macos/amd_mac.c +131 -0
- package/src/macos/intel_mac.c +131 -0
- package/src/macos/nvidia_mac.c +21 -0
- package/src/vendor/amd.c +37 -0
- package/src/vendor/intel.c +37 -0
- package/src/vendor/nvidia.c +37 -0
- package/src/windows/amd_windows.c +468 -0
- package/src/windows/intel_windows.c +157 -0
- package/src/windows/nvidia_windows.c +252 -0
|
@@ -0,0 +1,469 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright (c) 2021 - 2025 Advanced Micro Devices, Inc. All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
//-------------------------------------------------------------------------------------------------
|
|
5
|
+
|
|
6
|
+
#ifndef ADLX_IGPUPRESETTUNING_H
|
|
7
|
+
#define ADLX_IGPUPRESETTUNING_H
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include "ADLXStructures.h"
|
|
11
|
+
|
|
12
|
+
//-------------------------------------------------------------------------------------------------
|
|
13
|
+
//IGPUPresetTuning.h - Interfaces for ADLX GPU Preset Tuning functionality
|
|
14
|
+
|
|
15
|
+
// Preset Tuning
|
|
16
|
+
#pragma region IADLXGPUPresetTuning
|
|
17
|
+
#if defined (__cplusplus)
|
|
18
|
+
namespace adlx
|
|
19
|
+
{
|
|
20
|
+
class ADLX_NO_VTABLE IADLXGPUPresetTuning : public IADLXInterface
|
|
21
|
+
{
|
|
22
|
+
public:
|
|
23
|
+
ADLX_DECLARE_IID (L"IADLXGPUPresetTuning")
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
*@page DOX_IADLXGPUPresetTuning_IsSupportedPowerSaver IsSupportedPowerSaver
|
|
27
|
+
*@ENG_START_DOX @brief Checks if the power saver tuning preset is supported on a GPU. @ENG_END_DOX
|
|
28
|
+
*
|
|
29
|
+
*@syntax
|
|
30
|
+
*@codeStart
|
|
31
|
+
* @ref ADLX_RESULT IsSupportedPowerSaver (adlx_bool* supported)
|
|
32
|
+
*@codeEnd
|
|
33
|
+
*
|
|
34
|
+
*@params
|
|
35
|
+
*@paramrow{1.,[out],supported,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of power saver is returned. The variable is __true__ if power saver is supported. The variable is __false__ if power saver is not supported. @ENG_END_DOX}
|
|
36
|
+
*
|
|
37
|
+
*@retvalues
|
|
38
|
+
*@ENG_START_DOX If the state of power saver is successfully returned, __ADLX_OK__ is returned.<br>
|
|
39
|
+
* If the state of power saver is not successfully returned, an error code is returned.<br>
|
|
40
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
41
|
+
* @addinfo
|
|
42
|
+
* @ENG_START_DOX
|
|
43
|
+
* Use of the power saver tuning preset is limited to some GPUs.
|
|
44
|
+
* @ENG_END_DOX
|
|
45
|
+
*
|
|
46
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
47
|
+
*
|
|
48
|
+
*/
|
|
49
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsSupportedPowerSaver (adlx_bool* supported) = 0;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
*@page DOX_IADLXGPUPresetTuning_IsSupportedQuiet IsSupportedQuiet
|
|
53
|
+
*@ENG_START_DOX @brief Checks if the quiet tuning preset is supported on a GPU. @ENG_END_DOX
|
|
54
|
+
*
|
|
55
|
+
*@syntax
|
|
56
|
+
*@codeStart
|
|
57
|
+
* @ref ADLX_RESULT IsSupportedQuiet (adlx_bool* supported)
|
|
58
|
+
*@codeEnd
|
|
59
|
+
*
|
|
60
|
+
*@params
|
|
61
|
+
*@paramrow{1.,[out],supported,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of quiet is returned. The variable is __true__ if quiet is supported. The variable is __false__ if quiet is not supported. @ENG_END_DOX}
|
|
62
|
+
*
|
|
63
|
+
*@retvalues
|
|
64
|
+
*@ENG_START_DOX If the state of quiet is successfully returned, __ADLX_OK__ is returned.<br>
|
|
65
|
+
* If the state of quiet is not successfully returned, an error code is returned.<br>
|
|
66
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
67
|
+
*
|
|
68
|
+
* @addinfo
|
|
69
|
+
* @ENG_START_DOX
|
|
70
|
+
* The quiet tuning preset enables quiet operation with lowered power and fan settings.
|
|
71
|
+
* @ENG_END_DOX
|
|
72
|
+
*
|
|
73
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
74
|
+
*
|
|
75
|
+
*/
|
|
76
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsSupportedQuiet (adlx_bool* supported) = 0;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
*@page DOX_IADLXGPUPresetTuning_IsSupportedBalanced IsSupportedBalanced
|
|
80
|
+
*@ENG_START_DOX @brief Checks if the balanced tuning preset is supported on a GPU. @ENG_END_DOX
|
|
81
|
+
*
|
|
82
|
+
*@syntax
|
|
83
|
+
*@codeStart
|
|
84
|
+
* @ref ADLX_RESULT IsSupportedBalanced (adlx_bool* supported)
|
|
85
|
+
*@codeEnd
|
|
86
|
+
*
|
|
87
|
+
*@params
|
|
88
|
+
*@paramrow{1.,[out],supported,adlx_bool*,@ENG_START_DOX The pointer to a variable where the balanced of quiet is returned. The variable is __true__ if balanced is supported. The variable is __false__ if balanced is not supported. @ENG_END_DOX}
|
|
89
|
+
*
|
|
90
|
+
*@retvalues
|
|
91
|
+
*@ENG_START_DOX If the state of balanced is successfully returned, __ADLX_OK__ is returned.<br>
|
|
92
|
+
* If the state of balanced is not successfully returned, an error code is returned.<br>
|
|
93
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
94
|
+
*
|
|
95
|
+
* @addinfo
|
|
96
|
+
* @ENG_START_DOX
|
|
97
|
+
* The balanced tuning preset offers all-round performance with a balance of power, clocks, and fan settings. Use of the balanced tuning preset is limited to some GPUs.
|
|
98
|
+
* @ENG_END_DOX
|
|
99
|
+
*
|
|
100
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
101
|
+
*
|
|
102
|
+
*/
|
|
103
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsSupportedBalanced (adlx_bool* supported) = 0;
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
*@page DOX_IADLXGPUPresetTuning_IsSupportedTurbo IsSupportedTurbo
|
|
107
|
+
*@ENG_START_DOX @brief Checks if the turbo tuning preset is supported on a GPU. @ENG_END_DOX
|
|
108
|
+
*
|
|
109
|
+
*@syntax
|
|
110
|
+
*@codeStart
|
|
111
|
+
* @ref ADLX_RESULT IsSupportedTurbo (adlx_bool* supported)
|
|
112
|
+
*@codeEnd
|
|
113
|
+
*
|
|
114
|
+
*@params
|
|
115
|
+
*@paramrow{1.,[out],supported,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of turbo is returned. The variable is __true__ if turbo is supported. The variable is __false__ if turbo is not supported. @ENG_END_DOX}
|
|
116
|
+
*
|
|
117
|
+
*@retvalues
|
|
118
|
+
*@ENG_START_DOX If the state of turbo is successfully returned, __ADLX_OK__ is returned.<br>
|
|
119
|
+
* If the state of turbo is not successfully returned, an error code is returned.<br>
|
|
120
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
121
|
+
*
|
|
122
|
+
* @addinfo
|
|
123
|
+
* @ENG_START_DOX
|
|
124
|
+
* The turbo tuning preset sets a higher power limit to allow more headroom for performance. Use of the turbo tuning preset is limited to some GPUs.
|
|
125
|
+
* @ENG_END_DOX
|
|
126
|
+
*
|
|
127
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
128
|
+
*
|
|
129
|
+
*/
|
|
130
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsSupportedTurbo (adlx_bool* supported) = 0;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
*@page DOX_IADLXGPUPresetTuning_IsSupportedRage IsSupportedRage
|
|
134
|
+
*@ENG_START_DOX @brief Checks if the rage tuning preset is supported on a GPU. @ENG_END_DOX
|
|
135
|
+
*
|
|
136
|
+
*@syntax
|
|
137
|
+
*@codeStart
|
|
138
|
+
* @ref ADLX_RESULT IsSupportedRage (adlx_bool* supported)
|
|
139
|
+
*@codeEnd
|
|
140
|
+
*
|
|
141
|
+
*@params
|
|
142
|
+
*@paramrow{1.,[out],supported,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of rage is returned. The variable is __true__ if rage is supported. The variable is __false__ if rage is not supported. @ENG_END_DOX}
|
|
143
|
+
*
|
|
144
|
+
*@retvalues
|
|
145
|
+
*@ENG_START_DOX If the state of rage is successfully returned, __ADLX_OK__ is returned.<br>
|
|
146
|
+
* If the state of rage is not successfully returned, an error code is returned.<br>
|
|
147
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
148
|
+
*
|
|
149
|
+
* @addinfo
|
|
150
|
+
* @ENG_START_DOX
|
|
151
|
+
* The rage tuning preset sets a higher power limit to allow more headroom for performance.
|
|
152
|
+
* @ENG_END_DOX
|
|
153
|
+
*
|
|
154
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
155
|
+
*
|
|
156
|
+
*/
|
|
157
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsSupportedRage (adlx_bool* supported) = 0;
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
*@page DOX_IADLXGPUPresetTuning_IsCurrentPowerSaver IsCurrentPowerSaver
|
|
161
|
+
*@ENG_START_DOX @brief Checks if the power saver tuning preset is used on a GPU. @ENG_END_DOX
|
|
162
|
+
*
|
|
163
|
+
*@syntax
|
|
164
|
+
*@codeStart
|
|
165
|
+
* @ref ADLX_RESULT IsCurrentPowerSaver (adlx_bool* isPowerSaver)
|
|
166
|
+
*@codeEnd
|
|
167
|
+
*
|
|
168
|
+
*@params
|
|
169
|
+
*@paramrow{1.,[out],isPowerSaver,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of power saver is returned. The variable is __true__ if power saver is applied. The variable is __false__ if power saver is not applied. @ENG_END_DOX}
|
|
170
|
+
*
|
|
171
|
+
*@retvalues
|
|
172
|
+
*@ENG_START_DOX If the state of power saver is successfully returned, __ADLX_OK__ is returned.<br>
|
|
173
|
+
* If the state of power saver is not successfully returned, an error code is returned.<br>
|
|
174
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
175
|
+
*
|
|
176
|
+
* @addinfo
|
|
177
|
+
* @ENG_START_DOX
|
|
178
|
+
* Use of the power saver tuning preset is limited to some GPUs.
|
|
179
|
+
* @ENG_END_DOX
|
|
180
|
+
*
|
|
181
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
182
|
+
*
|
|
183
|
+
*/
|
|
184
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsCurrentPowerSaver (adlx_bool* isPowerSaver) = 0;
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
*@page DOX_IADLXGPUPresetTuning_IsCurrentQuiet IsCurrentQuiet
|
|
188
|
+
*@ENG_START_DOX @brief Checks if the quiet tuning preset is used on a GPU. @ENG_END_DOX
|
|
189
|
+
*
|
|
190
|
+
*@syntax
|
|
191
|
+
*@codeStart
|
|
192
|
+
* @ref ADLX_RESULT IsCurrentQuiet (adlx_bool* isQuiet)
|
|
193
|
+
*@codeEnd
|
|
194
|
+
*
|
|
195
|
+
*@params
|
|
196
|
+
*@paramrow{1.,[out],isQuiet,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of quiet is returned. The variable is __true__ if quiet is applied. The variable is __false__ if quiet is not applied. @ENG_END_DOX}
|
|
197
|
+
*
|
|
198
|
+
*@retvalues
|
|
199
|
+
*@ENG_START_DOX If the state of quiet is successfully returned, __ADLX_OK__ is returned.<br>
|
|
200
|
+
* If the state of quiet is not successfully returned, an error code is returned.<br>
|
|
201
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
202
|
+
*
|
|
203
|
+
* @addinfo
|
|
204
|
+
* @ENG_START_DOX
|
|
205
|
+
* The quiet tuning preset enables quiet operation with lowered power and fan settings.
|
|
206
|
+
* @ENG_END_DOX
|
|
207
|
+
*
|
|
208
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
209
|
+
*
|
|
210
|
+
*/
|
|
211
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsCurrentQuiet (adlx_bool* isQuiet) = 0;
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
*@page DOX_IADLXGPUPresetTuning_IsCurrentBalanced IsCurrentBalanced
|
|
215
|
+
*@ENG_START_DOX @brief Checks if the balanced tuning preset is used on a GPU. @ENG_END_DOX
|
|
216
|
+
*
|
|
217
|
+
*@syntax
|
|
218
|
+
*@codeStart
|
|
219
|
+
* @ref ADLX_RESULT IsCurrentBalanced (adlx_bool* isBalanced)
|
|
220
|
+
*@codeEnd
|
|
221
|
+
*
|
|
222
|
+
*@params
|
|
223
|
+
*@paramrow{1.,[out],isBalanced,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of balanced is returned. The variable is __true__ if balanced is applied. The variable is __false__ if balanced is not applied. @ENG_END_DOX}
|
|
224
|
+
*
|
|
225
|
+
*@retvalues
|
|
226
|
+
*@ENG_START_DOX If the state of balanced is successfully returned, __ADLX_OK__ is returned.<br>
|
|
227
|
+
* If the state of balanced is not successfully returned, an error code is returned.<br>
|
|
228
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
229
|
+
*
|
|
230
|
+
* @addinfo
|
|
231
|
+
* @ENG_START_DOX
|
|
232
|
+
* The balanced tuning preset offers all-round performance with a balance of power, clocks, and fan settings. Use of the balanced tuning preset is limited to some GPUs.
|
|
233
|
+
* @ENG_END_DOX
|
|
234
|
+
*
|
|
235
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
236
|
+
*
|
|
237
|
+
*/
|
|
238
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsCurrentBalanced (adlx_bool* isBalance) = 0;
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
*@page DOX_IADLXGPUPresetTuning_IsCurrentTurbo IsCurrentTurbo
|
|
242
|
+
*@ENG_START_DOX @brief Checks if the turbo tuning preset is used on a GPU. @ENG_END_DOX
|
|
243
|
+
*
|
|
244
|
+
*@syntax
|
|
245
|
+
*@codeStart
|
|
246
|
+
* @ref ADLX_RESULT IsCurrentTurbo (adlx_bool* isTurbo)
|
|
247
|
+
*@codeEnd
|
|
248
|
+
*
|
|
249
|
+
*@params
|
|
250
|
+
*@paramrow{1.,[out],isTurbo,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of turbo is returned. The variable is __true__ if turbo is applied. The variable is __false__ if turbo is not applied. @ENG_END_DOX}
|
|
251
|
+
*
|
|
252
|
+
*@retvalues
|
|
253
|
+
*@ENG_START_DOX If the state of turbo is successfully returned, __ADLX_OK__ is returned.<br>
|
|
254
|
+
* If the state of turbo is not successfully returned, an error code is returned.<br>
|
|
255
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
256
|
+
*
|
|
257
|
+
* @addinfo
|
|
258
|
+
* @ENG_START_DOX
|
|
259
|
+
* The turbo tuning preset sets a higher power limit to allow more headroom for performance. Use of the turbo preset is limited to some GPUs.
|
|
260
|
+
* @ENG_END_DOX
|
|
261
|
+
*
|
|
262
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
263
|
+
*
|
|
264
|
+
*/
|
|
265
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsCurrentTurbo (adlx_bool* isTurbo) = 0;
|
|
266
|
+
|
|
267
|
+
/**
|
|
268
|
+
*@page DOX_IADLXGPUPresetTuning_IsCurrentRage IsCurrentRage
|
|
269
|
+
*@ENG_START_DOX @brief Checks if the rage tuning preset is used on a GPU. @ENG_END_DOX
|
|
270
|
+
*
|
|
271
|
+
*@syntax
|
|
272
|
+
*@codeStart
|
|
273
|
+
* @ref ADLX_RESULT IsCurrentRage (adlx_bool* isRage)
|
|
274
|
+
*@codeEnd
|
|
275
|
+
*
|
|
276
|
+
*@params
|
|
277
|
+
*@paramrow{1.,[out],isRage,adlx_bool*,@ENG_START_DOX The pointer to a variable where the state of rage is returned. The variable is __true__ if rage is applied. The variable is __false__ if rage is not applied. @ENG_END_DOX}
|
|
278
|
+
*
|
|
279
|
+
*@retvalues
|
|
280
|
+
*@ENG_START_DOX If the state of rage is successfully returned, __ADLX_OK__ is returned.<br>
|
|
281
|
+
* If the state of rage is not successfully returned, an error code is returned.<br>
|
|
282
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
283
|
+
*
|
|
284
|
+
* @addinfo
|
|
285
|
+
* @ENG_START_DOX
|
|
286
|
+
* The rage tuning preset sets a higher power limit to allow more headroom for performance.
|
|
287
|
+
* @ENG_END_DOX
|
|
288
|
+
*
|
|
289
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
290
|
+
*
|
|
291
|
+
*/
|
|
292
|
+
virtual ADLX_RESULT ADLX_STD_CALL IsCurrentRage (adlx_bool* isRage) = 0;
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
*@page DOX_IADLXGPUPresetTuning_SetPowerSaver SetPowerSaver
|
|
296
|
+
*@ENG_START_DOX @brief Sets the power saver tuning preset on a GPU. @ENG_END_DOX
|
|
297
|
+
*
|
|
298
|
+
*@syntax
|
|
299
|
+
*@codeStart
|
|
300
|
+
* @ref ADLX_RESULT SetPowerSaver ()
|
|
301
|
+
*@codeEnd
|
|
302
|
+
*
|
|
303
|
+
*@params
|
|
304
|
+
* N/A
|
|
305
|
+
*
|
|
306
|
+
*@retvalues
|
|
307
|
+
*@ENG_START_DOX If the power saver is successfully applied, __ADLX_OK__ is returned.<br>
|
|
308
|
+
* If the power saver is not successfully applied, an error code is returned.<br>
|
|
309
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
310
|
+
*
|
|
311
|
+
* @addinfo
|
|
312
|
+
* @ENG_START_DOX
|
|
313
|
+
* Use of the power saver tuning preset is limited to some GPUs.
|
|
314
|
+
* @ENG_END_DOX
|
|
315
|
+
*
|
|
316
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
317
|
+
*
|
|
318
|
+
*/
|
|
319
|
+
virtual ADLX_RESULT ADLX_STD_CALL SetPowerSaver () = 0;
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
*@page DOX_IADLXGPUPresetTuning_SetQuiet SetQuiet
|
|
323
|
+
*@ENG_START_DOX @brief Sets the quiet tuning preset on a GPU. @ENG_END_DOX
|
|
324
|
+
*
|
|
325
|
+
*@syntax
|
|
326
|
+
*@codeStart
|
|
327
|
+
* @ref ADLX_RESULT SetQuiet ()
|
|
328
|
+
*@codeEnd
|
|
329
|
+
*
|
|
330
|
+
*@params
|
|
331
|
+
* N/A
|
|
332
|
+
*
|
|
333
|
+
*@retvalues
|
|
334
|
+
*@ENG_START_DOX If the quiet is successfully applied, __ADLX_OK__ is returned.<br>
|
|
335
|
+
* If the quiet is not successfully applied, an error code is returned.<br>
|
|
336
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
337
|
+
*
|
|
338
|
+
* @addinfo
|
|
339
|
+
* @ENG_START_DOX
|
|
340
|
+
* The quiet tuning preset enables quiet operation with lowered power and fan settings.
|
|
341
|
+
* @ENG_END_DOX
|
|
342
|
+
*
|
|
343
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
344
|
+
*
|
|
345
|
+
*/
|
|
346
|
+
virtual ADLX_RESULT ADLX_STD_CALL SetQuiet () = 0;
|
|
347
|
+
|
|
348
|
+
/**
|
|
349
|
+
*@page DOX_IADLXGPUPresetTuning_SetBalanced SetBalanced
|
|
350
|
+
*@ENG_START_DOX @brief Sets the balanced tuning preset on a GPU. @ENG_END_DOX
|
|
351
|
+
*
|
|
352
|
+
*@syntax
|
|
353
|
+
*@codeStart
|
|
354
|
+
* @ref ADLX_RESULT SetBalanced ()
|
|
355
|
+
*@codeEnd
|
|
356
|
+
*
|
|
357
|
+
*@params
|
|
358
|
+
* N/A
|
|
359
|
+
*
|
|
360
|
+
*@retvalues
|
|
361
|
+
*@ENG_START_DOX If the balanced is successfully applied, __ADLX_OK__ is returned.<br>
|
|
362
|
+
* If the balanced is not successfully applied, an error code is returned.<br>
|
|
363
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
364
|
+
*
|
|
365
|
+
* @addinfo
|
|
366
|
+
* @ENG_START_DOX
|
|
367
|
+
* The balanced tuning preset offers all-round performance with a balance of power, clocks, and fan settings. Use of the balanced tuning preset is limited to some GPUs.
|
|
368
|
+
* @ENG_END_DOX
|
|
369
|
+
*
|
|
370
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
371
|
+
*
|
|
372
|
+
*/
|
|
373
|
+
virtual ADLX_RESULT ADLX_STD_CALL SetBalanced () = 0;
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
*@page DOX_IADLXGPUPresetTuning_SetTurbo SetTurbo
|
|
377
|
+
*@ENG_START_DOX @brief Sets the turbo tuning preset on a GPU. @ENG_END_DOX
|
|
378
|
+
*
|
|
379
|
+
*@syntax
|
|
380
|
+
*@codeStart
|
|
381
|
+
* @ref ADLX_RESULT SetTurbo ()
|
|
382
|
+
*@codeEnd
|
|
383
|
+
*
|
|
384
|
+
*@params
|
|
385
|
+
* N/A
|
|
386
|
+
*
|
|
387
|
+
*@retvalues
|
|
388
|
+
*@ENG_START_DOX If the turbo is successfully applied, __ADLX_OK__ is returned.<br>
|
|
389
|
+
* If the turbo is not successfully applied, an error code is returned.<br>
|
|
390
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
391
|
+
*
|
|
392
|
+
* @addinfo
|
|
393
|
+
* @ENG_START_DOX
|
|
394
|
+
* The turbo tuning preset sets a higher power limit to allow more headroom for performance. Use of the turbo tuning preset is limited to some GPUs.
|
|
395
|
+
* @ENG_END_DOX
|
|
396
|
+
*
|
|
397
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
398
|
+
*
|
|
399
|
+
*/
|
|
400
|
+
virtual ADLX_RESULT ADLX_STD_CALL SetTurbo () = 0;
|
|
401
|
+
|
|
402
|
+
/**
|
|
403
|
+
*@page DOX_IADLXGPUPresetTuning_SetRage SetRage
|
|
404
|
+
*@ENG_START_DOX @brief Sets the rage tuning preset on a GPU. @ENG_END_DOX
|
|
405
|
+
*
|
|
406
|
+
*@syntax
|
|
407
|
+
*@codeStart
|
|
408
|
+
* @ref ADLX_RESULT SetRage ()
|
|
409
|
+
*@codeEnd
|
|
410
|
+
*
|
|
411
|
+
*@params
|
|
412
|
+
* N/A
|
|
413
|
+
*
|
|
414
|
+
*@retvalues
|
|
415
|
+
*@ENG_START_DOX If the rage is successfully applied, __ADLX_OK__ is returned.<br>
|
|
416
|
+
* If the rage is not successfully applied, an error code is returned.<br>
|
|
417
|
+
* Refer to @ref ADLX_RESULT for success codes and error codes.<br> @ENG_END_DOX
|
|
418
|
+
*
|
|
419
|
+
* @addinfo
|
|
420
|
+
* @ENG_START_DOX
|
|
421
|
+
* The rage tuning preset sets a higher power limit to allow more headroom for performance.
|
|
422
|
+
* @ENG_END_DOX
|
|
423
|
+
*
|
|
424
|
+
*@copydoc IADLXGPUPresetTuning_REQ_TABLE
|
|
425
|
+
*
|
|
426
|
+
*/
|
|
427
|
+
virtual ADLX_RESULT ADLX_STD_CALL SetRage () = 0;
|
|
428
|
+
};
|
|
429
|
+
//----------------------------------------------------------------------------------------------
|
|
430
|
+
typedef IADLXInterfacePtr_T<IADLXGPUPresetTuning> IADLXGPUPresetTuningPtr;
|
|
431
|
+
} //namespace adlx
|
|
432
|
+
#else //__cplusplus
|
|
433
|
+
ADLX_DECLARE_IID (IADLXGPUPresetTuning, L"IADLXGPUPresetTuning")
|
|
434
|
+
|
|
435
|
+
typedef struct IADLXGPUPresetTuning IADLXGPUPresetTuning;
|
|
436
|
+
|
|
437
|
+
typedef struct IADLXGPUPresetTuningVtbl
|
|
438
|
+
{
|
|
439
|
+
//IADLXInterface
|
|
440
|
+
adlx_long (ADLX_STD_CALL *Acquire)(IADLXGPUPresetTuning* pThis);
|
|
441
|
+
adlx_long (ADLX_STD_CALL *Release)(IADLXGPUPresetTuning* pThis);
|
|
442
|
+
ADLX_RESULT (ADLX_STD_CALL *QueryInterface)(IADLXGPUPresetTuning* pThis, const wchar_t* interfaceId, void** ppInterface);
|
|
443
|
+
|
|
444
|
+
//IADLXGPUPresetTuning
|
|
445
|
+
ADLX_RESULT (ADLX_STD_CALL *IsSupportedPowerSaver)(IADLXGPUPresetTuning* pThis, adlx_bool* supported);
|
|
446
|
+
ADLX_RESULT (ADLX_STD_CALL *IsSupportedQuiet)(IADLXGPUPresetTuning* pThis, adlx_bool* supported);
|
|
447
|
+
ADLX_RESULT (ADLX_STD_CALL *IsSupportedBalanced)(IADLXGPUPresetTuning* pThis, adlx_bool* supported);
|
|
448
|
+
ADLX_RESULT (ADLX_STD_CALL *IsSupportedTurbo)(IADLXGPUPresetTuning* pThis, adlx_bool* supported);
|
|
449
|
+
ADLX_RESULT (ADLX_STD_CALL *IsSupportedRage)(IADLXGPUPresetTuning* pThis, adlx_bool* supported);
|
|
450
|
+
|
|
451
|
+
ADLX_RESULT (ADLX_STD_CALL *IsCurrentPowerSaver)(IADLXGPUPresetTuning* pThis, adlx_bool* isPowerSaver);
|
|
452
|
+
ADLX_RESULT (ADLX_STD_CALL *IsCurrentQuiet)(IADLXGPUPresetTuning* pThis, adlx_bool* isQuiet);
|
|
453
|
+
ADLX_RESULT (ADLX_STD_CALL *IsCurrentBalanced)(IADLXGPUPresetTuning* pThis, adlx_bool* isBalance);
|
|
454
|
+
ADLX_RESULT (ADLX_STD_CALL *IsCurrentTurbo)(IADLXGPUPresetTuning* pThis, adlx_bool* isTurbo);
|
|
455
|
+
ADLX_RESULT (ADLX_STD_CALL *IsCurrentRage)(IADLXGPUPresetTuning* pThis, adlx_bool* isRage);
|
|
456
|
+
|
|
457
|
+
ADLX_RESULT (ADLX_STD_CALL *SetPowerSaver)(IADLXGPUPresetTuning* pThis);
|
|
458
|
+
ADLX_RESULT (ADLX_STD_CALL *SetQuiet)(IADLXGPUPresetTuning* pThis);
|
|
459
|
+
ADLX_RESULT (ADLX_STD_CALL *SetBalanced)(IADLXGPUPresetTuning* pThis);
|
|
460
|
+
ADLX_RESULT (ADLX_STD_CALL *SetTurbo)(IADLXGPUPresetTuning* pThis);
|
|
461
|
+
ADLX_RESULT (ADLX_STD_CALL *SetRage)(IADLXGPUPresetTuning* pThis);
|
|
462
|
+
|
|
463
|
+
}IADLXGPUPresetTuningVtbl;
|
|
464
|
+
|
|
465
|
+
struct IADLXGPUPresetTuning { const IADLXGPUPresetTuningVtbl *pVtbl; };
|
|
466
|
+
#endif //__cplusplus
|
|
467
|
+
#pragma endregion IADLXGPUPresetTuning
|
|
468
|
+
|
|
469
|
+
#endif//ADLX_IGPUPRESETTUNING_H
|