hsakmt: Initial Commit for the HSA KMT Model

The over arching goal it so provide an API that pre-silicon models can latch into for software bring up.# Please enter the commit message for your changes. Lines starting


[ROCm/ROCR-Runtime commit: d4b85b6bf5]
Esse commit está contido em:
jordans
2025-03-11 16:56:02 -04:00
commit de Stratton, Jordan
commit 938b34da24
20 arquivos alterados com 1104 adições e 28 exclusões
@@ -115,6 +115,8 @@ public:
uint32_t* size_copied, void* dest_mem_addr,
bool* is_spm_data_loss) const override;
hsa_status_t IsModelEnabled(bool* enable) const override;
private:
/// @brief Allocate agent accessible memory (system / local memory).
static void *AllocateKfdMemory(const HsaMemFlags &flags, uint32_t node_id,
@@ -184,6 +184,8 @@ public:
uint32_t* size_copied, void* dest_mem_addr,
bool* is_spm_data_loss) const override;
hsa_status_t IsModelEnabled(bool* enable) const override;
private:
hsa_status_t QueryDriverVersion();
/// @brief Allocate device accesible heap space.
@@ -211,6 +211,10 @@ public:
uint32_t* timeout, uint32_t* size_copied,
void* dest_mem_addr, bool* is_spm_data_loss) const = 0;
/// @brief Check if the HSA KMT Model is enabled
/// @param[out] enable True if the model is enabled, false otherwise
virtual hsa_status_t IsModelEnabled(bool* enable) const = 0;
/// Unique identifier for supported kernel-mode drivers.
const DriverType kernel_driver_type_;