| 66 | } |
| 67 | |
| 68 | void Cluster::DisableOptimizer(bool disable) { |
| 69 | OptimizerOptions* options = |
| 70 | options_.config.mutable_graph_options()->mutable_optimizer_options(); |
| 71 | if (disable) { |
| 72 | options->set_opt_level(OptimizerOptions::L0); |
| 73 | // Disable Grappler optimizations. |
| 74 | auto rewriter_config = |
| 75 | options_.config.mutable_graph_options()->mutable_rewrite_options(); |
| 76 | rewriter_config->set_layout_optimizer(RewriterConfig::OFF); |
| 77 | rewriter_config->set_disable_model_pruning(true); |
| 78 | rewriter_config->set_function_optimization(RewriterConfig::OFF); |
| 79 | rewriter_config->set_arithmetic_optimization(RewriterConfig::OFF); |
| 80 | rewriter_config->set_loop_optimization(RewriterConfig::OFF); |
| 81 | rewriter_config->set_dependency_optimization(RewriterConfig::OFF); |
| 82 | rewriter_config->set_constant_folding(RewriterConfig::OFF); |
| 83 | rewriter_config->set_memory_optimization(RewriterConfig::NO_MEM_OPT); |
| 84 | rewriter_config->set_shape_optimization(RewriterConfig::OFF); |
| 85 | rewriter_config->set_remapping(RewriterConfig::OFF); |
| 86 | rewriter_config->set_pin_to_host_optimization(RewriterConfig::OFF); |
| 87 | rewriter_config->mutable_auto_parallel()->set_enable(false); |
| 88 | rewriter_config->clear_optimizers(); |
| 89 | } else { |
| 90 | options->set_opt_level(OptimizerOptions::L1); |
| 91 | auto rewriter_config = |
| 92 | options_.config.mutable_graph_options()->mutable_rewrite_options(); |
| 93 | rewriter_config->set_constant_folding(RewriterConfig::DEFAULT); |
| 94 | rewriter_config->set_memory_optimization(RewriterConfig::DEFAULT_MEM_OPT); |
| 95 | } |
| 96 | } |
| 97 | |
| 98 | const std::vector<string> Cluster::GetDeviceNames() const { |
| 99 | std::vector<string> device_names; |