geopm 3.1.1.dev453+g1f4a5a13
GEOPM - Global Extensible Open Power Manager
Loading...
Searching...
No Matches
geopm_topo.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2015 - 2024 Intel Corporation
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6#ifndef GEOPM_TOPO_H_INCLUDE
7#define GEOPM_TOPO_H_INCLUDE
8
9#include <stddef.h>
10
11#include "geopm_public.h"
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
75
77 geopm_topo_num_domain(int domain_type);
78
80 geopm_topo_domain_idx(int domain_type, int cpu_idx);
81
83 geopm_topo_num_domain_nested(int inner_domain, int outer_domain);
84
86 geopm_topo_domain_nested(int inner_domain, int outer_domain, int outer_idx,
87 size_t num_domain_nested, int *domain_nested);
88
90 geopm_topo_domain_name(int domain_type, size_t domain_name_max, char *domain_name);
91
93 geopm_topo_domain_type(const char *domain_name);
94
97
98#ifdef __cplusplus
99}
100#endif
101#endif
#define GEOPM_PUBLIC
Definition geopm_public.h:10
int GEOPM_PUBLIC geopm_topo_domain_name(int domain_type, size_t domain_name_max, char *domain_name)
Definition PlatformTopo.cpp:821
int GEOPM_PUBLIC geopm_topo_domain_idx(int domain_type, int cpu_idx)
Definition PlatformTopo.cpp:758
int GEOPM_PUBLIC geopm_topo_create_cache(void)
Definition PlatformTopo.cpp:854
int GEOPM_PUBLIC geopm_topo_num_domain(int domain_type)
Definition PlatformTopo.cpp:745
int GEOPM_PUBLIC geopm_topo_num_domain_nested(int inner_domain, int outer_domain)
Definition PlatformTopo.cpp:771
int GEOPM_PUBLIC geopm_topo_domain_type(const char *domain_name)
Definition PlatformTopo.cpp:841
geopm_domain_e
Definition geopm_topo.h:17
@ GEOPM_NUM_DOMAIN
Number of valid domains.
Definition geopm_topo.h:73
@ GEOPM_DOMAIN_INVALID
Reserved to represent an invalid domain.
Definition geopm_topo.h:21
@ GEOPM_DOMAIN_CPU
Linux logical CPU.
Definition geopm_topo.h:38
@ GEOPM_DOMAIN_NIC
Network interface controller on the PCI bus.
Definition geopm_topo.h:50
@ GEOPM_DOMAIN_PACKAGE_INTEGRATED_MEMORY
On package memory (MCDRAM)
Definition geopm_topo.h:46
@ GEOPM_DOMAIN_MEMORY
Standard off package DIMM (DRAM or NAND)
Definition geopm_topo.h:42
@ GEOPM_DOMAIN_BOARD
All components on a user allocated compute node (one per controller)
Definition geopm_topo.h:26
@ GEOPM_DOMAIN_PACKAGE_INTEGRATED_NIC
Network interface controller on the processor package.
Definition geopm_topo.h:55
@ GEOPM_DOMAIN_GPU_CHIP
GPU card chips within a package on the PCI Bus (e.g Level Zero subdevices)
Definition geopm_topo.h:69
@ GEOPM_DOMAIN_GPU
GPU card on the PCI bus.
Definition geopm_topo.h:59
@ GEOPM_DOMAIN_PACKAGE
Single processor package in one socket.
Definition geopm_topo.h:30
@ GEOPM_DOMAIN_CORE
Group of associated hyper-threads.
Definition geopm_topo.h:34
@ GEOPM_DOMAIN_PACKAGE_INTEGRATED_GPU
GPU unit on the package (e.g on-package graphics)
Definition geopm_topo.h:64
int GEOPM_PUBLIC geopm_topo_domain_nested(int inner_domain, int outer_domain, int outer_idx, size_t num_domain_nested, int *domain_nested)
Definition PlatformTopo.cpp:790