mmcloughlin / goperf

Continuous Benchmarking for the Go compiler
BSD 3-Clause "New" or "Revised" License
8 stars 0 forks source link

infra: determine instance type #13

Closed mmcloughlin closed 4 years ago

mmcloughlin commented 4 years ago

Figure out which GCP instance type to use.

mmcloughlin commented 4 years ago

Almost all instances do not allow frequency control.

Frequency behavior
This page describes the hardware specifications of the CPUs available on Compute Engine but keep in mind that:

A VM's guest environment will always only see the base clock frequency, regardless of what frequency the VM is actually running at.
Most VMs get the all-core turbo frequency, even if only the base frequency is advertised to the guest environment.
C-state is only supported for C2 machines types. For other machine types, C-State or P-State is not supported at this time so idling virtual CPUs within the guest environment might not work as expected.

https://cloud.google.com/compute/docs/cpu-platforms#frequency_behavior

Note c2 instances are not available in all zones, in particular not in us-central1-a that I've been using so far. Need to switch to b.

https://cloud.google.com/compute/docs/regions-zones#available

Pricing:

Note that's the smallest c2 instance.

mmcloughlin commented 4 years ago

c2-standard-4:

mmcloughlin@worker:~$ cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 85
model name      : Intel(R) Xeon(R) CPU
stepping        : 7
microcode       : 0x1
cpu MHz         : 3100.220
cache size      : 25344 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves arat avx512_vnni md_clear arch_capabilities
bugs            : spectre_v1 spectre_v2 spec_store_bypass mds swapgs taa itlb_multihit
bogomips        : 6200.44
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual
power management:

...
mmcloughlin commented 4 years ago

Not relevant now using machines in my closet.