Win32 API 日本語リファレンス
ホームGraphics.DXCore › DXCoreAdapterState

DXCoreAdapterState

列挙型
基底型u4

メンバー 11

名前10進16進説明
IsDriverUpdateInProgress00x0

IsDriverUpdateInProgress アダプター状態を指定します。この状態が true の場合、そのアダプターでドライバーの更新が開始されているものの、まだ完了していないことを示します。ドライバーの更新が既に完了している場合、アダプターは無効化されているため、QueryState の呼び出しは DXGI_ERROR_DEVICE_REMOVED という HRESULT を返します。

QueryState を呼び出す場合、IsDriverUpdateInProgress 状態項目の型は uint8_t で、ブール値を表します。

重要。この状態項目は SetState ではサポートされていません。

AdapterMemoryBudget10x1

AdapterMemoryBudget アダプター状態を指定します。これは、アダプターのメモリ バジェットを取得または要求します。

QueryState を呼び出す場合、AdapterMemoryBudget アダプター状態の型は、inputStateDetails については DXCoreAdapterMemoryBudgetNodeSegmentGroupoutputBuffer については DXCoreAdapterMemoryBudget です。

重要。この状態項目は SetState ではサポートされていません。

AdapterMemoryUsageBytes20x2このクエリは、物理アダプターのインデックスと、専用 (Dedicated) か共有 (Shared) かを入力として受け取り、GPU メモリの専用部分または共有部分について、コミット済みメモリと常駐メモリをそれぞれ出力します。
AdapterMemoryUsageByProcessBytes30x3このクエリは、エンジン ID、物理アダプターのインデックス、およびプロセス ハンドルを入力として受け取り、GPU メモリの専用部分または共有部分におけるコミット済みメモリと常駐メモリをそれぞれ出力します。
AdapterEngineRunningTimeMicroseconds40x4このクエリは、エンジン ID と物理アダプターのインデックスを入力として受け取り、エンジンの実行時間を出力します。
AdapterEngineRunningTimeByProcessMicroseconds50x5このクエリは、エンジン ID、物理アダプターのインデックス、およびプロセス ハンドルを入力として受け取り、エンジンの実行時間を出力します。
AdapterTemperatureCelsius60x6このクエリは、物理アダプターのインデックスを入力として受け取り、現在の GPU 温度を摂氏で出力します。
AdapterInUseProcessCount70x7このアダプターを使用しているプロセスの数と、それに含まれる PID をそれぞれ返します。
AdapterInUseProcessSet80x8このアダプターを使用しているプロセスの数と、それに含まれる PID をそれぞれ返します。
AdapterEngineFrequencyHertz90x9

このクエリは、物理アダプターのインデックスとエンジンのインデックスを受け取り、対応するエンジンのクロック周波数をヘルツ単位で出力します。出力構造体には、オーバークロックを行う場合と行わない場合の、そのエンジンの最大周波数も含まれます。


uint64_t GetEngineFrequency(com_ptr adapter, uint32_t physicalIndex, uint32_t engineIndex)
{
    DXCoreAdapterEngineIndex index;
    index.PhysicalAdapterIndex = physicalIndex;
    index.EngineIndex = engineIndex;

    DXCoreFrequencyQueryOutput frequencyData = {};

    winrt::check_hresult(adapter->QueryState(DXCoreAdapterState::AdapterEngineFrequencyHertz, &index, &frequencyData));

    return frequencyData.Frequency;
}
AdapterMemoryFrequencyHertz100xA

このクエリは、物理アダプターのインデックスを受け取り、そのメモリのクロック周波数をヘルツ単位で出力します。出力構造体には、オーバークロックを行う場合と行わない場合の、メモリの最大周波数も含まれます。


