STRUCT ISST_PERF_LEVEL_DATA_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct isst_perf_level_data_info β€” the struct that spills all the tea on your SST-PP level details, bestie ✨

So like, quick vibe check first: this page lives in the Kernel API Manual, and the page itself is struct isst_...el_data_info(9) (yes the header's lowkey truncated, it's giving "ran out of character budget", but it's fr the same struct, iykyk).


πŸ¦‹ SYNOPSIS πŸ¦‹

struct isst_perf_level_data_info {
    __u8 socket_id;
    __u8 power_domain_id;
    __u16 level;
    __u16 tdp_ratio;
    __u16 base_freq_mhz;
    __u16 base_freq_avx2_mhz;
    __u16 base_freq_avx512_mhz;
    __u16 base_freq_amx_mhz;
    __u16 thermal_design_power_w;
    __u16 tjunction_max_c;
    __u16 max_memory_freq_mhz;
    __u16 cooling_type;
    __u16 p0_freq_mhz;
    __u16 p1_freq_mhz;
    __u16 pn_freq_mhz;
    __u16 pm_freq_mhz;
    __u16 p0_fabric_freq_mhz;
    __u16 p1_fabric_freq_mhz;
    __u16 pn_fabric_freq_mhz;
    __u16 pm_fabric_freq_mhz;
    __u16 max_buckets;
    __u16 max_trl_levels;
    __u16 bucket_core_counts[TRL_MAX_BUCKETS];
    __u16 trl_freq_mhz[TRL_MAX_LEVELS][TRL_MAX_BUCKETS];
};

That's the whole lineup, no cuts, no skips β€” every field is a main character here πŸ‘‘


πŸŽ€ Members πŸŽ€

Okay so let's meet the cast, one field at a time πŸ’…

  • socket_id β€” the socket/package id. which physical chip we're talking about, basically the address on the group chat 🫢
  • power_domain_id β€” the Power Domain id 🌸
  • level β€” the SST-PP level the caller wants the info for. like, which level are we snooping on, bestie πŸ‘€
  • tdp_ratio β€” TDP Ratio, no cap πŸ“Š
  • base_freq_mhz β€” Base frequency, in MHz ⚑
  • base_freq_avx2_mhz β€” AVX2 Base frequency, in MHz
  • base_freq_avx512_mhz β€” AVX512 base frequency, in MHz. lowercase "base", we respect the original's chaos πŸ’€
  • base_freq_amx_mhz β€” AMX base frequency, in MHz
  • thermal_design_power_w β€” the Thermal design (TDP) power πŸ”₯
  • tjunction_max_c β€” Max junction temperature 🌑️
  • max_memory_freq_mhz β€” Max memory frequency, in MHz
  • cooling_type β€” the type of cooling that is used. are we air, are we liquid, the drama 🧊
  • p0_freq_mhz β€” core maximum frequency πŸš€
  • p1_freq_mhz β€” Core TDP frequency
  • pn_freq_mhz β€” Core maximum efficiency frequency
  • pm_freq_mhz β€” Core minimum frequency 🐌
  • p0_fabric_freq_mhz β€” Fabric (Uncore) maximum frequency 🌈
  • p1_fabric_freq_mhz β€” Fabric (Uncore) TDP frequency
  • pn_fabric_freq_mhz β€” Fabric (Uncore) minimum efficiency frequency
  • pm_fabric_freq_mhz β€” Fabric (Uncore) minimum frequency
  • max_buckets β€” Maximum trl buckets πŸͺ£
  • max_trl_levels β€” Maximum trl levels πŸͺœ
  • bucket_core_counts β€” Number of cores per bucket
  • trl_freq_mhz β€” maximum frequency for a bucket and trl level. the two-dimensional icon of the whole struct, honestly ⭐

✨ Description ✨

This is the structure you use to get the info on frequencies and TDP for an SST-PP level, and you grab it with ISST_IF_GET_PERF_LEVEL_INFO πŸ”₯ That's the whole assignment, and it ate πŸ’…


πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./include/uapi/linux/isst_if.h β€” and then the whole friend group, all of them, in order:

  • struct isst_if_platform_info(9)
  • struct isst_if_cpu_map(9)
  • struct isst_if_cpu_maps(9)
  • struct isst_if_io_reg(9)
  • struct isst_if_io_regs(9)
  • struct isst_if_mbox_cmd(9)
  • struct isst_if_mbox_cmds(9)
  • struct isst_if_msr_cmd(9)
  • struct isst_if_msr_cmds(9)
  • struct isst_core_power(9)
  • struct isst_clos_param(9)
  • struct isst_if_clos_assoc(9)
  • struct isst_if_clos_assoc_cmds(9)
  • struct isst_tpmi_instance_count(9)
  • struct isst_perf_level_info(9)
  • struct isst_perf_level_control(9)
  • struct isst_perf_feature_control(9)
  • struct isst_perf_level_fabric_info(9)
  • struct isst_perf_level_cpu_mask(9)
  • struct isst_base_freq_info(9)
  • struct isst_turbo_freq_info(9)

Like, the entire isst extended universe, read them all, slay πŸ“šπŸ’–


πŸ’€ Real talk though: every one of those names is spelled exactly like that. Don't get cute and "fix" any of them, or the compiler will humble you in front of everyone.

That's the page, bestie 🫢 mwah πŸ’‹ β€” brought to you by the gang over at ./include/uapi/linux, dated October 2026, and the page title is struct isst_...el_data_info(9) if you ever need to cite your sources βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from