kernelfoundry.eval_pipeline.utils.hardware_info

Classes

HardwareInfo(hardware_id, specs_dict, roofs)

Class representing hardware information including ID, specs, and roofline limits.

HardwareRoofs([GPU_MEMORY_BYTE_READ, ...])

Class representing hardware roofline limits for performance modeling.

class kernelfoundry.eval_pipeline.utils.hardware_info.HardwareRoofs(GPU_MEMORY_BYTE_READ: float | None = None, GPU_MEMORY_BYTE_WRITE: float | None = None, SLM_BYTE_READ: float | None = None, SLM_BYTE_WRITE: float | None = None, XVE_INST_EXECUTED_ALU0_ALL: float | None = None, XVE_INST_EXECUTED_ALU1_ALL: float | None = None, XVE_INST_EXECUTED_ALU2_ALL: float | None = None, XVE_INST_EXECUTED_FP16: float | None = None, XVE_INST_EXECUTED_FP32: float | None = None, XVE_INST_EXECUTED_FP64: float | None = None, XVE_INST_EXECUTED_INT16: float | None = None, XVE_INST_EXECUTED_INT32: float | None = None, XVE_INST_EXECUTED_INT64: float | None = None, XVE_INST_EXECUTED_MATH: float | None = None, XVE_INST_EXECUTED_XMX_BF16: float | None = None, XVE_INST_EXECUTED_XMX_FP16: float | None = None, XVE_INST_EXECUTED_XMX_INT2: float | None = None, XVE_INST_EXECUTED_XMX_INT4: float | None = None, XVE_INST_EXECUTED_XMX_INT8: float | None = None, OPS_PER_INST_FP16: float | None = None, OPS_PER_INST_FP32: float | None = None, OPS_PER_INST_FP64: float | None = None)[source]

Class representing hardware roofline limits for performance modeling.

The data is based on the metrics available from the unitrace profiler

GPU_MEMORY_BYTE_READ: float | None = None
GPU_MEMORY_BYTE_WRITE: float | None = None
SLM_BYTE_READ: float | None = None
SLM_BYTE_WRITE: float | None = None
XVE_INST_EXECUTED_ALU0_ALL: float | None = None
XVE_INST_EXECUTED_ALU1_ALL: float | None = None
XVE_INST_EXECUTED_ALU2_ALL: float | None = None
XVE_INST_EXECUTED_FP16: float | None = None
XVE_INST_EXECUTED_FP32: float | None = None
XVE_INST_EXECUTED_FP64: float | None = None
XVE_INST_EXECUTED_INT16: float | None = None
XVE_INST_EXECUTED_INT32: float | None = None
XVE_INST_EXECUTED_INT64: float | None = None
XVE_INST_EXECUTED_MATH: float | None = None
XVE_INST_EXECUTED_XMX_BF16: float | None = None
XVE_INST_EXECUTED_XMX_FP16: float | None = None
XVE_INST_EXECUTED_XMX_INT2: float | None = None
XVE_INST_EXECUTED_XMX_INT4: float | None = None
XVE_INST_EXECUTED_XMX_INT8: float | None = None
OPS_PER_INST_FP16: float | None = None
OPS_PER_INST_FP32: float | None = None
OPS_PER_INST_FP64: float | None = None
get(key: str) float | None[source]

Get the roofline limit value for a given key, stripping units from the key to match the field names.

__init__(GPU_MEMORY_BYTE_READ: float | None = None, GPU_MEMORY_BYTE_WRITE: float | None = None, SLM_BYTE_READ: float | None = None, SLM_BYTE_WRITE: float | None = None, XVE_INST_EXECUTED_ALU0_ALL: float | None = None, XVE_INST_EXECUTED_ALU1_ALL: float | None = None, XVE_INST_EXECUTED_ALU2_ALL: float | None = None, XVE_INST_EXECUTED_FP16: float | None = None, XVE_INST_EXECUTED_FP32: float | None = None, XVE_INST_EXECUTED_FP64: float | None = None, XVE_INST_EXECUTED_INT16: float | None = None, XVE_INST_EXECUTED_INT32: float | None = None, XVE_INST_EXECUTED_INT64: float | None = None, XVE_INST_EXECUTED_MATH: float | None = None, XVE_INST_EXECUTED_XMX_BF16: float | None = None, XVE_INST_EXECUTED_XMX_FP16: float | None = None, XVE_INST_EXECUTED_XMX_INT2: float | None = None, XVE_INST_EXECUTED_XMX_INT4: float | None = None, XVE_INST_EXECUTED_XMX_INT8: float | None = None, OPS_PER_INST_FP16: float | None = None, OPS_PER_INST_FP32: float | None = None, OPS_PER_INST_FP64: float | None = None) None
class kernelfoundry.eval_pipeline.utils.hardware_info.HardwareInfo(hardware_id: str, specs_dict: dict, roofs: HardwareRoofs)[source]

Class representing hardware information including ID, specs, and roofline limits.

hardware_id: str
specs_dict: dict
roofs: HardwareRoofs
__init__(hardware_id: str, specs_dict: dict, roofs: HardwareRoofs) None