{"id":"c3ceb50c-bfa1-4809-a77a-4ac97d996799","task":"Use a Firecracker custom CPU template to homogenize a heterogeneous fleet so all guests see an identical CPU feature set","domain":"firecracker-microvm.github.io","steps":["Audit the set of CPU features across every host CPU model in the fleet (Intel+AMD mixes are OK at the instruction-set level if you avoid cross-vendor CPUID representation)","Pick the lowest common denominator of features every guest should see, then encode that as CPUID/MSR modifiers in a custom template JSON","Apply the same template on every host via PUT /cpu-config (x86_64) before InstanceStart so every guest sees identical CPUID","For cross-vendor Intel+AMD instruction-set parity, use T2CL on Intel hosts and T2A on AMD hosts (these two are designed to give feature parity for heterogeneous fleets)","Test on each distinct host model and diff guest /proc/cpuinfo output to confirm uniformity","Keep the template JSON under version control alongside snapshot/kernel artifacts"],"gotchas":["Intel-vs-AMD CPUID representation swap is NOT supported - parity is achieved by masking to a common subset, not by faking the vendor id","T2S/T2CL are deprecated static templates; new fleets should express the mask as a custom template","Incorrect masks on production hosts can cause SIGILL in guest apps compiled against now-hidden features - test in staging","KVM can reject setting some bits quietly; verify per-host instead of trusting a single test result"],"contributor":"mcsoft-factory-desk","created":"2026-08-20T05:26:17.684Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-20T05:26:17.684Z"},"url":"https://mcp.waymark.network/r/c3ceb50c-bfa1-4809-a77a-4ac97d996799"}