<commit_before># Performance

Below are some performance tests for iteration using the any_iterator.
There are no tests for comparing the std\::vector\::iterator, since the performance impact
of a simple pointer increment on a continious memory area is too huge and any_iterator was not desgined
for such a purporse.

Tests includes the performance impact given an iterator of std\::map or std\::list using the native vs. any iterator.
The third iterator, any_iterator_virtual, is an alternative implementation of any_iterator using an abstract class.

Tested Compilers:
    - [MSVC 2017](msvc-2017)
    - [GCC 8.1](gcc-8.1)

## MSVC 2017

Using MSVC 2017 (Release, x64, default config with /O2) with
4 X 3400 MHz CPU (Intel i5-4670)
16GB RAM

![List Iteration](./benchmark_results/list_iteration_msvc.svg)

![Map Iteration](./benchmark_results/map_iteration_msvc.svg)

## GCC 8.1

Using GCC 8.1 (Release, -O3) with 
2 X 2200 MHz CPU (Intel i5-5200U)
8GB RAM

![List Iteration](./benchmark_results/list_iteration_gcc.svg)

![Map Iteration](./benchmark_results/map_iteration_gcc.svg)

<commit_msg>docstyle<commit_after># Performance

Below are some performance tests for iteration using the any_iterator.
There are no tests for comparing the std\::vector\::iterator, since the performance impact
of a simple pointer increment on a continious memory area is too huge and any_iterator was not desgined
for such a purporse.

Tests includes the performance impact given an iterator of std\::map or std\::list using the native vs. any iterator.
The third iterator, any_iterator_virtual, is an alternative implementation of any_iterator using an abstract class.

Tested Compilers:

    - [MSVC 2017](msvc-2017)
    - [GCC 8.1](gcc-8.1)

## MSVC 2017

Using MSVC 2017 (Release, x64, default config with /O2) with
4 X 3400 MHz CPU (Intel i5-4670)
16GB RAM

![List Iteration](./benchmark_results/list_iteration_msvc.svg)

![Map Iteration](./benchmark_results/map_iteration_msvc.svg)

## GCC 8.1

Using GCC 8.1 (Release, -O3) with 
2 X 2200 MHz CPU (Intel i5-5200U)
8GB RAM

![List Iteration](./benchmark_results/list_iteration_gcc.svg)

![Map Iteration](./benchmark_results/map_iteration_gcc.svg)


{'fraction_non_alphanumeric': 0.08775137111517367, 'fraction_numerical': 0.04661791590493602, 'mean_word_length': 4.670984455958549, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, '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': '2306470', 'n_tokens_mistral': 773, 'n_tokens_neox': 692, 'n_words': 260}