Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 25 for IslandOp (0.16 sec)

  1. tensorflow/compiler/mlir/tensorflow/transforms/executor_tpuv1_island_coarsening.cc

    }
    
    void collect_input_defining_islands(IslandOp op, std::vector<IslandOp>& ops) {
      Operation* wrapped_op = &op.GetBody().front();
      for (Value operand : wrapped_op->getOperands()) {
        IslandOp wrapper = dyn_cast_or_null<IslandOp>(operand.getDefiningOp());
        if (!wrapper || !wrapper.WrapsSingleOp()) continue;
        ops.push_back(wrapper);
      }
    }
    
    void collect_output_users_islands(IslandOp op, std::vector<IslandOp>& ops) {
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Fri May 17 17:58:54 UTC 2024
    - 27.6K bytes
    - Viewed (0)
  2. tensorflow/compiler/mlir/tensorflow/transforms/executor_island_coarsening.cc

      // Construct a new island from the given root.
      explicit MergedIsland(IslandOp root) : insert_point(root) {
        islands.push_back(root);
      }
    
      // The insertion point anchor of the merged island, or where the merged island
      // will be inserted when created.
      Operation* const insert_point;
    
      // The set of islands that are to be merged together.
      SmallVector<IslandOp> islands;
    };
    
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 19.7K bytes
    - Viewed (0)
  3. tensorflow/compiler/mlir/tensorflow/transforms/update_control_dependencies.cc

      // We only call this function for island or fetch ops. The second pair of
      // parentheses is needed for successful compilation.
      assert((isa<IslandOp, FetchOp>(op)));
      mlir::MutableOperandRange mutable_control_inputs =
          isa<IslandOp>(op) ? cast<IslandOp>(op).getControlInputsMutable()
                            : cast<FetchOp>(op).getFetchesMutable();
      // Add control inputs in program order of the defining ops.
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Tue Jan 30 07:53:51 UTC 2024
    - 8.4K bytes
    - Viewed (0)
  4. tensorflow/compiler/mlir/tensorflow/ir/tf_executor.cc

    // (from YieldOps first operand) is forwarded to the IslandOp single data result
    // users.
    struct DropEmptyIslandNoOperandOneDataResult
        : public OpRewritePattern<IslandOp> {
      using OpRewritePattern<IslandOp>::OpRewritePattern;
    
      LogicalResult matchAndRewrite(IslandOp op,
                                    PatternRewriter &rewriter) const override {
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 42.7K bytes
    - Viewed (0)
  5. tensorflow/compiler/mlir/tensorflow/transforms/breakup-islands.cc

        new_op->setAttrs(item.getAttrDictionary());
        item.erase();
      }
      AddStatefulControlFlowDependencies(graph_op);
    }
    
    // Populates an empty IslandOp and with a NoOp or Identity/IdentityN depending
    // on if there are any data results.
    void PopulateEmptyIsland(tf_executor::IslandOp island) {
      OpBuilder builder(&island.GetBody(), island.GetBody().begin());
      tf_executor::YieldOp yield = island.GetYield();
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Fri Aug 11 20:52:36 UTC 2023
    - 16.7K bytes
    - Viewed (0)
  6. tensorflow/compiler/mlir/tensorflow/transforms/convert_control_to_data_outputs.cc

                               ShapedType const_type) {
      IslandOp while_wrapper = while_op->getParentOfType<IslandOp>();
      assert(while_wrapper && "While op is expected to be wrapped in a IslandOp");
    
      // Get the dummy constant.
      OpBuilder builder(while_wrapper);
      auto loc = NameLoc::get(
          builder.getStringAttr("chain_control_outputs@" + while_op.getBody()));
      IslandOp const_wrapper = GetDummyConstant(builder, const_type, loc);
    
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 28.7K bytes
    - Viewed (0)
  7. tensorflow/compiler/mlir/quantization/tensorflow/passes/merge_initializer_function_ops_to_main.cc

        cloned_fetch_op.erase();
      };
    
      return llvm::to_vector(cloned_fetch_op.getFetches());
    }
    
    // Creates a new `IslandOp` that wraps a `TF::NoOp`. The `IslandOp` has control
    // dependencies to the values provided.
    IslandOp CreateNoOpWithControlDependencies(
        const Location loc, GraphOp main_graph_op,
        const ArrayRef<Value> control_dependencies) {
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Sun May 12 12:54:52 UTC 2024
    - 15.3K bytes
    - Viewed (0)
  8. tensorflow/compiler/mlir/tensorflow/transforms/replicate_to_island.cc

    // for the associated replica island.
    LogicalResult ExpandReplicateIntoReplicas(
        const Dialect* tf_dialect, OpBuilder& builder,
        tf_executor::IslandOp island_op, tf_device::ReplicateOp replicate_op,
        int num_replicas, llvm::SmallVectorImpl<tf_executor::IslandOp>& replicas,
        bool legacy_graph_export, int replica_group_idx) {
      replicas.reserve(num_replicas);
      auto devices = replicate_op.getDevices();
    
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Mon Jul 24 21:01:40 UTC 2023
    - 16.9K bytes
    - Viewed (0)
  9. tensorflow/compiler/mlir/quantization/tensorflow/passes/merge_save_function_ops_to_main.cc

      cloned_fetch_op.erase();
    
      return control_fetch;
    }
    
    // Creates a new `IdentityOp` wrapped by an `IslandOp`. The identity op returns
    // the `main_file_prefix_arg` and has control dependencies to `control_inputs`.
    IslandOp CreateFilePrefixIdentityOp(const BlockArgument main_file_prefix_arg,
                                        const ArrayRef<Value> control_inputs,
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 10.7K bytes
    - Viewed (0)
  10. tensorflow/compiler/mlir/tensorflow/transforms/tpu_device_propagation.cc

        return ops_have_same_device(sink.GetSource(), sink);
      }
    
      return llvm::isa<tf_executor::EnterOp, tf_executor::ExitOp,
                       tf_executor::IslandOp, tf_executor::MergeOp,
                       tf_executor::SwitchOp>(op);
    }
    
    // Assigns all data results to a specified device.
    void PopulateDeviceForOpResults(
        Operation& op, llvm::StringRef device,
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Thu Apr 25 16:01:03 UTC 2024
    - 11K bytes
    - Viewed (0)
Back to top