Enum OutputBindingTarget
- Namespace
- NT2I.ONNX.Abstractions.Enumerations
- Assembly
- NT2I.ONNX.Abstractions.dll
Spécifie la cible de liaison (binding) pour les tenseurs de sortie d'inférence.
Ce choix impacte directement l'emplacement mémoire des buffers ORT alloués par
IoBInding.BindOutputToDevice :
- Host Les tenseurs sont rapatriés en RAM (mémoire hôte / CPU). Obligatoire en mode CPU-only ; compatible avec tous les providers. C'est la valeur par défaut et la plus sûre.
- ExecutionDevice
Les tenseurs restent sur le périphérique d'exécution (VRAM en CUDA,
mémoire DirectML en DML). Évite un aller-retour H↔D coûteux quand
les outputs d'un engine doivent être réinjectés comme inputs d'un
autre engine sur le même périphérique (ex : encodeur SAM2 → prédicteur).
Incompatible avec un provider CPU-only :
OnnxEngine.Initializelève une ArgumentException si cette valeur est combinée avecOnnxConfigEnum.CPU.
public enum OutputBindingTarget
Fields
ExecutionDevice = 1Les tenseurs de sortie restent sur le périphérique d'exécution (VRAM CUDA ou mémoire DML) sans transfert vers l'hôte. À utiliser uniquement quand les outputs sont consommés directement par un autre engine GPU (zéro copie). Invalide en mode CPU-only.
Host = 0Les tenseurs de sortie sont copiés en mémoire hôte (RAM / CPU) après l'inférence. Valeur par défaut, compatible avec tous les providers d'exécution.