<commit_before>Configuration
=============
PenchY provides a framework for using a configuration file. The configuration
file, by default located at ``~/.penchyrc``, is actually a Python file itself.
The following options are required in order to run PenchY:

* ``SERVER_HOST`` describes the hostname or IP address of the server penchy will be run on.
  This is not one of the nodes where the benchmark will be run, but the one deploying
  PenchY and collecting the resuts.
* ``SERVER_PORT`` describes the port on which penchy will listen on for incoming
  benchmark results.

In addition to the options above, you can define whatever options you like and
use them in your jobs. Just make sure to ``import config`` in your jobs and then
use ``config.MY_SETTING``.

Node Configuration
-------------------

It is recommended to put node definition in the configuration rather than
the job. A node setup could look like this::

    x86NODE = NodeSetting('192.168.56.10', SSH_PORT, USERNAME, '/home/bench', '/usr/bin')
    x64NODE = NodeSetting('192.168.56.11', SSH_PORT, USERNAME, '/home/bench', '/usr/bin')

Please consoult the :class:`~penchy.jobs.job.NodeSetting` documentation in order
to learn what arguments can be passed.

Public Key Authentication<commit_msg>documented logfile<commit_after>Configuration
=============
PenchY provides a framework for using a configuration file. The configuration
file, by default located at ``~/.penchyrc``, is actually a Python file itself.
The following options are **required** in order to run PenchY:

* ``SERVER_HOST`` describes the hostname or IP address of the server penchy will be run on.
  This is not one of the nodes where the benchmark will be run, but the one deploying
  PenchY and collecting the resuts.
* ``SERVER_PORT`` describes the port on which penchy will listen on for incoming
  benchmark results.

The following options are **optional**:

* ``LOGFILE`` path of logfile to log to. The logfile will be rotated in each run.

In addition to the options above, you can define whatever options you like and
use them in your jobs. Just make sure to ``import config`` in your jobs and then
use ``config.MY_SETTING``.

Node Configuration
-------------------

It is recommended to put node definition in the configuration rather than
the job. A node setup could look like this::

    x86NODE = NodeSetting('192.168.56.10', SSH_PORT, USERNAME, '/home/bench', '/usr/bin')
    x64NODE = NodeSetting('192.168.56.11', SSH_PORT, USERNAME, '/home/bench', '/usr/bin')

Please consoult the :class:`~penchy.jobs.job.NodeSetting` documentation in order
to learn what arguments can be passed.

Public Key Authentication
{'fraction_non_alphanumeric': 0.09996242014280346, 'fraction_numerical': 0.018038331454340473, 'mean_word_length': 4.189083820662768, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 4, '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': '1320509', 'n_tokens_mistral': 753, 'n_tokens_neox': 703, 'n_words': 358}