• Home
Name Date Size #Lines LOC

..--

BUILDD03-May-20246 KiB160151

README.mdD03-May-2024945 2016

compiler.ccD03-May-20247.3 KiB185137

compiler.hD03-May-20242.9 KiB7543

executable.ccD03-May-20242.7 KiB7248

executable.hD03-May-20242.9 KiB7243

executable_base.ccD03-May-20246.1 KiB150109

executable_base.hD03-May-20242.2 KiB5933

executor.ccD03-May-20244.4 KiB13192

executor.hD03-May-20248.1 KiB217159

interpreter_transfer_manager.ccD03-May-20241.5 KiB4521

interpreter_transfer_manager.hD03-May-20241.4 KiB3714

platform.ccD03-May-20244.3 KiB12082

platform.hD03-May-20242.6 KiB7740

platform_id.ccD03-May-2024900 246

platform_id.hD03-May-20241.1 KiB309

README.md

1# XLA Interpreter Backend
2
3The XLA Interpreter backend operates at HLO-level by ingesting a HloModule and
4evaluating the result of the HLO graph directly with HloEvaluator, without
5lowering it further (to LLVM IR for example) before execution as other backends
6(CPU and GPU for example) do.
7
8Its key components are:
9
10*   [`InterpreterCompiler`] despite the inherited naming of "compiler", all
11    `InterpreterCompiler` really does is the following:
12    1.  Runs certain HLO optimization passes on the given HLO graph.
13    2.  Generates an `InterpreterExecutable` from the optimized HLO graph.
14    3.  Registers itself in the global compiler factory registry.
15*   [`InterpreterExecutable`]: responsible for running input HLO graph through
16    the `HloEvaluator`, allocating output buffer and finally copying evaluated
17    Literal result over.
18*   [`HloEvaluator`]: traverses a HLO graph and evaluates each node in DFS
19    ordering along the way.
20