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 :
{@code 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 | |
Itérateur< Opérande <Objet>> | itérateur () |
Liste< Sortie <?>> | les sorties () |
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