Switch to per-executable contexts in the loader
- Per-executable contexts should be used from now on
- Global contexts are left as is for now for backwards
compatibility and will be phased out in follow up
patches.
Change-Id: I6291abf865c7ed24ee71f5065e539afc23f5ce64
Este commit está contenido en:
cometido por
Konstantin Zhuravlyov
padre
244ad319ac
commit
b983c19729
@@ -423,6 +423,12 @@ public:
|
||||
size_t id,
|
||||
hsa_default_float_rounding_mode_t default_float_rounding_mode);
|
||||
|
||||
ExecutableImpl(
|
||||
const hsa_profile_t &_profile,
|
||||
std::unique_ptr<Context> unique_context,
|
||||
size_t id,
|
||||
hsa_default_float_rounding_mode_t default_float_rounding_mode);
|
||||
|
||||
~ExecutableImpl();
|
||||
|
||||
hsa_status_t GetInfo(hsa_executable_info_t executable_info, void *value) override;
|
||||
@@ -549,6 +555,7 @@ private:
|
||||
amd::hsa::common::ReaderWriterLock rw_lock_;
|
||||
hsa_profile_t profile_;
|
||||
Context *context_;
|
||||
std::unique_ptr<Context> unique_context_;
|
||||
Logger logger_;
|
||||
const size_t id_;
|
||||
hsa_default_float_rounding_mode_t default_float_rounding_mode_;
|
||||
@@ -578,6 +585,12 @@ public:
|
||||
const char *options,
|
||||
hsa_default_float_rounding_mode_t default_float_rounding_mode = HSA_DEFAULT_FLOAT_ROUNDING_MODE_DEFAULT) override;
|
||||
|
||||
Executable* CreateExecutable(
|
||||
std::unique_ptr<Context> isolated_context,
|
||||
hsa_profile_t profile,
|
||||
const char *options,
|
||||
hsa_default_float_rounding_mode_t default_float_rounding_mode = HSA_DEFAULT_FLOAT_ROUNDING_MODE_DEFAULT) override;
|
||||
|
||||
hsa_status_t FreezeExecutable(Executable *executable, const char *options) override;
|
||||
void DestroyExecutable(Executable *executable) override;
|
||||
|
||||
|
||||
Referencia en una nueva incidencia
Block a user