diff --git a/mace/core/mace.cc b/mace/core/mace.cc index 484c9472af8e9e12124c78b054d539584e4d2801..5f7647ed4a0df7377f143191bf2bf42c74429dc6 100644 --- a/mace/core/mace.cc +++ b/mace/core/mace.cc @@ -176,7 +176,9 @@ MaceStatus MaceEngine::Impl::Run( LOG(FATAL) << "Net run failed"; } } - OpenCLRuntime::Global()->SaveBuiltCLProgram(); + if (device_type_ == OPENCL) { + OpenCLRuntime::Global()->SaveBuiltCLProgram(); + } for (auto &output : *outputs) { Tensor *output_tensor = ws_->GetTensor(MakeString("mace_output_node_", output.first + ":0")); diff --git a/mace/tools/validation/mace_run.cc b/mace/tools/validation/mace_run.cc index d4fa7c29a00073b9aff74d0a107e620540fc45cb..60f5cd598cc96d650108c49c007d65bd783f4241 100644 --- a/mace/tools/validation/mace_run.cc +++ b/mace/tools/validation/mace_run.cc @@ -308,7 +308,9 @@ bool RunModel(const std::vector &input_names, printf("time %11.3f %11.3f %11.3f %11.3f %11.3f\n", create_net_millis, mace_engine_ctor_millis, init_millis, warmup_millis, model_run_millis); - WriteOpenCLPlatformInfo(kernel_file_path); + if (device_type == DeviceType::OPENCL) { + WriteOpenCLPlatformInfo(kernel_file_path); + } for (size_t i = 0; i < output_count; ++i) { std::string output_name =