Probe target hosts

You must probe an example of a typical host machine before using these metrics. As well as other properties, this also collects the CPU ID used to identify the set of potential hardware events for the host, and tests which generalized events are supported.

Ensure that /proc/sys/kernel/perf_event_paranoid is set to 2 or lower (Permissions) before performing the probe.

Note

It is not necessary to probe every potential host, a single compute node in a homogeneous cluster is sufficient.

If your home directory is writable, you can generate a probe file and install it in your config directory by running the following on the intended host:

/path/to/forge/bin/forge-probe --install=user

If the Forge installation directory is writable, you can generate and install the probe file for the current host with:

/path/to/forge/bin/forge-probe --install=global

To generate the probe file, but install it manually, execute:

/path/to/forge/bin/forge-probe

The probe is named <hostname>_probe.json and is generated in your current working directory. You must manually copy it to the location specified in the forge-probe output. This is typically only necessary when the compute node that you are probing does not have write access to your home file system.

Check that the expected probe files are correctly installed with --target-host:

/path/to/forge/bin/map --target-host=list

This shows something like:

0x00000000420f5160    (thunderx2)   e.g. node07.myarmhost.com
GenuineIntel-6-4E     (skylake)     e.g. node01.myintelhost.com

If you have exactly one probe file installed, this is automatically assumed to be the target host. If there are multiple installed probe files, you must specify the intended target whenever you use the configurable Perf metrics feature. When using the command line, use the --target-host argument. You can specify the intended target CPU ID (such as, 0x00000000420f5160), family name (such as, thunderx2), or a unique substring of the hostname (myarmhost).