MlirPassthroughOp

classe finale publique MlirPassthroughOp

Encapsule un calcul MLIR arbitraire exprimé sous forme de module avec une fonction main().

Cette opération n'a pas de noyau associé et n'est pas destinée à être exécutée dans une session TensorFlow standard. Au lieu de cela, il est destiné à être utilisé à des fins de test ou dans des cas particuliers dans lesquels un utilisateur a l'intention de transmettre un calcul MLIR personnalisé via un graphique TensorFlow dans le but d'avoir des outils personnalisés le traitant en aval (lorsqu'il cible un environnement différent, comme TensorFlow Lite par exemple). Le module MLIR devrait avoir une fonction main() qui sera utilisée comme point d'entrée. Les entrées des opérations seront passées en argument à la fonction main() et les valeurs renvoyées de la fonction principale mappées aux sorties. Exemple d'utilisation :

 import tensorflow as tf
 from tensorflow.compiler.mlir.tensorflow.gen_mlir_passthrough_op import mlir_passthrough_op
 
 mlir_module = '''python
 func @main(%arg0 : tensor<10xf32>, %arg1 : tensor<10xf32>) -> tensor<10x10xf32> {
    %add = "magic.op"(%arg0, %arg1) : (tensor<10xf32>, tensor<10xf32>) -> tensor<10x10xf32>
    return %ret : tensor<10x10xf32>
 
 '''

Méthodes publiques

MlirPassthroughOp statique
créer ( Scope scope, Iterable< Operand <?>> entrées, String mlirModule, List<Class<?>> Toutputs)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération MlirPassthroughOp.
Itérateur< Opérande <Objet>>
Liste< Sortie <?>>

Méthodes héritées

Méthodes publiques

public static MlirPassthroughOp create ( Scope scope, Iterable< Operand <?>> entrées, String mlirModule, List<Class<?>> Toutputs)

Méthode d'usine pour créer une classe encapsulant une nouvelle opération MlirPassthroughOp.

Paramètres
portée portée actuelle
Retour
  • une nouvelle instance de MlirPassthroughOp

public Iterator< Opérande <Object>> itérateur ()

liste publique< Sortie <?>> sorties ()