uint64_t GetEngineFrequency(com_ptr adapter, uint32_t physicalIndex, uint32_t engineIndex)
{
uint64_t GetMemoryFrequency(com_ptr adapter, uint32_t physicalIndex)
{
    DXCoreFrequencyQueryOutput frequencyData = {};

    winrt::check_hresult(adapter->QueryState(DXCoreAdapterState::AdapterMemoryFrequencyHertz, &physicalIndex, &frequencyData));

    return frequencyData.frequency;
}

公式ドキュメント

DXCore アダプターの状態の種類を指定する定数を定義します。これらの定数のいずれかを IDXCoreAdapter::QueryState メソッドに渡すと、その状態の種類に対応するアダプター状態項目を取得できます。また、定数を IDXCoreAdapter::SetState メソッドに渡すと、状態項目に対するアダプターの情報を設定できます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum DXCoreAdapterState : unsigned int {
    IsDriverUpdateInProgress = 0,
    AdapterMemoryBudget = 1,
    AdapterMemoryUsageBytes = 2,
    AdapterMemoryUsageByProcessBytes = 3,
    AdapterEngineRunningTimeMicroseconds = 4,
    AdapterEngineRunningTimeByProcessMicroseconds = 5,
    AdapterTemperatureCelsius = 6,
    AdapterInUseProcessCount = 7,
    AdapterInUseProcessSet = 8,
    AdapterEngineFrequencyHertz = 9,
    AdapterMemoryFrequencyHertz = 10
} DXCoreAdapterState;
public enum DXCoreAdapterState : uint
{
    IsDriverUpdateInProgress = 0,
    AdapterMemoryBudget = 1,
    AdapterMemoryUsageBytes = 2,
    AdapterMemoryUsageByProcessBytes = 3,
    AdapterEngineRunningTimeMicroseconds = 4,
    AdapterEngineRunningTimeByProcessMicroseconds = 5,
    AdapterTemperatureCelsius = 6,
    AdapterInUseProcessCount = 7,
    AdapterInUseProcessSet = 8,
    AdapterEngineFrequencyHertz = 9,
    AdapterMemoryFrequencyHertz = 10,
}
Public Enum DXCoreAdapterState As UInteger
    IsDriverUpdateInProgress = 0
    AdapterMemoryBudget = 1
    AdapterMemoryUsageBytes = 2
    AdapterMemoryUsageByProcessBytes = 3
    AdapterEngineRunningTimeMicroseconds = 4
    AdapterEngineRunningTimeByProcessMicroseconds = 5
    AdapterTemperatureCelsius = 6
    AdapterInUseProcessCount = 7
    AdapterInUseProcessSet = 8
    AdapterEngineFrequencyHertz = 9
    AdapterMemoryFrequencyHertz = 10
End Enum
import enum

class DXCoreAdapterState(enum.IntEnum):
    IsDriverUpdateInProgress = 0
    AdapterMemoryBudget = 1
    AdapterMemoryUsageBytes = 2
    AdapterMemoryUsageByProcessBytes = 3
    AdapterEngineRunningTimeMicroseconds = 4
    AdapterEngineRunningTimeByProcessMicroseconds = 5
    AdapterTemperatureCelsius = 6
    AdapterInUseProcessCount = 7
    AdapterInUseProcessSet = 8
    AdapterEngineFrequencyHertz = 9
    AdapterMemoryFrequencyHertz = 10
// DXCoreAdapterState
pub const IsDriverUpdateInProgress: u32 = 0;
pub const AdapterMemoryBudget: u32 = 1;
pub const AdapterMemoryUsageBytes: u32 = 2;
pub const AdapterMemoryUsageByProcessBytes: u32 = 3;
pub const AdapterEngineRunningTimeMicroseconds: u32 = 4;
pub const AdapterEngineRunningTimeByProcessMicroseconds: u32 = 5;
pub const AdapterTemperatureCelsius: u32 = 6;
pub const AdapterInUseProcessCount: u32 = 7;
pub const AdapterInUseProcessSet: u32 = 8;
pub const AdapterEngineFrequencyHertz: u32 = 9;
pub const AdapterMemoryFrequencyHertz: u32 = 10;
// DXCoreAdapterState
const (
	IsDriverUpdateInProgress uint32 = 0
	AdapterMemoryBudget uint32 = 1
	AdapterMemoryUsageBytes uint32 = 2
	AdapterMemoryUsageByProcessBytes uint32 = 3
	AdapterEngineRunningTimeMicroseconds uint32 = 4
	AdapterEngineRunningTimeByProcessMicroseconds uint32 = 5
	AdapterTemperatureCelsius uint32 = 6
	AdapterInUseProcessCount uint32 = 7
	AdapterInUseProcessSet uint32 = 8
	AdapterEngineFrequencyHertz uint32 = 9
	AdapterMemoryFrequencyHertz uint32 = 10
)
const
  IsDriverUpdateInProgress = 0;
  AdapterMemoryBudget = 1;
  AdapterMemoryUsageBytes = 2;
  AdapterMemoryUsageByProcessBytes = 3;
  AdapterEngineRunningTimeMicroseconds = 4;
  AdapterEngineRunningTimeByProcessMicroseconds = 5;
  AdapterTemperatureCelsius = 6;
  AdapterInUseProcessCount = 7;
  AdapterInUseProcessSet = 8;
  AdapterEngineFrequencyHertz = 9;
  AdapterMemoryFrequencyHertz = 10;
// DXCoreAdapterState
pub const IsDriverUpdateInProgress: u32 = 0;
pub const AdapterMemoryBudget: u32 = 1;
pub const AdapterMemoryUsageBytes: u32 = 2;
pub const AdapterMemoryUsageByProcessBytes: u32 = 3;
pub const AdapterEngineRunningTimeMicroseconds: u32 = 4;
pub const AdapterEngineRunningTimeByProcessMicroseconds: u32 = 5;
pub const AdapterTemperatureCelsius: u32 = 6;
pub const AdapterInUseProcessCount: u32 = 7;
pub const AdapterInUseProcessSet: u32 = 8;
pub const AdapterEngineFrequencyHertz: u32 = 9;
pub const AdapterMemoryFrequencyHertz: u32 = 10;
const
  IsDriverUpdateInProgress* = 0
  AdapterMemoryBudget* = 1
  AdapterMemoryUsageBytes* = 2
  AdapterMemoryUsageByProcessBytes* = 3
  AdapterEngineRunningTimeMicroseconds* = 4
  AdapterEngineRunningTimeByProcessMicroseconds* = 5
  AdapterTemperatureCelsius* = 6
  AdapterInUseProcessCount* = 7
  AdapterInUseProcessSet* = 8
  AdapterEngineFrequencyHertz* = 9
  AdapterMemoryFrequencyHertz* = 10
enum DXCoreAdapterState : uint {
    IsDriverUpdateInProgress = 0,
    AdapterMemoryBudget = 1,
    AdapterMemoryUsageBytes = 2,
    AdapterMemoryUsageByProcessBytes = 3,
    AdapterEngineRunningTimeMicroseconds = 4,
    AdapterEngineRunningTimeByProcessMicroseconds = 5,
    AdapterTemperatureCelsius = 6,
    AdapterInUseProcessCount = 7,
    AdapterInUseProcessSet = 8,
    AdapterEngineFrequencyHertz = 9,
    AdapterMemoryFrequencyHertz = 10,
}
#define global IsDriverUpdateInProgress                      0x0
#define global AdapterMemoryBudget                           0x1
#define global AdapterMemoryUsageBytes                       0x2
#define global AdapterMemoryUsageByProcessBytes              0x3
#define global AdapterEngineRunningTimeMicroseconds          0x4
#define global AdapterEngineRunningTimeByProcessMicroseconds 0x5
#define global AdapterTemperatureCelsius                     0x6
#define global AdapterInUseProcessCount                      0x7
#define global AdapterInUseProcessSet                        0x8
#define global AdapterEngineFrequencyHertz                   0x9
#define global AdapterMemoryFrequencyHertz                   0xA