File tree Expand file tree Collapse file tree 2 files changed +16
-3
lines changed
backends/vulkan/runtime/vk_api Expand file tree Collapse file tree 2 files changed +16
-3
lines changed Original file line number Diff line number Diff line change @@ -377,13 +377,24 @@ uint32_t Runtime::create_adapter(const Selector& selector) {
377
377
return adapter_i;
378
378
}
379
379
380
- Runtime* runtime (const std::string& cache_data_path) {
380
+ std::string& set_and_get_pipeline_cache_data_path (
381
+ const std::string& file_path) {
382
+ // The global cache data path is declared as a static local variable for the
383
+ // same reasons as the global runtime below.
384
+ static std::string global_cache_data_path = " " ;
385
+ if (file_path.size () > 0 ) {
386
+ global_cache_data_path = file_path;
387
+ }
388
+ return global_cache_data_path;
389
+ }
390
+
391
+ Runtime* runtime () {
381
392
// The global vulkan runtime is declared as a static local variable within a
382
393
// non-static function to ensure it has external linkage. If it were a global
383
394
// static variable there would be one copy per translation unit that includes
384
395
// Runtime.h as it would have internal linkage.
385
396
static const std::unique_ptr<Runtime> p_runtime =
386
- init_global_vulkan_runtime (cache_data_path );
397
+ init_global_vulkan_runtime (set_and_get_pipeline_cache_data_path ( " " ) );
387
398
388
399
VK_CHECK_COND (
389
400
p_runtime,
Original file line number Diff line number Diff line change @@ -100,9 +100,11 @@ class Runtime final {
100
100
uint32_t create_adapter (const Selector&);
101
101
};
102
102
103
+ std::string& set_and_get_pipeline_cache_data_path (const std::string& file_path);
104
+
103
105
// The global runtime is retrieved using this function, where it is declared as
104
106
// a static local variable.
105
- Runtime* runtime (const std::string& cache_data_path = " " );
107
+ Runtime* runtime ();
106
108
107
109
} // namespace vkapi
108
110
} // namespace vkcompute
You can’t perform that action at this time.
0 commit comments