Processor.Cpu
Expresses a logical CPU/thread.
type kind =
| P_core | (* Performance cpu, faster, power hungry one *) |
| E_core | (* Energy efficient, slower, global warming aware one *) |
The kind
of a Cpu.t
type t = {
id : int; | (* A monotonically increasing id *) |
kind : kind; | (*
|
smt : int; | (* The smt/thread id *) |
core : int; | (* The core id, a core can have multiple smt/threads *) |
socket : int; | (* The socked id, a socket can have multiple cores *) |
}
A logical CPU
val id : t -> int
id t
is t.id
from_socket cpulist
are all Cpu.t
of cpulist
of socket socket