History log of /external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
23da21150d988f7cf5780488f24adbb116675586 19-Sep-2017 Mark Heffernan <meheff@google.com> Add liveness_util functions which use dataflow analysis. Also make the analysis argument (TuplePointsToAnalysis or HloDataflowAnalysis) non-optional as all callers were passing in the analysis.

PiperOrigin-RevId: 169200824
/external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h
5b6a203c5c759656b2b7018271219916ddd85cb6 20-Jun-2017 Mark Heffernan <meheff@google.com> [XLA] Add live range interference querying to dataflow analysis.
Add method MayInterfere to HloDataflowAnalysis which returns whether the live ranges of two values interfere. This will replace buffer_liveness.cc. The cl includes a few related changes:

(1) HloOrdering: Apply an order to the condition and body computations. Specifically, for the purposes of HLO ordering the condition is ordered before the body. This ensures that the live ranges of values in the condition do not interfere with the live ranges in the body.

(2) Add a Dominates method to CallGraph for determining whether a computation dominates another in the call graph.

(3) Tightened the definition of "use" in the dataflow analysis. Now an instruction which passes through a value without reading it is no longer considered a use of the value. This new definition is reflected in the HloUse objects returned by HloValue::uses().

PiperOrigin-RevId: 159509724
/external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h
54ccc3e5a840e9d60772858dd3046dc0c3b10e39 06-Jun-2017 Mark Heffernan <meheff@google.com> [XLA] Add module-scoped HLO dataflow analysis.
This is the first step to replacing TuplePointsToAnalysis with a global, module-scoped analysis. This dataflow analysis identifies all values and their defs and uses in the XLA graph. The analysis is currently unused. Follow up CLs will add buffer alias analysis using this dataflow analysis, and incrementally switch the transformation passes (for example, CopyInsertion) to use these new module-scoped analyses.

PiperOrigin-RevId: 158067910
/external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h
342d315566211a095a06acb1973b94937dadbc0c 27-Apr-2017 Mark Heffernan <meheff@google.com> Update rematerialization to account for buffer aliasing in memory tracking.
Previously rematerialization ignored any buffer aliasing. For one, this caused significant over-rematerialization with while loops. This cl uses points-to analysis to properly account for buffer aliasing. This change includes a couple other related changes:

(1) enable a rematerialization to be used by more than one instruction.

(2) Avoid rematerializing instructions with control dependencies to avoid invalid aliasing which was prevented by earlier copy-insertion.

The net result is generally much fewer instructions rematerialized especially with while loops and reduced memory use.
Change: 154352719
/external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h
e0d0c676ec111c711099bf89eb51278bc4493678 15-Mar-2017 A. Unique TensorFlower <gardener@tensorflow.org> Refactor logic from buffer_liveness to use in HeapSimulator.

Also added some simple tests.
Change: 150144113
/external/tensorflow/tensorflow/compiler/xla/service/liveness_util.h