Browse Source

feat(opencl): add OpenCL cache compat level api

GitOrigin-RevId: e7561e6879
tags/v1.9.0
Megvii Engine Team 3 years ago
parent
commit
0447574446
3 changed files with 20 additions and 2 deletions
  1. +18
    -0
      lite/include/lite/common_enum_c.h
  2. +1
    -1
      lite/load_and_run/src/options/device_options.cpp
  3. +1
    -1
      lite/load_and_run/src/options/device_options.h

+ 18
- 0
lite/include/lite/common_enum_c.h View File

@@ -105,5 +105,23 @@ typedef enum {
LITE_ALGO_OPTIMIZED = 1 << 3,
} LiteAlgoSelectStrategy;

/*!
* \brief enum for cache compat level, for example: adreno 630 cache may be apply to
* adreno 640, if you do not want search cache for adreno 640, just config SERIES_COMPAT
* or VENDOR_COMPAT, adreno 506 cache may be apply to adreno 630, if you do not want
* search cache for adreno 630, just config VENDOR_COMPAT
* WARN: this config just let program_cache_io try `use a old cache` for `device compile
* the cache` do not means MegEngine will insure the compile will be ok! it`s a device
* CL driver behavior, if compile failed!, MegEngine will try build from source, What`s
* more, even though compile from binary success, this cross-use-cache may affect
* performance, VENDOR_COMPAT will contain SERIES_COMPAT
*/
typedef enum {
LITE_NOT_COMPAT = 0, //! default not compat for series and vendor
LITE_SERIES_COMPAT = 1, //! for scene adreno 640 use adreno 630 cache
LITE_VENDOR_COMPAT = 2, //! for scene adreno 630 use adreno 506 cache
LITE_CACHE_COMPAT_LEVEL_CNT = 3
} LiteOpenCLCacheCompatLevel;

#endif
// vim: syntax=cpp.doxygen foldmethod=marker foldmarker=f{{{,f}}}

+ 1
- 1
lite/load_and_run/src/options/device_options.cpp View File

@@ -201,4 +201,4 @@ DEFINE_int32(
multithread_default, -1,
"set multithread device as running device with inplace mode");
DEFINE_string(multi_thread_core_ids, "", "set multithread core id");
REGIST_OPTION_CREATOR(xpu_device, lar::XPUDeviceOption::create_option);
REGIST_OPTION_CREATOR(xpu_device, lar::XPUDeviceOption::create_option);

+ 1
- 1
lite/load_and_run/src/options/device_options.h View File

@@ -45,4 +45,4 @@ private:
std::vector<int> core_ids;
std::string m_option_name;
};
} // namespace lar
} // namespace lar

Loading…
Cancel
Save