LearningModelDeviceKind Enumeración
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Define la lista de tipos de dispositivos que pueden evaluar un modelo de Machine Learning.
public enum class LearningModelDeviceKind
/// [Windows.Foundation.Metadata.ContractVersion(Windows.AI.MachineLearning.MachineLearningContract, 65536)]
enum class LearningModelDeviceKind
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.AI.MachineLearning.MachineLearningContract), 65536)]
public enum LearningModelDeviceKind
var value = Windows.AI.MachineLearning.LearningModelDeviceKind.default
Public Enum LearningModelDeviceKind
- Herencia
-
LearningModelDeviceKind
- Atributos
Familia de dispositivos |
Windows 10, version 1809 (se introdujo en la versión 10.0.17763.0)
|
API contract |
Windows.AI.MachineLearning.MachineLearningContract (se introdujo en la versión v1.0)
|
Cpu | 1 | Use la CPU para evaluar el modelo. |
Default | 0 | Permite que el sistema decida el dispositivo que se va a usar. |
DirectX | 2 | Use una GPU u otro dispositivo DirectX para evaluar el modelo. |
DirectXHighPerformance | 3 | Use el dispositivo definido por directivas del sistema para un alto rendimiento. |
DirectXMinPower | 4 | Use el dispositivo definido por directivas del sistema para una potencia mínima. |
En el ejemplo siguiente se carga un modelo, se selecciona el dispositivo en el que se va a evaluar el modelo y se crea una sesión de evaluación.
private async Task LoadModelAsync(string _modelFileName, bool _useGPU)
{
LearningModel _model;
LearningModelSession _session;
try
{
// Load and create the model
var modelFile =
await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{_modelFileName}"));
_model = await LearningModel.LoadFromStorageFileAsync(modelFile);
// Select the device to evaluate on
LearningModelDevice device = null;
if (_useGPU)
{
// Use a GPU or other DirectX device to evaluate the model.
device = new LearningModelDevice(LearningModelDeviceKind.DirectX);
}
else
{
// Use the CPU to evaluate the model.
device = new LearningModelDevice(LearningModelDeviceKind.Cpu);
}
// Create the evaluation session with the model and device.
_session = new LearningModelSession(_model, device);
}
catch (Exception ex)
{
StatusBlock.Text = $"error: {ex.Message}";
_model = null;
}
}
Si no se especifica, el sistema decidirá qué dispositivo usar.
Para usar esta API en Windows Server, debe usar Windows Server 2019 con experiencia de escritorio.
Esta API es segura para subprocesos.