<commit_before>## Description

A collection of performance-related scripts used by
[perf101](https://github.com/perf101).

## Scripts

### The `exclusive-pin.sh` script

[`exclusive-pin.sh`](https://github.com/perf101/scripts/blob/master/exclusive-pin.sh)
is a helper script for pinning `dom0`'s VCPUs to initial physical CPUs, and
pinning VCPUs of the online user domains to the remaining physical CPUs. For
usage instructions, type `./exclusive-pin.sh -h`.

    $ ./exclusive-pin.sh --dry-run
    xl vcpu-pin 0 0 0
    xl vcpu-pin 0 1 1
    xl vcpu-pin 0 2 2
    xl vcpu-pin 0 3 3
    xl vcpu-pin 17 0 4-23
    xl vcpu-pin 17 1 4-23
    xl vcpu-pin 17 2 4-23
    xl vcpu-pin 17 3 4-23
    $ ./exclusive-pin.sh

### The `multi-iperf.sh` script

[`multi-iperf.sh`](https://github.com/perf101/scripts/blob/master/multi-iperf.sh)
is a helper script for making parallel [`iperf`](http://iperf.sourceforge.net/)
sessions to multiple destinations. It can also track CPU usage of a (possibly
remote) host via `xentop`. For all options, type `./multi-iperf.sh -h`.

    $ ./multi-iperf.sh -i 10.1.2.110,10.1.2.111 -a
    10.1.2.110 931
    10.1.2.111 937
    AGGREGATE 1868

### The `stats` script

[`stats`](https://github.com/perf101/scripts/blob/master/stats) is used for<commit_msg>Add note about pinning and NUMA-ness.<commit_after>## Description

A collection of performance-related scripts used by
[perf101](https://github.com/perf101).

## Scripts

### The `exclusive-pin.sh` script

[`exclusive-pin.sh`](https://github.com/perf101/scripts/blob/master/exclusive-pin.sh)
is a helper script for pinning `dom0`'s VCPUs to initial physical CPUs, and
pinning VCPUs of the online user domains to the remaining physical CPUs. For
usage instructions, type `./exclusive-pin.sh -h`.

    $ ./exclusive-pin.sh --dry-run
    xl vcpu-pin 0 0 0
    xl vcpu-pin 0 1 1
    xl vcpu-pin 0 2 2
    xl vcpu-pin 0 3 3
    xl vcpu-pin 17 0 4-23
    xl vcpu-pin 17 1 4-23
    xl vcpu-pin 17 2 4-23
    xl vcpu-pin 17 3 4-23
    $ ./exclusive-pin.sh

Note that runtime pinning of VCPUs does currently not also move VMs' memory
regions. This means that performance might be slower than expected on NUMA
hosts.

### The `multi-iperf.sh` script

[`multi-iperf.sh`](https://github.com/perf101/scripts/blob/master/multi-iperf.sh)
is a helper script for making parallel [`iperf`](http://iperf.sourceforge.net/)
sessions to multiple destinations. It can also track CPU usage of a (possibly
remote) host via `xentop`. For all options, type `./multi-iperf.sh -h`.

    $ ./multi-iperf.sh -i 10.1.2.110,10.1.2.111 -a
    10.1.2.110 931
    10.1.2.111 937
    AGGREGATE 1868

### The `stats` script

[`stats`](https://github.com/perf101/scripts/blob/master/stats) is used for
{'fraction_non_alphanumeric': 0.13024443633710325, 'fraction_numerical': 0.06566946369937979, 'mean_word_length': 3.098654708520179, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 8, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7260317', 'n_tokens_mistral': 1134, 'n_tokens_neox': 977, 'n_words': 312}