Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 7 of 7 for ControlNodeOp (0.2 sec)

  1. tensorflow/compiler/mlir/lite/transforms/pin_ops_with_side_effects.cc

      OpBuilder builder(fn.getContext());
      // The control tokens generated by the last ControlNodeOp wrapping.  Will be
      // empty until the first ControlNodeOp was generated, then have constant size
      // 1.
      llvm::SmallVector<Value, 1> control_tokens;
      for (auto *op : ops_with_side_effects) {
        // Wrap all side-effect producing/dependent operations in a ControlNodeOp.
        builder.setInsertionPoint(op);
        Location loc = op->getLoc();
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 7K bytes
    - Viewed (0)
  2. tensorflow/compiler/mlir/lite/transforms/partitioned_topological_sort.cc

    #include "tensorflow/compiler/mlir/lite/transforms/passes.h.inc"
    
    bool IsFlexDelegate(Operation *op) {
      // Unwrap from any ControlNodeOps or CustomTfOp.
      if (auto control_node = dyn_cast<mlir::TFL::ControlNodeOp>(*op)) {
        return IsFlexDelegate(&control_node.getBody().front().front());
      }
      if (auto custom_tf_op = dyn_cast<mlir::TFL::CustomTfOp>(*op)) {
        return IsFlexDelegate(&custom_tf_op.getBody().front().front());
      }
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Tue Dec 19 15:05:28 UTC 2023
    - 7.2K bytes
    - Viewed (0)
  3. tensorflow/compiler/mlir/lite/flatbuffer_import.cc

        if (const auto& outgoing = (*control_nodes)[incoming].outgoing; outgoing) {
          control_tokens.push_back(*outgoing);
        }
      }
    
      // Create the ControlNodeOp.
      auto ctrl_op = op_builder.create<mlir::TFL::ControlNodeOp>(
          op_loc, cloned_op->getResultTypes(),
          mlir::TFL::ControlType::get(op->getContext()), control_tokens);
      ctrl_op.getBody().takeBody(region);
    
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Tue May 21 18:21:50 UTC 2024
    - 66.8K bytes
    - Viewed (0)
  4. tensorflow/compiler/mlir/lite/ir/tfl_ops.cc

      return value.isa<UnitAttr>() && type.isa<NoneType>();
    }
    
    YieldOp ControlNodeOp::GetYield() {
      return llvm::cast<YieldOp>(GetBody().back());
    }
    
    // Checks if a TFL.control_node wraps a single operation and the single
    // operation results are perfectly forwarded to the wrapper's yield.
    bool ControlNodeOp::WrapsSinglePerfectlyForwardedOp() {
      auto body = GetBody().without_terminator();
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu May 02 09:41:17 UTC 2024
    - 169.2K bytes
    - Viewed (0)
  5. tensorflow/compiler/mlir/lite/transforms/passes.td

      let summary = "Pin operators with side effects";
      let description = [{
          This transformation pass wraps operations that have or depend on side effects in
          TFL::ControlNodeOp, which depend on the control token generated by the most recent
          preceding such operation, if any. This copies the logic that is currently executed
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Wed Apr 24 20:30:06 UTC 2024
    - 22.6K bytes
    - Viewed (0)
  6. tensorflow/compiler/mlir/lite/flatbuffer_export.cc

      for (const auto& item : llvm::enumerate(*block)) {
        if (llvm::isa<mlir::TFL::ControlNodeOp>(item.value())) {
          control_nodes.push_back(&item.value());
          control_nodes_at.try_emplace(&item.value(), item.index());
        }
      }
    
      for (auto outer_op : control_nodes) {
        auto control_node_op = dyn_cast<mlir::TFL::ControlNodeOp>(outer_op);
        auto* inner_op = &control_node_op.getBody().front().front();
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Wed Jun 12 21:41:49 UTC 2024
    - 164.5K bytes
    - Viewed (0)
  7. tensorflow/compiler/mlir/lite/ir/tfl_ops.td

      let summary = "Yield operation";
      let description = [{
        The "yield" operation represents a return operation within the conditional
        and body of structured control flow (e.g., while), and a terminator for ControlNodeOp.
        The operation takes a variable number of operands and produces no results.
        The operand number and types must match the signature of the region that contains the operation.
      }];
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Jun 06 19:09:08 UTC 2024
    - 186K bytes
    - Viewed (0)
Back to top