Esmi Auxillary API wrappers removed from amdsmi library
that are called during amdsmi inititalization
amdsmi_get_cpu_family,
amdsmi_get_cpu_model,
amdsmi_get_cpu_threads_per_core,
amdsmi_get_number_of_cpu_cores,
amdsmi_get_number_of_cpu_sockets
Added amdsmi_get_cpucore_info to amdsmi library
Change-Id: Ib88d580e1d85afdf578963247e585cfae05c58ad
[ROCm/amdsmi commit: 28f6383639]
This commit is contained in:
zatwierdzone przez
Maisam Arif
rodzic
21fa9c0950
commit
a09863f550
@@ -1469,6 +1469,20 @@ amdsmi_status_t amdsmi_get_socket_info(
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpusocket_info(amdsmi_cpusocket_handle socket_handle, uint32_t sockid);
|
||||
|
||||
/**
|
||||
* @brief Get information about the given cpu core
|
||||
*
|
||||
* @details This function retrieves cpu core information. The @p core_handle must
|
||||
* be provided to retrieve the core ID.
|
||||
*
|
||||
* @param[in] core_handle a processor handle
|
||||
*
|
||||
* @param[out] coreid The id of the core.
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpucore_info(amdsmi_processor_handle core_handle, uint32_t coreid);
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -4588,51 +4602,6 @@ amdsmi_status_t amdsmi_get_metrics_table(amdsmi_cpusocket_handle socket_handle,
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/** @{ */
|
||||
|
||||
/**
|
||||
* @brief Get cpu family.
|
||||
*
|
||||
* @param[in,out] family - Input buffer to fill family
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpu_family(uint32_t family);
|
||||
|
||||
/**
|
||||
* @brief Get cpu model.
|
||||
*
|
||||
* @param[in,out] family - Input buffer to fill family
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpu_model(uint32_t model);
|
||||
|
||||
/**
|
||||
* @brief Get threads per core.
|
||||
*
|
||||
* @param[in,out] threads - Input buffer to fill threads count.
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpu_threads_per_core(uint32_t threads);
|
||||
|
||||
/**
|
||||
* @brief Get number of cpus.
|
||||
*
|
||||
* @param[in,out] cpus - Input buffer to fill number of cpus.
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_number_of_cpu_cores(uint32_t cpus);
|
||||
|
||||
/**
|
||||
* @brief Get number of sockets
|
||||
*
|
||||
* @param[in,out] sockets - Input buffer to fill number of sockets.
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_number_of_cpu_sockets(uint32_t sockets);
|
||||
|
||||
/**
|
||||
* @brief Get first online core on socket.
|
||||
*
|
||||
|
||||
@@ -60,14 +60,13 @@ public:
|
||||
|
||||
virtual ~AMDSmiCpuCore() {}
|
||||
|
||||
const uint32_t& get_core_id() const { return core_idx_; }
|
||||
void add_processor(AMDSmiProcessor* processor) { processors_.push_back(processor); }
|
||||
std::vector<AMDSmiProcessor*>& get_processors() { return processors_;}
|
||||
amdsmi_status_t get_processor_count(uint32_t* processor_count) const;
|
||||
|
||||
private:
|
||||
uint32_t core_idx_;
|
||||
//uint64_t input;
|
||||
//uint32_t idx;
|
||||
std::vector<AMDSmiProcessor*> processors_;
|
||||
};
|
||||
|
||||
|
||||
@@ -330,6 +330,25 @@ amdsmi_status_t amdsmi_get_cpusocket_info(
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_cpucore_info(
|
||||
amdsmi_processor_handle core_handle,
|
||||
uint32_t core_id) {
|
||||
AMDSMI_CHECK_INIT();
|
||||
|
||||
if (core_handle == nullptr) {
|
||||
return AMDSMI_STATUS_INVAL;
|
||||
}
|
||||
|
||||
amd::smi::AMDSmiProcessor* core = nullptr;
|
||||
amdsmi_status_t r = amd::smi::AMDSmiSystem::getInstance()
|
||||
.handle_to_processor(core_handle, &core);
|
||||
if (r != AMDSMI_STATUS_SUCCESS) return r;
|
||||
|
||||
core_id = static_cast<amd::smi::AMDSmiCpuCore*>(core)->get_core_id();
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
#endif
|
||||
|
||||
amdsmi_status_t amdsmi_get_processor_handles(amdsmi_socket_handle socket_handle,
|
||||
@@ -2948,51 +2967,6 @@ amdsmi_status_t amdsmi_get_metrics_table(amdsmi_cpusocket_handle socket_handle,
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_number_of_cpu_sockets(uint32_t sockets)
|
||||
{
|
||||
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_cpu_sockets(sockets);
|
||||
if (status != AMDSMI_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_number_of_cpu_cores(uint32_t cpus)
|
||||
{
|
||||
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_cpu_cores(cpus);
|
||||
if (status != AMDSMI_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_cpu_threads_per_core(uint32_t threads)
|
||||
{
|
||||
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_threads_per_core(threads);
|
||||
if (status != AMDSMI_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_cpu_family(uint32_t family)
|
||||
{
|
||||
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_cpu_family(family);
|
||||
if (status != AMDSMI_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_get_cpu_model(uint32_t model)
|
||||
{
|
||||
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_cpu_model(model);
|
||||
if (status != AMDSMI_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t amdsmi_first_online_core_on_cpu_socket(amdsmi_cpusocket_handle socket_handle,
|
||||
uint32_t sock_ind, uint32_t *pcore_ind)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user