1 // Generated by the protocol buffer compiler.  DO NOT EDIT!
2 // source: tensorflow/core/protobuf/rewriter_config.proto
3 
4 module tensorflow.rewriter_config;
5 
6 import google.protobuf;
7 import tensorflow.attr_value;
8 import tensorflow.verifier_config;
9 
10 enum protocVersion = 3012004;
11 
12 class AutoParallelOptions
13 {
14     @Proto(1) bool enable = protoDefaultValue!(bool);
15     @Proto(2) int numReplicas = protoDefaultValue!(int);
16 }
17 
18 class ScopedAllocatorOptions
19 {
20     @Proto(1) string[] enableOp = protoDefaultValue!(string[]);
21 }
22 
23 class RewriterConfig
24 {
25     @Proto(1) Toggle layoutOptimizer = protoDefaultValue!(Toggle);
26     @Proto(2) bool disableModelPruning = protoDefaultValue!(bool);
27     @Proto(3) Toggle constantFolding = protoDefaultValue!(Toggle);
28     @Proto(4) MemOptType memoryOptimization = protoDefaultValue!(MemOptType);
29     @Proto(5) AutoParallelOptions autoParallel = protoDefaultValue!(AutoParallelOptions);
30     @Proto(6) string memoryOptimizerTargetNodeNameScope = protoDefaultValue!(string);
31     @Proto(7) Toggle arithmeticOptimization = protoDefaultValue!(Toggle);
32     @Proto(8) Toggle dependencyOptimization = protoDefaultValue!(Toggle);
33     @Proto(9) Toggle loopOptimization = protoDefaultValue!(Toggle);
34     @Proto(10) Toggle functionOptimization = protoDefaultValue!(Toggle);
35     @Proto(11) Toggle debugStripper = protoDefaultValue!(Toggle);
36     @Proto(12) NumIterationsType metaOptimizerIterations = protoDefaultValue!(NumIterationsType);
37     @Proto(13) Toggle shapeOptimization = protoDefaultValue!(Toggle);
38     @Proto(14) Toggle remapping = protoDefaultValue!(Toggle);
39     @Proto(15) Toggle scopedAllocatorOptimization = protoDefaultValue!(Toggle);
40     @Proto(16) ScopedAllocatorOptions scopedAllocatorOpts = protoDefaultValue!(ScopedAllocatorOptions);
41     @Proto(17) int minGraphNodes = protoDefaultValue!(int);
42     @Proto(18) Toggle pinToHostOptimization = protoDefaultValue!(Toggle);
43     @Proto(19) bool disableMetaOptimizer = protoDefaultValue!(bool);
44     @Proto(20) long metaOptimizerTimeoutMs = protoDefaultValue!(long);
45     @Proto(21) bool failOnOptimizerErrors = protoDefaultValue!(bool);
46     @Proto(22) Toggle implementationSelector = protoDefaultValue!(Toggle);
47     @Proto(23) Toggle autoMixedPrecision = protoDefaultValue!(Toggle);
48     @Proto(100) string[] optimizers = protoDefaultValue!(string[]);
49     @Proto(200) RewriterConfig.CustomGraphOptimizer[] customOptimizers = protoDefaultValue!(RewriterConfig.CustomGraphOptimizer[]);
50     @Proto(300) VerifierConfig interOptimizerVerifierConfig = protoDefaultValue!(VerifierConfig);
51     @Proto(301) VerifierConfig postOptimizationVerifierConfig = protoDefaultValue!(VerifierConfig);
52 
53     static class CustomGraphOptimizer
54     {
55         @Proto(1) string name = protoDefaultValue!(string);
56         @Proto(2) AttrValue[string] parameterMap = protoDefaultValue!(AttrValue[string]);
57     }
58 
59     enum Toggle
60     {
61         DEFAULT = 0,
62         ON = 1,
63         OFF = 2,
64         AGGRESSIVE = 3,
65     }
66 
67     enum NumIterationsType
68     {
69         DEFAULT_NUM_ITERS = 0,
70         ONE = 1,
71         TWO = 2,
72     }
73 
74     enum MemOptType
75     {
76         DEFAULT_MEM_OPT = 0,
77         NO_MEM_OPT = 1,
78         MANUAL = 2,
79         SWAPPING_HEURISTICS = 4,
80         RECOMPUTATION_HEURISTICS = 5,
81         SCHEDULING_HEURISTICS = 6,
82         HEURISTICS = 3,
83     }
84 }