Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Une fois que vous avez chargé un LearningModel, vous créez une session LearningModelSession, qui lie le modèle à un appareil qui s’exécute et évalue le modèle.
Choisir un appareil
Vous pouvez sélectionner un appareil lorsque vous créez une session. Vous choisissez un appareil de type LearningModelDeviceKind :
- Par défaut
- Laissez le système décider de l’appareil à utiliser. Actuellement, l’appareil par défaut est le processeur.
- CPU
- Utilisez le processeur, même si d’autres appareils sont disponibles.
- DirectX
- Utilisez un appareil d’accélération matérielle DirectX, en particulier le premier adaptateur énuméré par IDXGIFactory1 ::EnumAdapters1.
- DirectXHighPerformance
- Identique à DirectX, mais utilise DXGI_GPU_PREFERENCE_HIGH_PERFORMANCE lors de l’énumération des adaptateurs.
- DirectXMinPower
- Identique à DirectX, mais utilise DXGI_GPU_PREFERENCE_MINIMUM_POWER lors de l’énumération des adaptateurs.
Si vous ne spécifiez pas d’appareil, le système utilise la valeur par défaut. Nous vous recommandons d’utiliser Default pour obtenir la flexibilité permettant au système de choisir pour vous à l’avenir.
La vidéo suivante décrit plus en détail chacun des types d’appareils.
Création avancée d’appareils
Windows AI prend en charge l’utilisation d’un appareil que l’appelant a déjà créé. Il existe plusieurs options et considérations lors de cette opération :
- CreateFromDirect3D11Device (Créer à partir d'un périphérique Direct3D11). Utilisez cette option lorsque vous disposez déjà d’un IDirect3DDevice existant. Windows AI utilisera ce même adaptateur pour créer un appareil d3d12 pour ses charges de travail ML. Cela est utile lorsque vous disposez d’une caméra qui utilise un appareil d3d11 pour VideoFrames et que vous souhaitez utiliser ce même appareil pour votre LearningModelSession. Dans de nombreux cas, cela peut éviter une copie de mémoire. Note : la tenseurisation VideoFrame est la seule charge de travail d3d11 dont dispose Windows AI. Si vous n’utilisez pas cette fonctionnalité, il n’existe aucun avantage à partager ou à créer un appareil d3d11.
- CreateFromD3D12CommandQueue (natif). Utilisez-le lorsque vous disposez d’un appareil d3d12 que vous souhaitez réutiliser. Windows AI utilisera cette file d’attente de commandes pour ses charges de travail ML. Il créera également un périphérique D3D11 à l’aide de D3D11On12CreateDevice. Cette opération est effectuée uniquement si nécessaire et sera utilisée pour toutes les charges de travail d3d11 telles que la tensorisation VideoFrame. Vous pouvez accéder à ce nouvel appareil via la propriété LearningModelDevice.Direct3D11Device.
Exemple :
L’exemple suivant montre comment créer une session à partir d’un modèle et d’un appareil :
private void CreateSession(LearningModel model, LearningModelDeviceKind kind)
{
// Create the evaluation session with the model and device
LearningModelSession session =
new LearningModelSession(model, new LearningModelDevice(kind));
}
Voir aussi
- Précédent : Charger un modèle
- Suivant : Lier un modèle
Remarque
Utilisez les ressources suivantes pour obtenir de l’aide sur Windows ML :
- Pour poser ou répondre à des questions techniques sur Windows ML, utilisez la balise Windows-Machine Learning sur Stack Overflow.
- Pour signaler un bogue, veuillez signaler un problème sur notre GitHub.