FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

buffer: improve performance of buffer indexof method by ZYSzys · Pull Request #26400 · nodejs/node · GitHub

buffer: improve performance of buffer indexof method by ZYSzys · Pull Request #26400 · nodejs/node · GitHub
Skip to content

Navigation Menu

Sign in

buffer: improve performance of buffer indexof method - #26400

Closed
ZYSzys wants to merge 2 commits into
nodejs:masterfrom
zys-contrib:buffer-slowIndexOf
Closed

buffer: improve performance of buffer indexof method#26400
ZYSzys wants to merge 2 commits into
nodejs:masterfrom
zys-contrib:buffer-slowIndexOf

Conversation

ZYSzys commented Mar 2, 2019

Copy link
Copy Markdown
Member

Inspired by #12361, making buffer indexof method be consistent with byteLength, stringSlice, Buffer.prototype.write , and IIUC this should have some performance improvement.

(I've run the buffer benchmark and seems a bit of improvement, but it took too long and my laptop has no power, so I canceled -:(

/cc @mscdex

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines

nodejs-github-bot added the buffer Issues and PRs related to the buffer subsystem. label Mar 2, 2019

mscdex commented Mar 2, 2019

Copy link
Copy Markdown
Contributor

Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/298/

BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

This is likely only going to improve the performance for very small buffers.

Comment thread lib/buffer.js Outdated

BridgeAR commented Mar 5, 2019

Copy link
Copy Markdown
Member

Looking at the benchmark results this does not seem to have a measurable impact (the few significant changes seem to be statistical stray bullets).
But please have a look if our current indexOf benchmarks actually test the case that is improved here.

ZYSzys commented Mar 5, 2019
edited
Loading

Copy link
Copy Markdown
Member Author

Yes, the indexOf benchmark is not ideal, even regression🤕.

Here are some measurable impact:

Details
buffers/buffer-indexof.js n=100000 type='buffer' encoding='ucs2' search='Panther'                                                                         *      3.56 %       ±3.09%  ±4.13%  ±5.39%
buffers/buffer-indexof.js n=100000 type='buffer' encoding='undefined' search='Alice'                                                                      *      5.41 %       ±5.10%  ±6.82%  ±8.95%
buffers/buffer-indexof.js n=100000 type='buffer' encoding='utf8' search='@'                                                                               *     -9.84 %       ±9.25% ±12.43% ±16.42%
buffers/buffer-indexof.js n=100000 type='string' encoding='binary' search='@'                                                                             *      7.58 %       ±5.70%  ±7.59%  ±9.89%
buffers/buffer-indexof.js n=100000 type='string' encoding='binary' search='among mad people'                                                              *     -1.53 %       ±1.17%  ±1.57%  ±2.05%
buffers/buffer-indexof.js n=100000 type='string' encoding='binary' search='Ou est ma chatte?'                                                             *     -3.49 %       ±2.66%  ±3.55%  ±4.63%
buffers/buffer-indexof.js n=100000 type='string' encoding='binary' search='venture to go near the house till she had brought herself down to'            **     -3.47 %       ±2.24%  ±2.98%  ±3.89%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='Alice'                                                                           *     -6.56 %       ±6.08%  ±8.14% ±10.68%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='Gryphon'                                                                         *     -3.43 %       ±2.99%  ±3.98%  ±5.19%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='--l'                                                                             *     -2.61 %       ±2.60%  ±3.47%  ±4.51%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='Ou est ma chatte?'                                                             ***     -4.78 %       ±1.73%  ±2.31%  ±3.01%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='Panther'                                                                        **     -3.69 %       ±2.14%  ±2.84%  ±3.70%
buffers/buffer-indexof.js n=100000 type='string' encoding='ucs2' search='venture to go near the house till she had brought herself down to'              **     -2.72 %       ±1.76%  ±2.34%  ±3.05%
buffers/buffer-indexof.js n=100000 type='string' encoding='undefined' search='Ou est ma chatte?'                                                          *     -3.42 %       ±2.77%  ±3.70%  ±4.82%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='@'                                                                               *     -5.95 %       ±4.72%  ±6.29%  ±8.21%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='aaaaaaaaaaaaaaaaa'                                                               *     -2.23 %       ±1.79%  ±2.38%  ±3.11%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='found it very'                                                                   *     -1.41 %       ±1.14%  ±1.52%  ±1.98%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='</i> to the Caterpillar'                                                         *     -1.86 %       ±1.80%  ±2.41%  ±3.17%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='--l'                                                                             *     -4.93 %       ±4.20%  ±5.60%  ±7.30%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='neighbouring pool'                                                              **     -2.59 %       ±1.49%  ±2.00%  ±2.64%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='Ou est ma chatte?'                                                               *     -2.90 %       ±2.23%  ±2.97%  ±3.86%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='SQ'                                                                              *     -2.54 %       ±2.15%  ±2.87%  ±3.73%
buffers/buffer-indexof.js n=100000 type='string' encoding='utf8' search='venture to go near the house till she had brought herself down to'              **     -2.85 %       ±1.87%  ±2.49%  ±3.24%
I'll investigate it more.

ZYSzys commented Mar 6, 2019
edited
Loading

Copy link
Copy Markdown
Member Author

The orginal approach causes some regressions. So I just simply add all caps versions and seems a bit improvement.

Here are the results by running the new benchmark buffers/buffer-indexof-encoding.js I added:

Details
                                                                                                                                          confidence improvement accuracy (*)    (**)   (***)
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='--l'                                                                                  7.07 %       ±8.88% ±11.83% ±15.43%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='--l'                                                                                  8.88 %      ±10.32% ±13.78% ±18.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='@'                                                                             *    -10.37 %      ±10.18% ±13.58% ±17.76%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='@'                                                                                   -2.04 %       ±9.97% ±13.26% ±17.26%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='</i> to the Caterpillar'                                                             -0.62 %       ±6.11%  ±8.15% ±10.66%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='</i> to the Caterpillar'                                                             -2.72 %       ±6.40%  ±8.51% ±11.08%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='10x'                                                                                  1.69 %       ±8.66% ±11.55% ±15.07%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='10x'                                                                                 -3.73 %       ±7.30%  ±9.71% ±12.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='aaaaaaaaaaaaaaaaa'                                                                    0.81 %       ±3.28%  ±4.37%  ±5.69%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='aaaaaaaaaaaaaaaaa'                                                                   -2.58 %       ±3.41%  ±4.54%  ±5.92%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='Alice'                                                                                2.33 %       ±9.51% ±12.66% ±16.47%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='Alice'                                                                                5.93 %      ±10.69% ±14.23% ±18.54%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='among mad people'                                                                    -1.12 %       ±5.63%  ±7.51%  ±9.80%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='among mad people'                                                                     0.21 %       ±4.80%  ±6.39%  ±8.31%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='found it very'                                                                        1.52 %       ±3.70%  ±4.93%  ±6.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='found it very'                                                                       -2.03 %       ±4.63%  ±6.18%  ±8.09%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='Gryphon'                                                                              5.80 %       ±9.69% ±12.91% ±16.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='Gryphon'                                                                             -0.79 %       ±7.89% ±10.50% ±13.66%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='neighbouring pool'                                                                    3.06 %       ±3.90%  ±5.20%  ±6.81%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='neighbouring pool'                                                                    2.37 %       ±4.25%  ±5.68%  ±7.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='Ou est ma chatte?'                                                                   -2.75 %       ±5.29%  ±7.04%  ±9.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='Ou est ma chatte?'                                                                    3.37 %       ±5.78%  ±7.70% ±10.04%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='Panther'                                                                             -1.51 %      ±10.05% ±13.37% ±17.40%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='Panther'                                                                             -1.21 %       ±8.00% ±10.65% ±13.86%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='Soo--oop'                                                                             0.73 %       ±3.25%  ±4.33%  ±5.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='Soo--oop'                                                                             2.22 %       ±3.60%  ±4.80%  ±6.26%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='SQ'                                                                            *      9.30 %       ±8.85% ±11.82% ±15.47%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='SQ'                                                                                   2.35 %       ±9.48% ±12.62% ±16.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ascii' search='venture to go near the house till she had brought herself down to'             *     -7.21 %       ±6.57%  ±8.75% ±11.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ASCII' search='venture to go near the house till she had brought herself down to'                   -4.04 %       ±5.23%  ±6.97%  ±9.09%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='--l'                                                                                -0.72 %       ±7.30%  ±9.71% ±12.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='--l'                                                                                 4.27 %       ±9.30% ±12.39% ±16.15%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='@'                                                                                  -5.97 %       ±9.80% ±13.05% ±16.99%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='@'                                                                                  -5.02 %       ±8.91% ±11.88% ±15.50%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='</i> to the Caterpillar'                                                            -5.96 %      ±10.30% ±13.74% ±17.95%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='</i> to the Caterpillar'                                                           -10.22 %      ±10.53% ±14.05% ±18.37%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='10x'                                                                                 6.33 %      ±10.04% ±13.41% ±17.57%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='10x'                                                                                 1.16 %       ±7.37%  ±9.82% ±12.80%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='aaaaaaaaaaaaaaaaa'                                                                  -0.47 %       ±5.55%  ±7.41%  ±9.67%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='aaaaaaaaaaaaaaaaa'                                                                   3.31 %       ±3.92%  ±5.23%  ±6.82%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='Alice'                                                                              -4.65 %       ±8.54% ±11.38% ±14.85%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='Alice'                                                                              -0.48 %       ±8.33% ±11.08% ±14.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='among mad people'                                                                    2.83 %       ±4.84%  ±6.45%  ±8.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='among mad people'                                                                    2.99 %       ±5.00%  ±6.67%  ±8.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='found it very'                                                                *      6.69 %       ±6.40%  ±8.54% ±11.16%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='found it very'                                                                       0.99 %       ±8.45% ±11.26% ±14.66%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='Gryphon'                                                                             3.22 %       ±6.74%  ±8.98% ±11.72%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='Gryphon'                                                                             1.82 %       ±6.67%  ±8.88% ±11.56%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='neighbouring pool'                                                                   6.82 %       ±9.11% ±12.14% ±15.86%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='neighbouring pool'                                                                   1.82 %       ±8.62% ±11.49% ±14.98%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='Ou est ma chatte?'                                                                  -1.70 %       ±4.50%  ±5.99%  ±7.80%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='Ou est ma chatte?'                                                                  -1.55 %       ±6.16%  ±8.23% ±10.78%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='Panther'                                                                             0.59 %      ±10.75% ±14.30% ±18.62%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='Panther'                                                                             1.06 %       ±9.65% ±12.84% ±16.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='Soo--oop'                                                                           -4.79 %       ±8.89% ±11.85% ±15.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='Soo--oop'                                                                           -2.42 %       ±6.83%  ±9.09% ±11.83%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='SQ'                                                                                 -4.08 %       ±8.35% ±11.12% ±14.47%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='SQ'                                                                                 -2.27 %       ±8.06% ±10.74% ±14.01%
 buffers/buffer-indexof-encoding.js n=1000 encoding='base64' search='venture to go near the house till she had brought herself down to'                  -5.05 %       ±8.83% ±11.75% ±15.30%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BASE64' search='venture to go near the house till she had brought herself down to'                  -5.95 %       ±7.04%  ±9.40% ±12.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='--l'                                                                                 5.14 %       ±8.21% ±10.93% ±14.23%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='--l'                                                                                 4.65 %       ±5.86%  ±7.80% ±10.15%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='@'                                                                            *    -11.00 %       ±9.78% ±13.02% ±16.94%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='@'                                                                                   8.03 %      ±10.72% ±14.29% ±18.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='</i> to the Caterpillar'                                                             0.56 %       ±4.61%  ±6.14%  ±8.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='</i> to the Caterpillar'                                                            -2.73 %       ±6.68%  ±8.88% ±11.56%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='10x'                                                                                -4.02 %       ±9.21% ±12.27% ±15.98%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='10x'                                                                                10.51 %      ±11.01% ±14.65% ±19.07%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='aaaaaaaaaaaaaaaaa'                                                                   2.32 %       ±4.53%  ±6.04%  ±7.89%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='aaaaaaaaaaaaaaaaa'                                                                  -2.69 %       ±5.63%  ±7.52%  ±9.83%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='Alice'                                                                              -2.76 %       ±8.28% ±11.05% ±14.47%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='Alice'                                                                              10.63 %      ±11.14% ±14.83% ±19.32%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='among mad people'                                                                    4.39 %       ±5.23%  ±6.96%  ±9.09%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='among mad people'                                                                    0.96 %       ±4.30%  ±5.73%  ±7.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='found it very'                                                                      -0.14 %       ±4.63%  ±6.17%  ±8.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='found it very'                                                                      -0.79 %       ±4.74%  ±6.31%  ±8.23%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='Gryphon'                                                                            -0.77 %       ±8.09% ±10.77% ±14.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='Gryphon'                                                                     **     10.60 %       ±7.28%  ±9.69% ±12.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='neighbouring pool'                                                                   1.65 %       ±3.77%  ±5.01%  ±6.52%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='neighbouring pool'                                                                   3.57 %       ±4.20%  ±5.59%  ±7.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='Ou est ma chatte?'                                                                  -0.60 %       ±4.19%  ±5.58%  ±7.26%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='Ou est ma chatte?'                                                                   5.09 %       ±8.53% ±11.36% ±14.82%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='Panther'                                                                             5.21 %       ±9.08% ±12.13% ±15.87%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='Panther'                                                                            10.12 %      ±10.76% ±14.34% ±18.70%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='Soo--oop'                                                                           -0.31 %       ±2.88%  ±3.83%  ±4.99%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='Soo--oop'                                                                           -0.86 %       ±5.21%  ±6.93%  ±9.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='SQ'                                                                                 -0.98 %       ±9.05% ±12.07% ±15.76%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='SQ'                                                                           *      8.50 %       ±8.32% ±11.08% ±14.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='binary' search='venture to go near the house till she had brought herself down to'                   0.26 %       ±4.83%  ±6.43%  ±8.36%
 buffers/buffer-indexof-encoding.js n=1000 encoding='BINARY' search='venture to go near the house till she had brought herself down to'                   5.33 %       ±7.00%  ±9.33% ±12.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='--l'                                                                                   -1.04 %      ±12.52% ±16.67% ±21.72%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='--l'                                                                             *     10.76 %      ±10.61% ±14.18% ±18.60%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='@'                                                                                      1.39 %      ±12.18% ±16.22% ±21.13%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='@'                                                                                      4.82 %       ±9.70% ±12.92% ±16.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='</i> to the Caterpillar'                                                               -9.65 %      ±10.43% ±13.90% ±18.12%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='</i> to the Caterpillar'                                                               -2.86 %      ±11.63% ±15.47% ±20.14%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='10x'                                                                                    1.15 %       ±8.21% ±10.92% ±14.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='10x'                                                                                    7.44 %       ±9.88% ±13.18% ±17.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='aaaaaaaaaaaaaaaaa'                                                                     -2.09 %       ±9.59% ±12.76% ±16.61%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='aaaaaaaaaaaaaaaaa'                                                                     -5.42 %       ±8.68% ±11.58% ±15.14%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='Alice'                                                                                 -2.84 %      ±10.02% ±13.33% ±17.35%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='Alice'                                                                                  5.91 %      ±11.02% ±14.69% ±19.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='among mad people'                                                                       4.06 %       ±9.56% ±12.73% ±16.57%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='among mad people'                                                                       6.67 %      ±11.03% ±14.69% ±19.15%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='found it very'                                                                          2.26 %       ±9.83% ±13.09% ±17.08%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='found it very'                                                                          2.74 %       ±8.80% ±11.74% ±15.34%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='Gryphon'                                                                               -3.29 %       ±8.22% ±10.94% ±14.23%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='Gryphon'                                                                                3.19 %       ±8.04% ±10.70% ±13.94%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='neighbouring pool'                                                                     -3.94 %       ±8.85% ±11.77% ±15.32%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='neighbouring pool'                                                                     -5.54 %       ±8.79% ±11.70% ±15.24%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='Ou est ma chatte?'                                                                     -0.42 %       ±8.99% ±11.96% ±15.57%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='Ou est ma chatte?'                                                                      1.67 %       ±6.66%  ±8.90% ±11.65%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='Panther'                                                                                0.13 %      ±11.17% ±14.86% ±19.35%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='Panther'                                                                                2.90 %       ±9.21% ±12.26% ±15.95%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='Soo--oop'                                                                              -4.78 %       ±8.65% ±11.52% ±15.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='Soo--oop'                                                                               0.80 %       ±9.22% ±12.27% ±15.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='SQ'                                                                                    -6.93 %       ±8.54% ±11.36% ±14.80%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='SQ'                                                                              *     -8.26 %       ±6.97%  ±9.31% ±12.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='hex' search='venture to go near the house till she had brought herself down to'                     -7.18 %       ±8.72% ±11.61% ±15.14%
 buffers/buffer-indexof-encoding.js n=1000 encoding='HEX' search='venture to go near the house till she had brought herself down to'                     -1.43 %       ±8.34% ±11.11% ±14.47%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='--l'                                                                                 0.12 %       ±8.32% ±11.07% ±14.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='--l'                                                                          *      7.99 %       ±7.09%  ±9.44% ±12.31%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='@'                                                                                  -7.61 %      ±11.06% ±14.72% ±19.16%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='@'                                                                                   5.58 %      ±10.75% ±14.34% ±18.74%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='</i> to the Caterpillar'                                                             1.07 %       ±4.48%  ±5.97%  ±7.79%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='</i> to the Caterpillar'                                                            -0.41 %       ±4.58%  ±6.10%  ±7.97%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='10x'                                                                                -1.07 %       ±7.51% ±10.00% ±13.05%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='10x'                                                                         **     16.13 %       ±9.45% ±12.57% ±16.37%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='aaaaaaaaaaaaaaaaa'                                                                   2.29 %       ±4.80%  ±6.40%  ±8.34%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='aaaaaaaaaaaaaaaaa'                                                            *      3.91 %       ±3.71%  ±4.93%  ±6.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='Alice'                                                                              -3.69 %      ±10.05% ±13.40% ±17.50%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='Alice'                                                                       **     20.67 %      ±12.39% ±16.50% ±21.49%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='among mad people'                                                                    1.64 %       ±4.65%  ±6.18%  ±8.05%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='among mad people'                                                                    4.63 %       ±6.39%  ±8.50% ±11.06%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='found it very'                                                                       0.75 %       ±3.55%  ±4.73%  ±6.16%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='found it very'                                                                      -1.17 %       ±3.12%  ±4.16%  ±5.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='Gryphon'                                                                             6.37 %       ±7.20%  ±9.59% ±12.50%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='Gryphon'                                                                      *      9.56 %       ±7.79% ±10.37% ±13.52%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='neighbouring pool'                                                                   1.45 %       ±5.01%  ±6.66%  ±8.68%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='neighbouring pool'                                                            *      3.40 %       ±3.00%  ±3.99%  ±5.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='Ou est ma chatte?'                                                                   4.52 %       ±7.15%  ±9.55% ±12.51%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='Ou est ma chatte?'                                                                   2.49 %       ±4.51%  ±6.00%  ±7.82%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='Panther'                                                                             3.72 %       ±7.49%  ±9.99% ±13.06%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='Panther'                                                                      *      9.72 %       ±9.21% ±12.26% ±15.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='Soo--oop'                                                                            2.24 %       ±3.35%  ±4.47%  ±5.83%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='Soo--oop'                                                                            3.34 %       ±4.57%  ±6.12%  ±8.04%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='SQ'                                                                                  1.99 %       ±9.16% ±12.21% ±15.92%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='SQ'                                                                                  6.11 %      ±10.60% ±14.10% ±18.35%
 buffers/buffer-indexof-encoding.js n=1000 encoding='latin1' search='venture to go near the house till she had brought herself down to'                  -1.07 %       ±6.00%  ±7.98% ±10.39%
 buffers/buffer-indexof-encoding.js n=1000 encoding='LATIN1' search='venture to go near the house till she had brought herself down to'                  -4.04 %       ±6.15%  ±8.20% ±10.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='--l'                                                                                 -0.04 %       ±6.34%  ±8.44% ±10.98%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='--l'                                                                                  2.04 %       ±6.65%  ±8.85% ±11.53%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='@'                                                                                   -0.56 %       ±8.70% ±11.57% ±15.06%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='@'                                                                                   -1.04 %      ±11.02% ±14.69% ±19.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='</i> to the Caterpillar'                                                             -3.23 %       ±5.77%  ±7.68% ±10.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='</i> to the Caterpillar'                                                             -1.50 %       ±6.33%  ±8.43% ±10.99%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='10x'                                                                                  4.63 %      ±10.10% ±13.44% ±17.51%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='10x'                                                                                  5.80 %       ±7.78% ±10.36% ±13.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='aaaaaaaaaaaaaaaaa'                                                                   -2.22 %       ±3.82%  ±5.09%  ±6.65%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='aaaaaaaaaaaaaaaaa'                                                                    0.83 %       ±3.46%  ±4.60%  ±6.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='Alice'                                                                                4.52 %       ±8.08% ±10.74% ±13.99%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='Alice'                                                                               -0.01 %       ±5.68%  ±7.56%  ±9.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='among mad people'                                                                    -1.52 %       ±5.41%  ±7.21%  ±9.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='among mad people'                                                                     4.10 %       ±4.19%  ±5.58%  ±7.30%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='found it very'                                                                       -2.83 %       ±6.45%  ±8.60% ±11.25%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='found it very'                                                                       -0.04 %       ±5.98%  ±7.96% ±10.36%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='Gryphon'                                                                              2.20 %       ±8.24% ±10.97% ±14.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='Gryphon'                                                                     ***     12.33 %       ±6.92%  ±9.21% ±12.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='neighbouring pool'                                                                    2.29 %       ±2.60%  ±3.47%  ±4.51%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='neighbouring pool'                                                                   -0.43 %       ±4.72%  ±6.30%  ±8.23%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='Ou est ma chatte?'                                                                    5.66 %       ±8.68% ±11.55% ±15.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='Ou est ma chatte?'                                                                    6.38 %       ±8.29% ±11.03% ±14.35%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='Panther'                                                                              4.33 %       ±9.02% ±12.00% ±15.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='Panther'                                                                       *      8.65 %       ±7.79% ±10.37% ±13.50%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='Soo--oop'                                                                            -1.19 %       ±8.12% ±10.81% ±14.08%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='Soo--oop'                                                                            -2.60 %       ±8.89% ±11.84% ±15.44%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='SQ'                                                                                   9.16 %       ±9.49% ±12.64% ±16.49%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='SQ'                                                                                   2.86 %       ±9.48% ±12.61% ±16.42%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs-2' search='venture to go near the house till she had brought herself down to'                   -0.38 %       ±5.95%  ±7.93% ±10.33%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS-2' search='venture to go near the house till she had brought herself down to'                    2.29 %       ±6.29%  ±8.37% ±10.89%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='--l'                                                                                   2.59 %       ±7.46%  ±9.94% ±12.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='--l'                                                                           **      9.55 %       ±7.01%  ±9.34% ±12.18%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='@'                                                                                    -0.41 %       ±8.44% ±11.23% ±14.61%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='@'                                                                                     2.48 %      ±10.49% ±13.95% ±18.16%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='</i> to the Caterpillar'                                                              -0.42 %       ±5.75%  ±7.66%  ±9.98%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='</i> to the Caterpillar'                                                               1.17 %       ±5.93%  ±7.90% ±10.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='10x'                                                                                  -2.42 %       ±8.13% ±10.85% ±14.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='10x'                                                                           **     15.76 %      ±10.17% ±13.57% ±17.75%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='aaaaaaaaaaaaaaaaa'                                                                    -0.82 %       ±4.41%  ±5.89%  ±7.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='aaaaaaaaaaaaaaaaa'                                                                     0.65 %       ±3.35%  ±4.45%  ±5.80%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='Alice'                                                                                 2.82 %       ±6.68%  ±8.88% ±11.56%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='Alice'                                                                                 4.20 %       ±7.43%  ±9.90% ±12.90%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='among mad people'                                                                     -0.92 %       ±7.42%  ±9.89% ±12.90%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='among mad people'                                                                      2.73 %       ±3.83%  ±5.10%  ±6.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='found it very'                                                                        -0.47 %       ±6.10%  ±8.14% ±10.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='found it very'                                                                        -3.57 %       ±6.66%  ±8.89% ±11.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='Gryphon'                                                                               0.86 %       ±7.54% ±10.03% ±13.06%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='Gryphon'                                                                               7.26 %       ±8.00% ±10.64% ±13.85%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='neighbouring pool'                                                                     0.88 %       ±3.93%  ±5.24%  ±6.85%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='neighbouring pool'                                                                     0.66 %       ±6.07%  ±8.11% ±10.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='Ou est ma chatte?'                                                                    -0.02 %       ±9.13% ±12.15% ±15.81%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='Ou est ma chatte?'                                                                     7.46 %       ±8.39% ±11.17% ±14.54%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='Panther'                                                                               6.73 %       ±7.70% ±10.26% ±13.39%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='Panther'                                                                               2.87 %       ±9.39% ±12.50% ±16.27%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='Soo--oop'                                                                             -4.53 %       ±8.72% ±11.64% ±15.20%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='Soo--oop'                                                                              5.62 %       ±7.16%  ±9.53% ±12.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='SQ'                                                                                   -0.74 %       ±7.88% ±10.50% ±13.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='SQ'                                                                            **     14.41 %       ±8.94% ±11.95% ±15.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='ucs2' search='venture to go near the house till she had brought herself down to'                    -3.11 %       ±5.55%  ±7.38%  ±9.61%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UCS2' search='venture to go near the house till she had brought herself down to'                    -0.64 %       ±4.74%  ±6.30%  ±8.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='--l'                                                                               3.09 %       ±5.98%  ±7.97% ±10.38%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='--l'                                                                               2.31 %       ±7.48%  ±9.95% ±12.95%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='@'                                                                                -7.63 %      ±10.18% ±13.55% ±17.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='@'                                                                                 1.27 %      ±12.27% ±16.35% ±21.31%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='</i> to the Caterpillar'                                                          -0.47 %       ±5.75%  ±7.65%  ±9.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='</i> to the Caterpillar'                                                          -0.04 %       ±5.21%  ±6.94%  ±9.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='10x'                                                                               6.17 %      ±10.91% ±14.52% ±18.92%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='10x'                                                                               5.69 %       ±7.58% ±10.08% ±13.13%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='aaaaaaaaaaaaaaaaa'                                                                 0.41 %       ±4.44%  ±5.91%  ±7.70%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='aaaaaaaaaaaaaaaaa'                                                                 3.05 %       ±3.57%  ±4.76%  ±6.20%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='Alice'                                                                             4.03 %       ±5.68%  ±7.57%  ±9.88%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='Alice'                                                                             1.85 %       ±6.69%  ±8.90% ±11.59%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='among mad people'                                                           *      4.18 %       ±4.12%  ±5.49%  ±7.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='among mad people'                                                                  2.53 %       ±5.68%  ±7.59%  ±9.95%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='found it very'                                                                    -0.09 %       ±5.63%  ±7.50%  ±9.77%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='found it very'                                                                    -0.95 %       ±4.74%  ±6.31%  ±8.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='Gryphon'                                                                          -1.30 %       ±8.84% ±11.77% ±15.33%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='Gryphon'                                                                           3.80 %       ±5.25%  ±6.98%  ±9.09%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='neighbouring pool'                                                                -2.09 %       ±3.15%  ±4.20%  ±5.49%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='neighbouring pool'                                                                 2.98 %       ±4.72%  ±6.28%  ±8.18%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='Ou est ma chatte?'                                                                 1.55 %      ±10.10% ±13.46% ±17.57%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='Ou est ma chatte?'                                                                -3.12 %       ±8.49% ±11.30% ±14.73%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='Panther'                                                                          -2.82 %       ±8.45% ±11.24% ±14.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='Panther'                                                                   **      9.83 %       ±6.42%  ±8.55% ±11.14%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='Soo--oop'                                                                          4.17 %       ±7.24%  ±9.66% ±12.61%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='Soo--oop'                                                                          4.08 %       ±7.48%  ±9.96% ±12.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='SQ'                                                                                4.01 %       ±9.08% ±12.09% ±15.74%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='SQ'                                                                                3.02 %       ±7.49%  ±9.96% ±12.97%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-16le' search='venture to go near the house till she had brought herself down to'                -5.29 %       ±9.32% ±12.41% ±16.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-16LE' search='venture to go near the house till she had brought herself down to'                 2.01 %       ±6.01%  ±8.00% ±10.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='--l'                                                                                 -2.09 %       ±6.21%  ±8.27% ±10.76%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='--l'                                                                           *      8.65 %       ±8.11% ±10.79% ±14.04%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='@'                                                                                   -4.05 %      ±10.77% ±14.33% ±18.65%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='@'                                                                            **     17.15 %      ±12.03% ±16.01% ±20.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='</i> to the Caterpillar'                                                       *     -5.53 %       ±5.48%  ±7.31%  ±9.56%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='</i> to the Caterpillar'                                                              3.46 %       ±7.70% ±10.24% ±13.33%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='10x'                                                                                  7.94 %       ±8.55% ±11.38% ±14.83%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='10x'                                                                         ***     23.42 %      ±10.47% ±13.93% ±18.15%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='aaaaaaaaaaaaaaaaa'                                                                    0.98 %       ±3.61%  ±4.81%  ±6.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='aaaaaaaaaaaaaaaaa'                                                                    0.86 %       ±5.18%  ±6.90%  ±9.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='Alice'                                                                                2.92 %      ±10.28% ±13.69% ±17.86%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='Alice'                                                                       ***     24.87 %      ±10.70% ±14.24% ±18.54%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='among mad people'                                                                     3.71 %       ±4.87%  ±6.49%  ±8.46%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='among mad people'                                                                     2.08 %       ±7.18%  ±9.55% ±12.44%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='found it very'                                                                        2.64 %       ±4.32%  ±5.76%  ±7.52%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='found it very'                                                                        0.02 %       ±4.17%  ±5.54%  ±7.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='Gryphon'                                                                              3.24 %       ±6.60%  ±8.79% ±11.44%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='Gryphon'                                                                              6.83 %       ±6.86%  ±9.13% ±11.89%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='neighbouring pool'                                                                    3.24 %       ±5.30%  ±7.07%  ±9.25%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='neighbouring pool'                                                                    1.13 %       ±3.17%  ±4.21%  ±5.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='Ou est ma chatte?'                                                                   -1.19 %       ±5.55%  ±7.39%  ±9.63%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='Ou est ma chatte?'                                                                    3.99 %       ±6.71%  ±8.93% ±11.64%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='Panther'                                                                              3.25 %       ±8.11% ±10.79% ±14.04%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='Panther'                                                                              7.81 %       ±9.16% ±12.20% ±15.89%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='Soo--oop'                                                                             1.81 %       ±3.55%  ±4.73%  ±6.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='Soo--oop'                                                                             1.15 %       ±3.31%  ±4.42%  ±5.78%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='SQ'                                                                                   3.32 %       ±9.47% ±12.61% ±16.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='SQ'                                                                           **     17.66 %      ±12.07% ±16.06% ±20.91%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf-8' search='venture to go near the house till she had brought herself down to'                    1.34 %       ±4.32%  ±5.76%  ±7.49%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF-8' search='venture to go near the house till she had brought herself down to'                   -1.02 %       ±4.68%  ±6.23%  ±8.12%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='--l'                                                                                0.49 %       ±5.03%  ±6.69%  ±8.71%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='--l'                                                                                4.84 %       ±7.61% ±10.12% ±13.17%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='@'                                                                                 -5.81 %      ±10.98% ±14.61% ±19.03%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='@'                                                                                  0.05 %      ±10.29% ±13.69% ±17.83%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='</i> to the Caterpillar'                                                           -0.24 %       ±5.59%  ±7.44%  ±9.69%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='</i> to the Caterpillar'                                                           -1.05 %       ±6.29%  ±8.37% ±10.90%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='10x'                                                                               -1.19 %       ±9.22% ±12.26% ±15.96%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='10x'                                                                                8.69 %       ±9.57% ±12.73% ±16.57%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='aaaaaaaaaaaaaaaaa'                                                                 -2.61 %       ±5.30%  ±7.06%  ±9.21%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='aaaaaaaaaaaaaaaaa'                                                                 -0.62 %       ±3.27%  ±4.36%  ±5.67%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='Alice'                                                                              5.80 %       ±6.08%  ±8.12% ±10.61%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='Alice'                                                                              6.74 %       ±7.93% ±10.59% ±13.87%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='among mad people'                                                                  -0.32 %       ±5.81%  ±7.74% ±10.07%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='among mad people'                                                                  -1.09 %       ±4.01%  ±5.33%  ±6.94%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='found it very'                                                                      0.25 %       ±5.19%  ±6.91%  ±9.01%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='found it very'                                                                      3.00 %       ±5.56%  ±7.39%  ±9.62%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='Gryphon'                                                                            2.58 %       ±9.78% ±13.02% ±16.94%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='Gryphon'                                                                            5.73 %       ±7.40%  ±9.85% ±12.82%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='neighbouring pool'                                                                  0.20 %       ±4.25%  ±5.67%  ±7.41%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='neighbouring pool'                                                                 -0.96 %       ±3.58%  ±4.76%  ±6.20%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='Ou est ma chatte?'                                                                 -0.15 %       ±7.91% ±10.53% ±13.72%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='Ou est ma chatte?'                                                                 -1.53 %       ±7.36%  ±9.80% ±12.77%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='Panther'                                                                            2.73 %       ±6.89%  ±9.17% ±11.94%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='Panther'                                                                           -7.07 %       ±8.03% ±10.68% ±13.91%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='Soo--oop'                                                                          -4.09 %      ±10.23% ±13.62% ±17.73%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='Soo--oop'                                                                           6.29 %       ±8.01% ±10.66% ±13.88%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='SQ'                                                                                -4.69 %       ±8.96% ±11.92% ±15.52%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='SQ'                                                                         **     13.53 %      ±10.01% ±13.36% ±17.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf16le' search='venture to go near the house till she had brought herself down to'                  2.16 %       ±6.80%  ±9.05% ±11.78%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF16LE' search='venture to go near the house till she had brought herself down to'                  0.72 %       ±6.68%  ±8.88% ±11.56%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='--l'                                                                                  -1.90 %       ±7.28%  ±9.69% ±12.62%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='--l'                                                                            *      9.86 %       ±8.83% ±11.77% ±15.35%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='@'                                                                                     5.29 %      ±14.76% ±19.65% ±25.58%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='@'                                                                            ***     20.70 %      ±11.27% ±15.01% ±19.58%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='</i> to the Caterpillar'                                                              -2.25 %       ±3.97%  ±5.29%  ±6.89%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='</i> to the Caterpillar'                                                               4.03 %       ±5.62%  ±7.49%  ±9.77%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='10x'                                                                                   5.18 %       ±9.84% ±13.15% ±17.22%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='10x'                                                                          ***     22.00 %       ±8.54% ±11.38% ±14.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='aaaaaaaaaaaaaaaaa'                                                                     2.97 %       ±4.46%  ±5.95%  ±7.75%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='aaaaaaaaaaaaaaaaa'                                                                    -3.35 %       ±5.03%  ±6.73%  ±8.81%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='Alice'                                                                                 0.37 %      ±11.39% ±15.15% ±19.72%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='Alice'                                                                        ***     26.06 %      ±12.16% ±16.18% ±21.06%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='among mad people'                                                                      3.17 %       ±5.19%  ±6.91%  ±9.00%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='among mad people'                                                                     -0.58 %       ±4.22%  ±5.62%  ±7.31%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='found it very'                                                                         2.21 %       ±4.42%  ±5.89%  ±7.70%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='found it very'                                                                         0.58 %       ±3.03%  ±4.03%  ±5.25%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='Gryphon'                                                                              10.05 %      ±10.30% ±13.71% ±17.86%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='Gryphon'                                                                               6.69 %       ±9.05% ±12.04% ±15.67%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='neighbouring pool'                                                                     1.56 %       ±3.93%  ±5.24%  ±6.84%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='neighbouring pool'                                                                     3.57 %       ±4.19%  ±5.58%  ±7.28%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='Ou est ma chatte?'                                                                     1.86 %       ±5.45%  ±7.26%  ±9.45%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='Ou est ma chatte?'                                                                     2.08 %       ±5.62%  ±7.47%  ±9.73%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='Panther'                                                                               4.32 %       ±9.51% ±12.67% ±16.53%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='Panther'                                                                               5.71 %      ±10.84% ±14.42% ±18.77%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='Soo--oop'                                                                              2.00 %       ±4.88%  ±6.50%  ±8.48%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='Soo--oop'                                                                       *      4.63 %       ±4.09%  ±5.47%  ±7.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='SQ'                                                                                    6.08 %       ±8.28% ±11.03% ±14.39%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='SQ'                                                                           ***     18.05 %       ±8.55% ±11.38% ±14.81%
 buffers/buffer-indexof-encoding.js n=1000 encoding='utf8' search='venture to go near the house till she had brought herself down to'                     0.41 %       ±5.88%  ±7.82% ±10.19%
 buffers/buffer-indexof-encoding.js n=1000 encoding='UTF8' search='venture to go near the house till she had brought herself down to'                     3.46 %       ±4.91%  ±6.53%  ±8.50%

BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Does the combination with the length check not yield better results?

And we already have a indexOf benchmark, so I suggest to remove the new one again. It is good to have your numbers for this specific PR but otherwise the new benchmark seems too excessive.

ZYSzys commented Mar 6, 2019
edited
Loading

Copy link
Copy Markdown
Member Author

Does the combination with the length check not yield better results?

It seems that the combination with the length check wasn't so ideal.(like the first benchmark results showed)

And we already have a indexOf benchmark, so I suggest to remove the new one again. It is good to have your numbers for this specific PR but otherwise the new benchmark seems too excessive.

I'll remove the new one and add more encoding options into buffers/buffer-indexof.js benchmark so that it can show measurable impact.👍

ZYSzys commented Mar 7, 2019

Copy link
Copy Markdown
Member Author

Latest benchmark results after @BridgeAR 's suggestion:

Details
$ cat compare-buffer-indexof.csv | Rscript benchmark/compare.R                                                                 
                                                                                                                                                confidence improvement accuracy (*)    (**)   (***)
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='--l'                                                                                   0.35 %       ±9.48% ±12.61% ±16.43%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='--l'                                                                                  -1.52 %       ±7.89% ±10.50% ±13.68%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='@'                                                                                    -1.58 %      ±11.54% ±15.35% ±19.98%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='@'                                                                                     2.57 %       ±8.11% ±10.79% ±14.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='</i> to the Caterpillar'                                                               0.43 %       ±7.25%  ±9.65% ±12.56%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='</i> to the Caterpillar'                                                              -2.05 %       ±6.94%  ±9.24% ±12.03%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='10x'                                                                                   5.07 %       ±8.40% ±11.19% ±14.56%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='10x'                                                                                   6.05 %      ±10.47% ±13.94% ±18.18%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='aaaaaaaaaaaaaaaaa'                                                                     0.70 %       ±4.23%  ±5.63%  ±7.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='aaaaaaaaaaaaaaaaa'                                                                     1.81 %       ±6.38%  ±8.53% ±11.16%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='Alice'                                                                                 4.01 %       ±8.68% ±11.56% ±15.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='Alice'                                                                                -3.12 %      ±11.51% ±15.31% ±19.93%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='among mad people'                                                                      4.09 %       ±7.06%  ±9.41% ±12.30%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='among mad people'                                                                     -1.17 %       ±5.62%  ±7.48%  ±9.74%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='found it very'                                                                        -1.12 %       ±4.16%  ±5.54%  ±7.21%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='found it very'                                                                         1.09 %       ±4.16%  ±5.54%  ±7.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='Gryphon'                                                                               3.67 %       ±8.77% ±11.68% ±15.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='Gryphon'                                                                               0.18 %       ±8.83% ±11.75% ±15.30%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='neighbouring pool'                                                                     1.78 %       ±5.36%  ±7.14%  ±9.32%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='neighbouring pool'                                                                     4.39 %       ±5.86%  ±7.83% ±10.27%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='Ou est ma chatte?'                                                                     3.32 %       ±5.96%  ±7.94% ±10.37%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='Ou est ma chatte?'                                                                     1.24 %       ±7.05%  ±9.39% ±12.22%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='Panther'                                                                               1.25 %       ±9.85% ±13.13% ±17.14%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='Panther'                                                                               6.32 %      ±10.19% ±13.57% ±17.69%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='Soo--oop'                                                                              0.61 %       ±3.62%  ±4.82%  ±6.28%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='Soo--oop'                                                                              1.12 %       ±6.13%  ±8.18% ±10.70%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='SQ'                                                                                    0.98 %       ±8.59% ±11.43% ±14.87%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='SQ'                                                                                   -0.17 %       ±9.35% ±12.44% ±16.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ascii' search='venture to go near the house till she had brought herself down to'                     1.83 %       ±6.86%  ±9.14% ±11.93%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ASCII' search='venture to go near the house till she had brought herself down to'                    -1.19 %       ±5.89%  ±7.84% ±10.21%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='--l'                                                                                  3.58 %       ±9.13% ±12.15% ±15.82%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='--l'                                                                                 -1.30 %       ±7.78% ±10.36% ±13.51%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='@'                                                                                    7.66 %       ±9.99% ±13.31% ±17.37%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='@'                                                                                   -2.33 %      ±10.25% ±13.65% ±17.78%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='</i> to the Caterpillar'                                                             -0.21 %       ±9.44% ±12.56% ±16.35%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='</i> to the Caterpillar'                                                             -4.60 %      ±11.12% ±14.80% ±19.26%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='10x'                                                                                 -2.83 %      ±10.56% ±14.05% ±18.29%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='10x'                                                                                  6.81 %       ±7.60% ±10.11% ±13.15%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='aaaaaaaaaaaaaaaaa'                                                                    1.45 %       ±6.52%  ±8.68% ±11.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='aaaaaaaaaaaaaaaaa'                                                                    0.54 %       ±7.14%  ±9.50% ±12.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='Alice'                                                                                3.93 %      ±10.28% ±13.69% ±17.82%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='Alice'                                                                               -2.15 %       ±8.94% ±11.90% ±15.49%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='among mad people'                                                                    -0.14 %       ±5.18%  ±6.89%  ±8.96%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='among mad people'                                                                    -0.89 %       ±5.31%  ±7.06%  ±9.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='found it very'                                                                        3.95 %      ±11.30% ±15.04% ±19.59%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='found it very'                                                                        1.71 %       ±9.43% ±12.55% ±16.34%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='Gryphon'                                                                              1.92 %      ±10.17% ±13.53% ±17.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='Gryphon'                                                                              2.51 %      ±10.58% ±14.08% ±18.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='neighbouring pool'                                                                   10.58 %      ±12.43% ±16.56% ±21.60%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='neighbouring pool'                                                                    5.16 %       ±9.84% ±13.10% ±17.08%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='Ou est ma chatte?'                                                                    1.96 %       ±3.97%  ±5.29%  ±6.89%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='Ou est ma chatte?'                                                                    0.53 %       ±4.92%  ±6.54%  ±8.52%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='Panther'                                                                       *     12.95 %      ±10.95% ±14.58% ±19.02%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='Panther'                                                                              0.17 %       ±8.90% ±11.84% ±15.41%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='Soo--oop'                                                                             7.89 %       ±9.31% ±12.41% ±16.18%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='Soo--oop'                                                                             6.06 %       ±7.99% ±10.64% ±13.87%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='SQ'                                                                                   8.17 %       ±8.82% ±11.77% ±15.39%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='SQ'                                                                                  -9.07 %      ±10.82% ±14.45% ±18.91%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='base64' search='venture to go near the house till she had brought herself down to'                   -0.87 %       ±9.51% ±12.66% ±16.48%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BASE64' search='venture to go near the house till she had brought herself down to'                   -2.47 %      ±11.79% ±15.68% ±20.41%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='--l'                                                                                 -3.40 %       ±8.22% ±10.94% ±14.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='--l'                                                                                  0.61 %       ±7.68% ±10.23% ±13.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='@'                                                                                    2.68 %       ±7.57% ±10.08% ±13.14%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='@'                                                                                   -0.24 %       ±8.09% ±10.78% ±14.04%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='</i> to the Caterpillar'                                                             -2.34 %       ±7.02%  ±9.33% ±12.15%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='</i> to the Caterpillar'                                                              1.07 %       ±6.64%  ±8.87% ±11.60%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='10x'                                                                                 -4.44 %       ±7.81% ±10.42% ±13.62%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='10x'                                                                                  3.11 %       ±8.84% ±11.76% ±15.31%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='aaaaaaaaaaaaaaaaa'                                                                    1.47 %       ±5.71%  ±7.64% ±10.02%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='aaaaaaaaaaaaaaaaa'                                                                    1.60 %       ±5.74%  ±7.63%  ±9.94%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='Alice'                                                                               -1.17 %       ±9.38% ±12.48% ±16.25%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='Alice'                                                                                2.55 %       ±9.86% ±13.14% ±17.13%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='among mad people'                                                                     0.36 %       ±4.92%  ±6.55%  ±8.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='among mad people'                                                                    -0.15 %       ±5.13%  ±6.83%  ±8.89%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='found it very'                                                                        2.20 %       ±5.01%  ±6.68%  ±8.72%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='found it very'                                                                        1.20 %       ±4.78%  ±6.37%  ±8.32%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='Gryphon'                                                                              1.59 %       ±8.68% ±11.55% ±15.03%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='Gryphon'                                                                             -0.69 %       ±9.31% ±12.39% ±16.13%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='neighbouring pool'                                                                    2.51 %       ±4.67%  ±6.22%  ±8.11%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='neighbouring pool'                                                                   -0.47 %       ±4.71%  ±6.27%  ±8.16%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='Ou est ma chatte?'                                                                    2.28 %       ±6.30%  ±8.38% ±10.91%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='Ou est ma chatte?'                                                                   -1.43 %       ±5.50%  ±7.32%  ±9.52%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='Panther'                                                                              6.71 %       ±9.50% ±12.66% ±16.51%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='Panther'                                                                              5.05 %      ±10.73% ±14.30% ±18.67%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='Soo--oop'                                                                             2.22 %       ±3.73%  ±4.96%  ±6.47%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='Soo--oop'                                                                            -0.00 %       ±3.96%  ±5.26%  ±6.85%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='SQ'                                                                                   4.50 %       ±9.03% ±12.02% ±15.65%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='SQ'                                                                                  -5.19 %       ±7.97% ±10.64% ±13.92%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='binary' search='venture to go near the house till she had brought herself down to'                   -3.51 %       ±6.27%  ±8.35% ±10.91%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='BINARY' search='venture to go near the house till she had brought herself down to'                    1.41 %       ±7.69% ±10.24% ±13.34%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='--l'                                                                                     1.07 %      ±10.68% ±14.21% ±18.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='--l'                                                                                     2.85 %       ±7.75% ±10.32% ±13.44%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='@'                                                                                      -4.89 %      ±10.95% ±14.57% ±18.97%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='@'                                                                                       0.60 %       ±9.96% ±13.25% ±17.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='</i> to the Caterpillar'                                                                 2.00 %       ±9.48% ±12.61% ±16.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='</i> to the Caterpillar'                                                                -2.70 %       ±9.72% ±12.94% ±16.86%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='10x'                                                                                     5.16 %       ±8.80% ±11.71% ±15.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='10x'                                                                                     8.68 %      ±10.57% ±14.07% ±18.32%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='aaaaaaaaaaaaaaaaa'                                                                      -0.40 %      ±10.25% ±13.64% ±17.75%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='aaaaaaaaaaaaaaaaa'                                                                      -0.01 %      ±12.29% ±16.36% ±21.31%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='Alice'                                                                                  -1.84 %       ±7.36%  ±9.79% ±12.74%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='Alice'                                                                                  -4.83 %      ±10.34% ±13.76% ±17.93%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='among mad people'                                                                       -0.89 %      ±10.02% ±13.33% ±17.35%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='among mad people'                                                                       -2.25 %       ±9.05% ±12.05% ±15.68%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='found it very'                                                                           9.81 %      ±10.25% ±13.67% ±17.84%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='found it very'                                                                           2.57 %       ±8.71% ±11.62% ±15.18%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='Gryphon'                                                                                 7.70 %      ±10.99% ±14.65% ±19.11%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='Gryphon'                                                                                 3.95 %      ±11.21% ±14.92% ±19.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='neighbouring pool'                                                                      -2.99 %      ±10.28% ±13.68% ±17.81%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='neighbouring pool'                                                                       3.47 %      ±10.26% ±13.67% ±17.85%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='Ou est ma chatte?'                                                                       5.53 %      ±12.98% ±17.29% ±22.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='Ou est ma chatte?'                                                                       4.25 %      ±12.24% ±16.29% ±21.21%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='Panther'                                                                                 7.46 %      ±12.42% ±16.54% ±21.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='Panther'                                                                                 8.41 %      ±11.17% ±14.90% ±19.47%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='Soo--oop'                                                                                5.77 %       ±9.87% ±13.16% ±17.17%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='Soo--oop'                                                                                4.97 %       ±8.41% ±11.25% ±14.75%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='SQ'                                                                                     -1.19 %       ±9.62% ±12.80% ±16.66%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='SQ'                                                                                      8.71 %      ±10.97% ±14.61% ±19.04%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='hex' search='venture to go near the house till she had brought herself down to'                      -6.28 %       ±8.26% ±11.02% ±14.38%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='HEX' search='venture to go near the house till she had brought herself down to'                       0.03 %      ±11.11% ±14.78% ±19.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='--l'                                                                                  1.21 %       ±6.10%  ±8.12% ±10.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='--l'                                                                                 -1.70 %       ±7.47%  ±9.94% ±12.93%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='@'                                                                                    3.57 %       ±9.72% ±12.93% ±16.83%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='@'                                                                                    0.88 %       ±7.85% ±10.45% ±13.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='</i> to the Caterpillar'                                                             -3.03 %       ±5.69%  ±7.57%  ±9.86%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='</i> to the Caterpillar'                                                             -0.73 %       ±6.31%  ±8.43% ±11.04%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='10x'                                                                                  2.29 %       ±7.87% ±10.48% ±13.64%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='10x'                                                                                 -1.29 %       ±9.35% ±12.44% ±16.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='aaaaaaaaaaaaaaaaa'                                                                    0.34 %       ±5.41%  ±7.22%  ±9.41%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='aaaaaaaaaaaaaaaaa'                                                                    2.87 %       ±7.12%  ±9.52% ±12.46%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='Alice'                                                                               -7.30 %      ±10.35% ±13.79% ±17.97%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='Alice'                                                                               -5.31 %      ±10.03% ±13.37% ±17.45%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='among mad people'                                                                    -0.94 %       ±7.06%  ±9.39% ±12.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='among mad people'                                                                     4.32 %       ±7.00%  ±9.34% ±12.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='found it very'                                                                        2.71 %       ±5.97%  ±7.97% ±10.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='found it very'                                                                        2.60 %       ±4.76%  ±6.36%  ±8.31%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='Gryphon'                                                                              4.65 %       ±9.93% ±13.25% ±17.32%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='Gryphon'                                                                             -1.92 %      ±11.30% ±15.04% ±19.58%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='neighbouring pool'                                                                    2.68 %       ±5.46%  ±7.30%  ±9.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='neighbouring pool'                                                                    1.92 %       ±5.01%  ±6.68%  ±8.72%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='Ou est ma chatte?'                                                                    1.15 %       ±5.98%  ±7.96% ±10.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='Ou est ma chatte?'                                                                    5.58 %       ±6.25%  ±8.33% ±10.86%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='Panther'                                                                              4.35 %       ±9.51% ±12.66% ±16.48%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='Panther'                                                                              3.43 %       ±9.23% ±12.29% ±16.00%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='Soo--oop'                                                                             1.64 %       ±4.35%  ±5.79%  ±7.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='Soo--oop'                                                                             1.60 %       ±3.90%  ±5.19%  ±6.75%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='SQ'                                                                                   5.68 %       ±8.23% ±10.94% ±14.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='SQ'                                                                                  -2.82 %       ±9.62% ±12.81% ±16.71%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='latin1' search='venture to go near the house till she had brought herself down to'                   -2.50 %       ±8.01% ±10.66% ±13.87%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='LATIN1' search='venture to go near the house till she had brought herself down to'                   -2.92 %       ±7.25%  ±9.65% ±12.56%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='--l'                                                                                   0.78 %       ±9.79% ±13.04% ±17.00%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='--l'                                                                                   0.57 %       ±8.52% ±11.34% ±14.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='@'                                                                                     3.20 %       ±9.21% ±12.25% ±15.94%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='@'                                                                                    -2.72 %       ±9.58% ±12.77% ±16.65%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='</i> to the Caterpillar'                                                              -0.52 %       ±8.56% ±11.39% ±14.83%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='</i> to the Caterpillar'                                                               2.68 %       ±7.31%  ±9.73% ±12.66%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='10x'                                                                                   2.70 %       ±7.75% ±10.31% ±13.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='10x'                                                                                   1.26 %       ±8.92% ±11.87% ±15.45%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='aaaaaaaaaaaaaaaaa'                                                                     3.20 %       ±5.25%  ±7.00%  ±9.15%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='aaaaaaaaaaaaaaaaa'                                                                    -0.45 %       ±3.95%  ±5.26%  ±6.84%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='Alice'                                                                                 1.24 %       ±7.33%  ±9.75% ±12.69%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='Alice'                                                                                -0.24 %       ±5.71%  ±7.59%  ±9.88%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='among mad people'                                                                      2.33 %       ±5.42%  ±7.24%  ±9.47%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='among mad people'                                                               *      6.57 %       ±6.13%  ±8.20% ±10.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='found it very'                                                                         2.71 %       ±5.35%  ±7.13%  ±9.29%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='found it very'                                                                         1.38 %       ±6.16%  ±8.21% ±10.71%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='Gryphon'                                                                               4.01 %       ±8.15% ±10.84% ±14.11%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='Gryphon'                                                                               1.61 %       ±9.55% ±12.72% ±16.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='neighbouring pool'                                                                     2.19 %       ±5.21%  ±6.94%  ±9.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='neighbouring pool'                                                                    -1.79 %       ±6.05%  ±8.06% ±10.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='Ou est ma chatte?'                                                                     2.72 %       ±8.25% ±10.99% ±14.31%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='Ou est ma chatte?'                                                                     6.04 %       ±9.79% ±13.02% ±16.95%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='Panther'                                                                               1.84 %       ±9.23% ±12.29% ±15.99%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='Panther'                                                                               6.74 %       ±7.79% ±10.38% ±13.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='Soo--oop'                                                                              1.22 %       ±8.10% ±10.78% ±14.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='Soo--oop'                                                                             -1.58 %       ±7.99% ±10.63% ±13.83%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='SQ'                                                                                    5.07 %      ±11.76% ±15.69% ±20.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='SQ'                                                                                    3.31 %       ±7.88% ±10.49% ±13.66%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs-2' search='venture to go near the house till she had brought herself down to'                    -2.77 %       ±6.96%  ±9.26% ±12.07%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS-2' search='venture to go near the house till she had brought herself down to'                     3.03 %       ±9.15% ±12.18% ±15.85%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='--l'                                                                                   -0.58 %       ±7.24%  ±9.64% ±12.58%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='--l'                                                                             *     10.29 %       ±8.57% ±11.42% ±14.88%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='@'                                                                                     -2.30 %      ±13.09% ±17.42% ±22.68%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='@'                                                                                     -1.34 %       ±8.81% ±11.73% ±15.27%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='</i> to the Caterpillar'                                                                0.14 %       ±8.13% ±10.82% ±14.08%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='</i> to the Caterpillar'                                                               -1.35 %       ±6.79%  ±9.04% ±11.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='10x'                                                                                   -1.74 %       ±9.36% ±12.46% ±16.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='10x'                                                                                   -2.12 %       ±9.31% ±12.40% ±16.15%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='aaaaaaaaaaaaaaaaa'                                                                      4.77 %       ±5.40%  ±7.20%  ±9.38%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='aaaaaaaaaaaaaaaaa'                                                                      4.41 %       ±5.59%  ±7.47%  ±9.78%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='Alice'                                                                                  3.32 %       ±6.70%  ±8.92% ±11.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='Alice'                                                                                 -4.20 %       ±7.72% ±10.28% ±13.39%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='among mad people'                                                                       3.13 %       ±5.89%  ±7.84% ±10.20%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='among mad people'                                                                       1.34 %       ±4.20%  ±5.59%  ±7.28%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='found it very'                                                                          1.06 %       ±6.05%  ±8.05% ±10.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='found it very'                                                                          5.86 %       ±7.35%  ±9.78% ±12.73%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='Gryphon'                                                                                9.08 %      ±10.81% ±14.41% ±18.80%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='Gryphon'                                                                                3.16 %       ±8.90% ±11.85% ±15.43%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='neighbouring pool'                                                                      3.13 %       ±3.68%  ±4.90%  ±6.39%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='neighbouring pool'                                                                      2.62 %       ±4.46%  ±5.95%  ±7.78%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='Ou est ma chatte?'                                                                      5.82 %       ±9.40% ±12.52% ±16.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='Ou est ma chatte?'                                                                     -1.71 %      ±10.39% ±13.83% ±18.01%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='Panther'                                                                                4.96 %       ±9.12% ±12.14% ±15.80%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='Panther'                                                                                4.59 %      ±10.24% ±13.63% ±17.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='Soo--oop'                                                                               3.67 %       ±6.31%  ±8.40% ±10.94%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='Soo--oop'                                                                               2.87 %       ±8.22% ±10.94% ±14.25%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='SQ'                                                                                    -5.99 %       ±8.65% ±11.53% ±15.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='SQ'                                                                                     6.83 %       ±9.07% ±12.07% ±15.73%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='ucs2' search='venture to go near the house till she had brought herself down to'              **     -8.21 %       ±5.53%  ±7.36%  ±9.59%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UCS2' search='venture to go near the house till she had brought herself down to'                     -1.69 %       ±9.25% ±12.32% ±16.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='--l'                                                                              -2.06 %       ±7.58% ±10.08% ±13.12%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='@'                                                                                -4.33 %       ±9.20% ±12.28% ±16.06%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='</i> to the Caterpillar'                                                           3.22 %       ±5.85%  ±7.83% ±10.27%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='10x'                                                                               4.22 %       ±8.21% ±10.92% ±14.21%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='aaaaaaaaaaaaaaaaa'                                                                -1.04 %       ±8.15% ±10.86% ±14.17%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='Alice'                                                                            -0.75 %       ±9.08% ±12.08% ±15.72%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='among mad people'                                                                  2.35 %       ±5.16%  ±6.88%  ±8.96%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='found it very'                                                                     1.92 %       ±4.44%  ±5.92%  ±7.72%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='Gryphon'                                                                           5.31 %      ±10.72% ±14.26% ±18.56%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='neighbouring pool'                                                                 0.85 %       ±6.20%  ±8.29% ±10.87%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='Ou est ma chatte?'                                                                 1.86 %       ±7.96% ±10.59% ±13.79%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='Panther'                                                                           5.89 %       ±8.99% ±11.98% ±15.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='Soo--oop'                                                                          0.33 %       ±3.67%  ±4.89%  ±6.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='SQ'                                                                                3.10 %       ±8.29% ±11.03% ±14.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='undefined' search='venture to go near the house till she had brought herself down to'                 5.09 %       ±8.42% ±11.22% ±14.65%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='--l'                                                                               -5.28 %       ±7.23%  ±9.63% ±12.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='--l'                                                                                0.35 %       ±7.35%  ±9.78% ±12.73%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='@'                                                                                  5.92 %      ±11.24% ±14.96% ±19.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='@'                                                                                 -5.04 %       ±6.81%  ±9.07% ±11.83%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='</i> to the Caterpillar'                                                           -0.37 %       ±7.32%  ±9.73% ±12.67%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='</i> to the Caterpillar'                                                           -3.03 %       ±6.78%  ±9.02% ±11.74%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='10x'                                                                                3.03 %       ±9.15% ±12.20% ±15.91%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='10x'                                                                                0.55 %      ±10.73% ±14.27% ±18.59%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='aaaaaaaaaaaaaaaaa'                                                                  2.48 %       ±5.06%  ±6.73%  ±8.77%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='aaaaaaaaaaaaaaaaa'                                                                  2.10 %       ±6.24%  ±8.33% ±10.89%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='Alice'                                                                             -1.35 %       ±6.64%  ±8.84% ±11.53%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='Alice'                                                                             -1.45 %       ±7.68% ±10.25% ±13.40%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='among mad people'                                                                   0.92 %       ±6.41%  ±8.54% ±11.14%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='among mad people'                                                                   2.68 %       ±4.65%  ±6.21%  ±8.13%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='found it very'                                                                      3.48 %       ±6.21%  ±8.27% ±10.77%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='found it very'                                                                      6.84 %       ±7.46%  ±9.96% ±13.04%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='Gryphon'                                                                            6.17 %       ±9.97% ±13.30% ±17.37%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='Gryphon'                                                                           -0.93 %       ±8.48% ±11.28% ±14.70%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='neighbouring pool'                                                                  1.09 %       ±4.70%  ±6.26%  ±8.17%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='neighbouring pool'                                                                 -0.05 %       ±6.03%  ±8.04% ±10.49%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='Ou est ma chatte?'                                                                 -3.54 %       ±8.19% ±10.90% ±14.18%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='Ou est ma chatte?'                                                                  4.71 %       ±8.22% ±10.94% ±14.25%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='Panther'                                                                            1.15 %       ±8.64% ±11.50% ±14.99%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='Panther'                                                                            2.76 %       ±7.45%  ±9.92% ±12.92%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='Soo--oop'                                                                          -1.05 %       ±7.37%  ±9.81% ±12.77%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='Soo--oop'                                                                           1.11 %       ±9.36% ±12.46% ±16.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='SQ'                                                                                 3.25 %       ±7.74% ±10.31% ±13.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='SQ'                                                                                 3.72 %       ±7.71% ±10.26% ±13.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-16le' search='venture to go near the house till she had brought herself down to'                 -0.68 %       ±6.32%  ±8.42% ±10.96%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-16LE' search='venture to go near the house till she had brought herself down to'                 -0.95 %       ±7.91% ±10.54% ±13.73%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='--l'                                                                                  -1.55 %       ±7.31%  ±9.72% ±12.66%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='--l'                                                                                   0.53 %       ±7.99% ±10.63% ±13.84%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='@'                                                                                    -0.00 %       ±7.11%  ±9.47% ±12.34%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='@'                                                                                    -0.74 %       ±9.09% ±12.11% ±15.78%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='</i> to the Caterpillar'                                                              -2.36 %       ±6.82%  ±9.07% ±11.80%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='</i> to the Caterpillar'                                                              -1.91 %       ±6.06%  ±8.07% ±10.50%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='10x'                                                                                  -5.68 %       ±8.35% ±11.11% ±14.47%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='10x'                                                                                  -1.96 %       ±7.26%  ±9.66% ±12.58%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='aaaaaaaaaaaaaaaaa'                                                                     1.96 %       ±5.14%  ±6.88%  ±9.03%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='aaaaaaaaaaaaaaaaa'                                                                    -3.17 %       ±4.82%  ±6.44%  ±8.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='Alice'                                                                                 4.77 %       ±9.84% ±13.10% ±17.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='Alice'                                                                                -6.18 %      ±10.04% ±13.38% ±17.43%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='among mad people'                                                                      4.92 %       ±7.68% ±10.23% ±13.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='among mad people'                                                                      0.90 %       ±6.54%  ±8.70% ±11.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='found it very'                                                                         3.60 %       ±4.94%  ±6.60%  ±8.64%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='found it very'                                                                  *      5.13 %       ±4.45%  ±5.94%  ±7.78%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='Gryphon'                                                                        *     13.44 %      ±11.17% ±14.89% ±19.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='Gryphon'                                                                               3.94 %       ±9.68% ±12.88% ±16.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='neighbouring pool'                                                                     1.11 %       ±4.09%  ±5.45%  ±7.10%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='neighbouring pool'                                                                     1.53 %       ±5.28%  ±7.06%  ±9.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='Ou est ma chatte?'                                                                     1.78 %       ±5.35%  ±7.13%  ±9.29%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='Ou est ma chatte?'                                                                     4.62 %       ±6.59%  ±8.76% ±11.41%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='Panther'                                                                               1.95 %       ±7.75% ±10.31% ±13.43%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='Panther'                                                                              -1.95 %       ±9.70% ±12.91% ±16.81%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='Soo--oop'                                                                              0.79 %       ±5.33%  ±7.09%  ±9.24%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='Soo--oop'                                                                             -2.46 %       ±6.07%  ±8.09% ±10.55%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='SQ'                                                                                    0.26 %       ±8.87% ±11.80% ±15.36%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='SQ'                                                                                   -2.30 %       ±8.30% ±11.05% ±14.39%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf-8' search='venture to go near the house till she had brought herself down to'                    -1.74 %       ±6.89%  ±9.19% ±12.00%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF-8' search='venture to go near the house till she had brought herself down to'                     0.21 %       ±7.28%  ±9.69% ±12.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='--l'                                                                                 1.34 %       ±7.35%  ±9.78% ±12.73%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='--l'                                                                                 0.42 %       ±8.03% ±10.70% ±13.94%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='@'                                                                                  -2.97 %       ±9.99% ±13.30% ±17.30%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='@'                                                                                   1.47 %      ±10.90% ±14.51% ±18.89%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='</i> to the Caterpillar'                                                            -3.90 %       ±7.40%  ±9.85% ±12.83%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='</i> to the Caterpillar'                                                            -2.21 %       ±8.23% ±10.95% ±14.25%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='10x'                                                                                -1.52 %      ±10.67% ±14.22% ±18.53%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='10x'                                                                                -4.32 %       ±9.12% ±12.14% ±15.81%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='aaaaaaaaaaaaaaaaa'                                                                   1.61 %       ±5.25%  ±6.99%  ±9.10%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='aaaaaaaaaaaaaaaaa'                                                                  -0.52 %       ±7.22%  ±9.61% ±12.51%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='Alice'                                                                              -0.13 %       ±7.01%  ±9.33% ±12.15%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='Alice'                                                                               0.52 %       ±8.97% ±11.94% ±15.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='among mad people'                                                                    2.22 %       ±5.30%  ±7.07%  ±9.23%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='among mad people'                                                                    1.35 %       ±7.17%  ±9.55% ±12.44%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='found it very'                                                                       0.64 %       ±4.97%  ±6.62%  ±8.64%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='found it very'                                                                       5.02 %       ±5.54%  ±7.37%  ±9.62%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='Gryphon'                                                                             5.57 %       ±9.91% ±13.19% ±17.17%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='Gryphon'                                                                             6.73 %       ±9.73% ±12.99% ±17.00%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='neighbouring pool'                                                                   4.67 %       ±6.77%  ±9.05% ±11.86%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='neighbouring pool'                                                                   2.78 %       ±7.17%  ±9.54% ±12.44%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='Ou est ma chatte?'                                                                   8.38 %       ±9.76% ±12.99% ±16.91%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='Ou est ma chatte?'                                                                   5.92 %      ±10.14% ±13.49% ±17.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='Panther'                                                                             2.36 %       ±7.68% ±10.23% ±13.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='Panther'                                                                             2.64 %       ±9.01% ±11.99% ±15.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='Soo--oop'                                                                           -3.49 %       ±9.22% ±12.29% ±16.03%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='Soo--oop'                                                                           -4.46 %       ±7.10%  ±9.45% ±12.30%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='SQ'                                                                                 -2.20 %       ±7.83% ±10.42% ±13.56%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='SQ'                                                                                  5.47 %       ±9.10% ±12.11% ±15.76%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf16le' search='venture to go near the house till she had brought herself down to'                  -1.77 %       ±8.60% ±11.46% ±14.93%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF16LE' search='venture to go near the house till she had brought herself down to'                   1.74 %       ±8.21% ±10.93% ±14.22%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='--l'                                                                                   -0.24 %       ±7.57% ±10.08% ±13.12%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='--l'                                                                                   -2.18 %       ±8.53% ±11.37% ±14.84%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='@'                                                                                      8.43 %      ±11.45% ±15.25% ±19.89%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='@'                                                                                     -0.97 %      ±10.12% ±13.47% ±17.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='</i> to the Caterpillar'                                                               -1.74 %       ±8.28% ±11.01% ±14.33%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='</i> to the Caterpillar'                                                                0.95 %       ±6.03%  ±8.03% ±10.45%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='10x'                                                                                   -1.57 %      ±11.58% ±15.41% ±20.05%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='10x'                                                                                   -0.25 %       ±7.04%  ±9.38% ±12.21%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='aaaaaaaaaaaaaaaaa'                                                                     -1.41 %       ±3.85%  ±5.12%  ±6.68%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='aaaaaaaaaaaaaaaaa'                                                                      1.18 %       ±5.28%  ±7.04%  ±9.19%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='Alice'                                                                                  1.88 %       ±8.85% ±11.78% ±15.34%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='Alice'                                                                                  5.09 %       ±8.98% ±11.98% ±15.63%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='among mad people'                                                                       2.33 %       ±6.32%  ±8.41% ±10.95%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='among mad people'                                                                      -2.23 %       ±5.95%  ±7.92% ±10.31%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='found it very'                                                                          6.19 %       ±6.63%  ±8.86% ±11.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='found it very'                                                                          0.59 %       ±4.60%  ±6.13%  ±7.99%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='Gryphon'                                                                               -1.51 %       ±8.66% ±11.52% ±14.99%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='Gryphon'                                                                                9.38 %      ±10.05% ±13.38% ±17.45%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='neighbouring pool'                                                                      0.27 %       ±5.34%  ±7.11%  ±9.26%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='neighbouring pool'                                                                      3.38 %       ±3.70%  ±4.93%  ±6.42%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='Ou est ma chatte?'                                                                     -1.67 %       ±6.84%  ±9.11% ±11.85%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='Ou est ma chatte?'                                                                      4.25 %       ±6.13%  ±8.16% ±10.61%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='Panther'                                                                                1.82 %       ±8.56% ±11.39% ±14.84%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='Panther'                                                                               -3.21 %       ±9.04% ±12.03% ±15.65%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='Soo--oop'                                                                               1.33 %       ±5.54%  ±7.38%  ±9.63%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='Soo--oop'                                                                               2.32 %       ±5.06%  ±6.74%  ±8.80%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='SQ'                                                                                     0.89 %       ±8.39% ±11.17% ±14.54%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='SQ'                                                                                    -1.43 %       ±8.40% ±11.18% ±14.57%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='utf8' search='venture to go near the house till she had brought herself down to'                     -1.27 %       ±6.92%  ±9.20% ±11.98%
 buffers/buffer-indexof.js n=1000 type='buffer' encoding='UTF8' search='venture to go near the house till she had brought herself down to'                      0.75 %       ±7.57% ±10.09% ±13.18%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='--l'                                                                                   1.99 %       ±7.09%  ±9.43% ±12.29%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='--l'                                                                                   2.01 %       ±8.36% ±11.13% ±14.50%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='@'                                                                                    -3.57 %      ±10.10% ±13.44% ±17.49%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='@'                                                                                    -4.89 %       ±9.77% ±13.01% ±16.93%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='</i> to the Caterpillar'                                                               1.69 %       ±7.59% ±10.10% ±13.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='</i> to the Caterpillar'                                                              -2.11 %       ±5.58%  ±7.43%  ±9.67%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='10x'                                                                                  -1.78 %       ±7.29%  ±9.70% ±12.62%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='10x'                                                                                  -2.23 %       ±8.65% ±11.51% ±14.98%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='aaaaaaaaaaaaaaaaa'                                                                     0.42 %       ±6.74%  ±8.97% ±11.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='aaaaaaaaaaaaaaaaa'                                                                     1.54 %       ±8.08% ±10.75% ±14.01%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='Alice'                                                                                -7.88 %       ±9.79% ±13.05% ±17.03%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='Alice'                                                                                -7.47 %       ±8.75% ±11.65% ±15.20%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='among mad people'                                                                     -0.90 %       ±5.53%  ±7.37%  ±9.60%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='among mad people'                                                                      2.50 %       ±4.55%  ±6.05%  ±7.87%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='found it very'                                                                         3.19 %       ±5.89%  ±7.85% ±10.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='found it very'                                                                         3.00 %       ±4.41%  ±5.87%  ±7.66%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='Gryphon'                                                                               0.78 %      ±10.70% ±14.24% ±18.54%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='Gryphon'                                                                              -1.27 %       ±9.95% ±13.25% ±17.24%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='neighbouring pool'                                                                     2.62 %       ±4.82%  ±6.42%  ±8.36%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='neighbouring pool'                                                                     1.21 %       ±5.27%  ±7.02%  ±9.17%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='Ou est ma chatte?'                                                                     2.87 %       ±6.18%  ±8.24% ±10.76%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='Ou est ma chatte?'                                                                    -2.50 %       ±6.62%  ±8.81% ±11.47%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='Panther'                                                                               5.20 %       ±9.30% ±12.39% ±16.14%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='Panther'                                                                               5.55 %      ±10.26% ±13.66% ±17.80%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='Soo--oop'                                                                              0.51 %       ±5.01%  ±6.67%  ±8.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='Soo--oop'                                                                             -1.58 %       ±4.89%  ±6.51%  ±8.48%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='SQ'                                                                                   -4.22 %       ±9.09% ±12.09% ±15.75%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='SQ'                                                                                   -1.19 %       ±8.73% ±11.62% ±15.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ascii' search='venture to go near the house till she had brought herself down to'                     2.05 %       ±8.63% ±11.51% ±15.01%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ASCII' search='venture to go near the house till she had brought herself down to'                     1.75 %       ±7.70% ±10.25% ±13.34%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='--l'                                                                                 -2.87 %       ±8.88% ±11.82% ±15.39%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='--l'                                                                                  7.83 %       ±8.42% ±11.21% ±14.61%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='@'                                                                                    0.36 %      ±10.31% ±13.72% ±17.86%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='@'                                                                                    4.44 %       ±8.64% ±11.52% ±15.03%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='</i> to the Caterpillar'                                                              0.39 %       ±9.87% ±13.13% ±17.09%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='</i> to the Caterpillar'                                                             -4.64 %       ±9.75% ±12.97% ±16.88%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='10x'                                                                                  0.66 %       ±8.88% ±11.83% ±15.42%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='10x'                                                                                  0.22 %       ±8.30% ±11.04% ±14.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='aaaaaaaaaaaaaaaaa'                                                                    1.36 %       ±9.04% ±12.03% ±15.66%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='aaaaaaaaaaaaaaaaa'                                                                   -1.98 %       ±7.66% ±10.22% ±13.35%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='Alice'                                                                                9.70 %      ±10.01% ±13.33% ±17.39%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='Alice'                                                                               -2.55 %       ±8.51% ±11.32% ±14.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='among mad people'                                                                     1.70 %       ±5.76%  ±7.69% ±10.04%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='among mad people'                                                                     4.86 %       ±5.58%  ±7.45%  ±9.75%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='found it very'                                                                        3.72 %       ±9.75% ±12.98% ±16.92%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='found it very'                                                                        5.88 %       ±7.96% ±10.60% ±13.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='Gryphon'                                                                              0.41 %      ±11.10% ±14.77% ±19.22%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='Gryphon'                                                                              4.65 %       ±7.93% ±10.58% ±13.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='neighbouring pool'                                                                    0.96 %       ±9.51% ±12.66% ±16.48%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='neighbouring pool'                                                                    1.44 %      ±11.47% ±15.27% ±19.88%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='Ou est ma chatte?'                                                                    1.99 %       ±4.36%  ±5.81%  ±7.56%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='Ou est ma chatte?'                                                                    2.42 %       ±4.80%  ±6.40%  ±8.34%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='Panther'                                                                              0.84 %      ±11.95% ±15.91% ±20.73%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='Panther'                                                                              5.31 %       ±8.83% ±11.76% ±15.32%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='Soo--oop'                                                                             2.67 %       ±7.24%  ±9.64% ±12.57%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='Soo--oop'                                                                            -0.40 %       ±8.54% ±11.36% ±14.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='SQ'                                                                                   0.28 %       ±9.37% ±12.48% ±16.25%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='SQ'                                                                                  -3.79 %       ±7.06%  ±9.39% ±12.22%
 buffers/buffer-indexof.js n=1000 type='string' encoding='base64' search='venture to go near the house till she had brought herself down to'                    0.31 %      ±10.53% ±14.01% ±18.24%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BASE64' search='venture to go near the house till she had brought herself down to'                    2.64 %      ±10.20% ±13.59% ±17.73%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='--l'                                                                                 -6.97 %       ±8.50% ±11.33% ±14.79%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='--l'                                                                                  6.75 %       ±8.14% ±10.84% ±14.11%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='@'                                                                                   -3.10 %       ±9.44% ±12.57% ±16.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='@'                                                                            **     14.94 %       ±9.53% ±12.69% ±16.55%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='</i> to the Caterpillar'                                                             -0.55 %       ±5.09%  ±6.79%  ±8.87%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='</i> to the Caterpillar'                                                             -2.02 %       ±6.00%  ±7.99% ±10.41%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='10x'                                                                                 -4.39 %       ±9.31% ±12.39% ±16.13%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='10x'                                                                          **     16.53 %      ±10.08% ±13.41% ±17.46%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='aaaaaaaaaaaaaaaaa'                                                                    0.12 %       ±4.78%  ±6.36%  ±8.27%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='aaaaaaaaaaaaaaaaa'                                                                   -0.28 %       ±7.01%  ±9.33% ±12.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='Alice'                                                                               -1.63 %       ±9.65% ±12.84% ±16.72%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Alice'                                                                        **     13.25 %       ±9.28% ±12.39% ±16.19%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='among mad people'                                                                    -3.27 %       ±5.62%  ±7.48%  ±9.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='among mad people'                                                                     1.96 %       ±5.24%  ±6.99%  ±9.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='found it very'                                                                        4.91 %       ±5.63%  ±7.52%  ±9.85%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='found it very'                                                                        2.38 %       ±5.28%  ±7.05%  ±9.22%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='Gryphon'                                                                             -1.01 %       ±8.02% ±10.68% ±13.89%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Gryphon'                                                                             -0.95 %      ±11.63% ±15.50% ±20.22%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='neighbouring pool'                                                                    6.36 %       ±7.45%  ±9.97% ±13.11%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='neighbouring pool'                                                                    6.33 %       ±7.58% ±10.11% ±13.21%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='Ou est ma chatte?'                                                                    3.43 %       ±6.35%  ±8.46% ±11.05%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Ou est ma chatte?'                                                             *      7.55 %       ±6.25%  ±8.31% ±10.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='Panther'                                                                              1.37 %       ±9.09% ±12.10% ±15.75%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Panther'                                                                              8.20 %       ±9.23% ±12.28% ±15.98%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='Soo--oop'                                                                             0.97 %       ±5.01%  ±6.67%  ±8.70%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Soo--oop'                                                                             0.95 %       ±4.84%  ±6.45%  ±8.44%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='SQ'                                                                                  -6.08 %       ±8.18% ±10.88% ±14.18%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='SQ'                                                                                   4.84 %       ±8.14% ±10.85% ±14.16%
 buffers/buffer-indexof.js n=1000 type='string' encoding='binary' search='venture to go near the house till she had brought herself down to'                   -0.46 %       ±7.30%  ±9.72% ±12.65%
 buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='venture to go near the house till she had brought herself down to'                    0.20 %       ±5.96%  ±7.93% ±10.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='--l'                                                                                     6.00 %       ±9.76% ±13.00% ±16.94%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='--l'                                                                                     2.90 %       ±9.70% ±12.91% ±16.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='@'                                                                                       0.39 %       ±9.13% ±12.14% ±15.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='@'                                                                                       3.91 %       ±8.65% ±11.52% ±14.99%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='</i> to the Caterpillar'                                                                -1.13 %       ±8.05% ±10.71% ±13.95%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='</i> to the Caterpillar'                                                                 3.70 %       ±9.96% ±13.25% ±17.25%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='10x'                                                                                     4.18 %       ±9.57% ±12.73% ±16.57%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='10x'                                                                                     0.69 %       ±8.72% ±11.60% ±15.10%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='aaaaaaaaaaaaaaaaa'                                                                      -1.15 %      ±10.75% ±14.31% ±18.62%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='aaaaaaaaaaaaaaaaa'                                                                      -0.43 %      ±11.60% ±15.43% ±20.08%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='Alice'                                                                                  -2.86 %      ±10.76% ±14.33% ±18.67%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='Alice'                                                                                   3.17 %       ±9.09% ±12.09% ±15.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='among mad people'                                                                        0.94 %       ±8.98% ±11.95% ±15.57%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='among mad people'                                                                        0.35 %       ±9.16% ±12.19% ±15.86%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='found it very'                                                                           1.54 %       ±9.20% ±12.24% ±15.94%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='found it very'                                                                           5.76 %       ±8.03% ±10.70% ±13.93%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='Gryphon'                                                                                -0.96 %       ±8.83% ±11.74% ±15.29%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='Gryphon'                                                                                 5.53 %      ±10.52% ±14.00% ±18.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='neighbouring pool'                                                                       0.64 %       ±7.78% ±10.35% ±13.47%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='neighbouring pool'                                                                       7.16 %       ±8.96% ±11.92% ±15.53%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='Ou est ma chatte?'                                                                       4.74 %       ±9.49% ±12.65% ±16.50%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='Ou est ma chatte?'                                                                       9.61 %      ±13.26% ±17.65% ±22.99%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='Panther'                                                                                 4.07 %      ±11.09% ±14.78% ±19.29%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='Panther'                                                                                 5.91 %       ±9.34% ±12.45% ±16.26%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='Soo--oop'                                                                                8.09 %      ±11.28% ±15.04% ±19.65%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='Soo--oop'                                                                        **     13.24 %       ±9.68% ±12.95% ±16.99%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='SQ'                                                                                      6.27 %      ±10.58% ±14.09% ±18.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='SQ'                                                                                      4.31 %      ±12.46% ±16.59% ±21.59%
 buffers/buffer-indexof.js n=1000 type='string' encoding='hex' search='venture to go near the house till she had brought herself down to'                      -5.06 %       ±8.80% ±11.72% ±15.28%
 buffers/buffer-indexof.js n=1000 type='string' encoding='HEX' search='venture to go near the house till she had brought herself down to'                       0.90 %       ±9.98% ±13.29% ±17.32%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='--l'                                                                                 -3.09 %       ±7.52% ±10.01% ±13.04%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='--l'                                                                                 -1.61 %       ±8.51% ±11.34% ±14.79%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='@'                                                                                   -8.16 %       ±9.63% ±12.84% ±16.75%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='@'                                                                             *     10.08 %       ±8.34% ±11.12% ±14.51%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='</i> to the Caterpillar'                                                              2.39 %       ±6.97%  ±9.31% ±12.19%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='</i> to the Caterpillar'                                                              0.83 %       ±6.77%  ±9.02% ±11.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='10x'                                                                                 -0.94 %       ±6.39%  ±8.50% ±11.07%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='10x'                                                                         ***     18.82 %      ±10.24% ±13.62% ±17.73%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='aaaaaaaaaaaaaaaaa'                                                                   -0.47 %       ±6.98%  ±9.29% ±12.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='aaaaaaaaaaaaaaaaa'                                                                    4.93 %       ±7.57% ±10.11% ±13.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='Alice'                                                                                1.86 %      ±10.89% ±14.50% ±18.89%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Alice'                                                                         *     13.65 %      ±10.87% ±14.47% ±18.84%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='among mad people'                                                                    -2.31 %       ±6.48%  ±8.65% ±11.30%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='among mad people'                                                                    -1.78 %       ±8.12% ±10.84% ±14.19%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='found it very'                                                                        1.93 %       ±4.96%  ±6.60%  ±8.60%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='found it very'                                                                        2.62 %       ±4.21%  ±5.62%  ±7.35%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='Gryphon'                                                                              4.60 %      ±11.03% ±14.68% ±19.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Gryphon'                                                                              8.58 %      ±10.79% ±14.35% ±18.69%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='neighbouring pool'                                                                    2.16 %       ±4.23%  ±5.65%  ±7.40%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='neighbouring pool'                                                                    2.45 %       ±6.15%  ±8.23% ±10.80%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='Ou est ma chatte?'                                                                   -1.20 %       ±6.33%  ±8.42% ±10.95%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Ou est ma chatte?'                                                             *     10.49 %       ±9.05% ±12.09% ±15.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='Panther'                                                                              7.23 %       ±9.41% ±12.53% ±16.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Panther'                                                                             10.41 %      ±12.53% ±16.68% ±21.71%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='Soo--oop'                                                                             0.07 %       ±5.36%  ±7.15%  ±9.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Soo--oop'                                                                             0.62 %       ±3.50%  ±4.66%  ±6.07%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='SQ'                                                                                   0.30 %       ±8.42% ±11.20% ±14.58%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='SQ'                                                                            *      9.90 %       ±7.98% ±10.62% ±13.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='latin1' search='venture to go near the house till she had brought herself down to'                   -3.15 %       ±7.52% ±10.01% ±13.04%
 buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='venture to go near the house till she had brought herself down to'                    2.37 %       ±9.05% ±12.05% ±15.69%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='--l'                                                                                   2.05 %       ±7.23%  ±9.62% ±12.52%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='--l'                                                                                  -0.64 %       ±6.79%  ±9.04% ±11.79%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='@'                                                                                    -2.02 %      ±10.02% ±13.35% ±17.42%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='@'                                                                                     6.50 %      ±10.95% ±14.56% ±18.96%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='</i> to the Caterpillar'                                                              -0.73 %       ±7.66% ±10.21% ±13.34%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='</i> to the Caterpillar'                                                              -0.78 %       ±6.86%  ±9.13% ±11.89%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='10x'                                                                                  -1.35 %       ±9.65% ±12.84% ±16.71%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='10x'                                                                                   6.93 %       ±8.22% ±10.93% ±14.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='aaaaaaaaaaaaaaaaa'                                                                     3.60 %       ±5.46%  ±7.29%  ±9.52%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='aaaaaaaaaaaaaaaaa'                                                                    -0.59 %       ±3.58%  ±4.77%  ±6.22%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='Alice'                                                                                 1.29 %       ±6.90%  ±9.18% ±11.95%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='Alice'                                                                                 1.77 %       ±6.05%  ±8.05% ±10.48%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='among mad people'                                                                      3.47 %       ±5.34%  ±7.12%  ±9.32%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='among mad people'                                                                      2.18 %       ±4.76%  ±6.33%  ±8.25%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='found it very'                                                                         2.16 %       ±6.18%  ±8.22% ±10.71%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='found it very'                                                                         1.84 %       ±5.59%  ±7.44%  ±9.69%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='Gryphon'                                                                              -6.09 %       ±7.84% ±10.44% ±13.59%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='Gryphon'                                                                               7.31 %      ±11.06% ±14.72% ±19.17%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='neighbouring pool'                                                                     1.97 %       ±4.19%  ±5.59%  ±7.29%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='neighbouring pool'                                                                     1.55 %       ±6.50%  ±8.68% ±11.36%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='Ou est ma chatte?'                                                                     2.90 %       ±8.04% ±10.70% ±13.94%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='Ou est ma chatte?'                                                                     7.21 %      ±10.58% ±14.08% ±18.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='Panther'                                                                              -1.52 %       ±9.39% ±12.51% ±16.29%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='Panther'                                                                               5.84 %       ±8.85% ±11.78% ±15.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='Soo--oop'                                                                              0.57 %       ±8.30% ±11.07% ±14.47%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='Soo--oop'                                                                              1.09 %       ±6.87%  ±9.15% ±11.91%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='SQ'                                                                                   -0.87 %       ±9.03% ±12.03% ±15.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='SQ'                                                                                    6.91 %       ±8.22% ±10.94% ±14.25%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs-2' search='venture to go near the house till she had brought herself down to'                    -0.95 %       ±7.67% ±10.21% ±13.30%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS-2' search='venture to go near the house till she had brought herself down to'                     2.91 %       ±6.22%  ±8.28% ±10.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='--l'                                                                                   -2.13 %       ±8.07% ±10.76% ±14.07%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='--l'                                                                                    5.68 %       ±8.53% ±11.36% ±14.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='@'                                                                                      0.32 %       ±9.44% ±12.57% ±16.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='@'                                                                                      4.08 %      ±10.01% ±13.32% ±17.34%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='</i> to the Caterpillar'                                                               -3.07 %       ±7.82% ±10.41% ±13.56%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='</i> to the Caterpillar'                                                               -3.17 %       ±7.55% ±10.06% ±13.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='10x'                                                                                    0.56 %       ±8.87% ±11.81% ±15.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='10x'                                                                                   -0.07 %       ±9.98% ±13.29% ±17.31%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='aaaaaaaaaaaaaaaaa'                                                                      1.78 %       ±4.98%  ±6.65%  ±8.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='aaaaaaaaaaaaaaaaa'                                                                      1.43 %       ±5.02%  ±6.68%  ±8.70%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='Alice'                                                                                 -2.93 %       ±6.14%  ±8.17% ±10.63%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='Alice'                                                                                  4.02 %       ±7.26%  ±9.66% ±12.57%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='among mad people'                                                                       4.02 %       ±5.57%  ±7.42%  ±9.67%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='among mad people'                                                                       4.71 %       ±5.04%  ±6.72%  ±8.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='found it very'                                                                          0.90 %       ±6.01%  ±7.99% ±10.41%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='found it very'                                                                          5.71 %       ±7.71% ±10.30% ±13.49%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='Gryphon'                                                                                1.69 %      ±10.72% ±14.27% ±18.59%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='Gryphon'                                                                                6.07 %      ±11.15% ±14.84% ±19.31%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='neighbouring pool'                                                                      3.18 %       ±5.97%  ±7.96% ±10.40%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='neighbouring pool'                                                                      3.02 %       ±5.56%  ±7.43%  ±9.72%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='Ou est ma chatte?'                                                                     -0.19 %       ±8.73% ±11.62% ±15.13%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='Ou est ma chatte?'                                                                      3.75 %      ±10.82% ±14.40% ±18.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='Panther'                                                                                5.20 %       ±9.81% ±13.06% ±17.00%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='Panther'                                                                                4.22 %       ±9.34% ±12.43% ±16.18%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='Soo--oop'                                                                              -1.22 %       ±7.18%  ±9.56% ±12.44%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='Soo--oop'                                                                               6.26 %      ±11.22% ±14.94% ±19.45%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='SQ'                                                                                     0.17 %       ±8.43% ±11.22% ±14.61%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='SQ'                                                                                     6.33 %       ±7.96% ±10.60% ±13.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='ucs2' search='venture to go near the house till she had brought herself down to'               *     -6.35 %       ±5.24%  ±6.98%  ±9.08%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UCS2' search='venture to go near the house till she had brought herself down to'                     -0.76 %       ±9.67% ±12.87% ±16.77%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='--l'                                                                               2.76 %       ±7.68% ±10.22% ±13.30%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='@'                                                                                 1.75 %       ±8.82% ±11.73% ±15.27%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='</i> to the Caterpillar'                                                          -1.61 %       ±6.81%  ±9.07% ±11.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='10x'                                                                              -0.94 %       ±8.53% ±11.35% ±14.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='aaaaaaaaaaaaaaaaa'                                                                 3.47 %       ±6.87%  ±9.16% ±11.95%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='Alice'                                                                            -4.29 %      ±11.52% ±15.34% ±19.98%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='among mad people'                                                                  0.70 %       ±5.52%  ±7.34%  ±9.56%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='found it very'                                                                     0.75 %       ±5.09%  ±6.78%  ±8.84%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='Gryphon'                                                                           2.40 %       ±9.11% ±12.12% ±15.77%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='neighbouring pool'                                                                 1.67 %       ±6.22%  ±8.28% ±10.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='Ou est ma chatte?'                                                                 3.26 %       ±6.82%  ±9.07% ±11.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='Panther'                                                                           7.28 %      ±10.84% ±14.47% ±18.93%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='Soo--oop'                                                                          1.54 %       ±4.48%  ±5.97%  ±7.78%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='SQ'                                                                                9.06 %      ±10.28% ±13.69% ±17.85%
 buffers/buffer-indexof.js n=1000 type='string' encoding='undefined' search='venture to go near the house till she had brought herself down to'                -0.96 %       ±4.66%  ±6.21%  ±8.08%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='--l'                                                                               -0.51 %      ±10.08% ±13.41% ±17.46%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='--l'                                                                               -0.54 %       ±7.42%  ±9.87% ±12.87%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='@'                                                                                  1.87 %       ±9.95% ±13.24% ±17.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='@'                                                                                  6.68 %       ±8.61% ±11.46% ±14.92%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='</i> to the Caterpillar'                                                           -1.84 %       ±8.14% ±10.84% ±14.11%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='</i> to the Caterpillar'                                                           -2.79 %       ±6.74%  ±9.00% ±11.76%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='10x'                                                                               -5.39 %       ±8.59% ±11.45% ±14.96%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='10x'                                                                                6.80 %       ±9.62% ±12.81% ±16.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='aaaaaaaaaaaaaaaaa'                                                                  2.22 %       ±4.90%  ±6.55%  ±8.56%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='aaaaaaaaaaaaaaaaa'                                                                  5.64 %       ±6.38%  ±8.53% ±11.16%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='Alice'                                                                             -4.23 %       ±6.22%  ±8.29% ±10.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='Alice'                                                                              3.63 %       ±6.89%  ±9.17% ±11.94%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='among mad people'                                                                   1.92 %       ±7.38%  ±9.83% ±12.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='among mad people'                                                                   4.00 %       ±5.05%  ±6.75%  ±8.85%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='found it very'                                                                      1.87 %       ±5.03%  ±6.69%  ±8.71%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='found it very'                                                                      2.97 %       ±4.86%  ±6.47%  ±8.43%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='Gryphon'                                                                           -1.02 %       ±7.58% ±10.08% ±13.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='Gryphon'                                                                            4.76 %       ±9.73% ±12.95% ±16.85%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='neighbouring pool'                                                                  0.25 %       ±6.15%  ±8.18% ±10.65%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='neighbouring pool'                                                                  0.76 %       ±5.22%  ±6.99%  ±9.16%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='Ou est ma chatte?'                                                                  6.09 %      ±10.84% ±14.44% ±18.82%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='Ou est ma chatte?'                                                           *     10.08 %       ±8.62% ±11.48% ±14.96%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='Panther'                                                                            4.17 %       ±7.89% ±10.52% ±13.72%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='Panther'                                                                     *     11.39 %       ±9.83% ±13.09% ±17.06%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='Soo--oop'                                                                          -4.23 %       ±8.47% ±11.27% ±14.68%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='Soo--oop'                                                                           5.31 %       ±6.89%  ±9.17% ±11.94%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='SQ'                                                                                 5.92 %       ±9.45% ±12.58% ±16.38%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='SQ'                                                                                 2.21 %       ±6.40%  ±8.51% ±11.08%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-16le' search='venture to go near the house till she had brought herself down to'                  0.97 %       ±6.18%  ±8.22% ±10.70%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-16LE' search='venture to go near the house till she had brought herself down to'                  1.68 %       ±7.20%  ±9.59% ±12.48%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='--l'                                                                                  -4.28 %       ±5.81%  ±7.74% ±10.09%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='--l'                                                                                  -1.88 %       ±8.62% ±11.51% ±15.06%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='@'                                                                              *     -9.09 %       ±8.06% ±10.73% ±13.97%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='@'                                                                                    12.40 %      ±13.81% ±18.37% ±23.91%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='</i> to the Caterpillar'                                                               0.61 %       ±4.71%  ±6.26%  ±8.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='</i> to the Caterpillar'                                                              -0.58 %       ±7.80% ±10.38% ±13.52%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='10x'                                                                           **    -10.49 %       ±6.53%  ±8.72% ±11.41%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='10x'                                                                                   8.54 %      ±10.18% ±13.55% ±17.66%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='aaaaaaaaaaaaaaaaa'                                                                    -0.22 %       ±6.06%  ±8.07% ±10.51%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='aaaaaaaaaaaaaaaaa'                                                              *      7.53 %       ±5.87%  ±7.84% ±10.28%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='Alice'                                                                          *     -8.33 %       ±8.30% ±11.04% ±14.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Alice'                                                                          *     11.12 %      ±11.05% ±14.72% ±19.20%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='among mad people'                                                                      3.81 %       ±6.21%  ±8.27% ±10.77%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='among mad people'                                                                      5.43 %       ±5.87%  ±7.82% ±10.17%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='found it very'                                                                         2.61 %       ±4.66%  ±6.20%  ±8.09%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='found it very'                                                                         2.93 %       ±4.92%  ±6.59%  ±8.67%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='Gryphon'                                                                               5.25 %       ±9.11% ±12.13% ±15.80%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Gryphon'                                                                               7.48 %      ±10.17% ±13.53% ±17.62%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='neighbouring pool'                                                                     1.76 %       ±3.55%  ±4.73%  ±6.17%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='neighbouring pool'                                                                     2.18 %       ±5.09%  ±6.77%  ±8.83%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='Ou est ma chatte?'                                                                     4.32 %       ±5.65%  ±7.53%  ±9.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Ou est ma chatte?'                                                             **     11.70 %       ±7.36%  ±9.83% ±12.87%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='Panther'                                                                               4.63 %       ±9.28% ±12.35% ±16.08%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Panther'                                                                        *     11.70 %       ±8.94% ±11.91% ±15.52%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='Soo--oop'                                                                              0.16 %       ±5.27%  ±7.01%  ±9.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Soo--oop'                                                                             -0.97 %       ±5.97%  ±7.95% ±10.35%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='SQ'                                                                                    0.23 %      ±10.43% ±13.91% ±18.16%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='SQ'                                                                             *      9.66 %       ±9.26% ±12.32% ±16.05%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf-8' search='venture to go near the house till she had brought herself down to'                    -1.62 %       ±7.74% ±10.31% ±13.43%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='venture to go near the house till she had brought herself down to'                    -1.67 %       ±5.94%  ±7.91% ±10.30%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='--l'                                                                          *     -7.59 %       ±7.52% ±10.01% ±13.05%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='--l'                                                                                 2.33 %       ±8.21% ±10.92% ±14.21%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='@'                                                                                  -7.59 %       ±9.96% ±13.27% ±17.30%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='@'                                                                                   4.58 %       ±9.81% ±13.06% ±17.03%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='</i> to the Caterpillar'                                                            -0.25 %       ±6.34%  ±8.44% ±11.00%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='</i> to the Caterpillar'                                                            -0.22 %       ±5.53%  ±7.36%  ±9.58%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='10x'                                                                                 0.60 %       ±8.85% ±11.77% ±15.33%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='10x'                                                                                 4.48 %       ±8.23% ±10.98% ±14.35%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='aaaaaaaaaaaaaaaaa'                                                                   2.27 %       ±4.76%  ±6.35%  ±8.28%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='aaaaaaaaaaaaaaaaa'                                                                  -0.78 %       ±5.99%  ±7.97% ±10.38%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='Alice'                                                                               3.07 %       ±7.64% ±10.17% ±13.23%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='Alice'                                                                               0.34 %       ±7.29%  ±9.71% ±12.63%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='among mad people'                                                                   -2.08 %       ±5.31%  ±7.07%  ±9.20%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='among mad people'                                                                    2.92 %       ±5.15%  ±6.90%  ±9.06%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='found it very'                                                                       3.51 %       ±6.38%  ±8.50% ±11.09%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='found it very'                                                                       3.06 %       ±5.78%  ±7.70% ±10.05%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='Gryphon'                                                                             3.14 %       ±9.20% ±12.25% ±15.96%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='Gryphon'                                                                             1.78 %       ±8.09% ±10.76% ±14.01%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='neighbouring pool'                                                                   4.18 %       ±7.17%  ±9.58% ±12.55%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='neighbouring pool'                                                                   3.75 %       ±7.14%  ±9.49% ±12.36%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='Ou est ma chatte?'                                                                   7.09 %       ±9.37% ±12.48% ±16.26%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='Ou est ma chatte?'                                                                   6.27 %       ±9.85% ±13.11% ±17.07%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='Panther'                                                                             5.09 %       ±8.47% ±11.28% ±14.70%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='Panther'                                                                             0.89 %       ±7.18%  ±9.55% ±12.43%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='Soo--oop'                                                                           -3.83 %       ±8.75% ±11.66% ±15.20%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='Soo--oop'                                                                            0.09 %       ±8.63% ±11.49% ±14.95%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='SQ'                                                                                  0.07 %       ±6.81%  ±9.07% ±11.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='SQ'                                                                                  2.23 %       ±8.31% ±11.06% ±14.40%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf16le' search='venture to go near the house till she had brought herself down to'                  -2.92 %       ±6.26%  ±8.33% ±10.85%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='venture to go near the house till she had brought herself down to'                   0.64 %       ±7.00%  ±9.31% ±12.12%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='--l'                                                                                   -1.51 %       ±8.67% ±11.54% ±15.05%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='--l'                                                                                    4.72 %       ±8.81% ±11.72% ±15.26%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='@'                                                                                     -4.03 %       ±8.36% ±11.13% ±14.52%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='@'                                                                             ***     19.14 %      ±10.08% ±13.41% ±17.48%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='</i> to the Caterpillar'                                                               -0.97 %       ±6.36%  ±8.47% ±11.02%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='</i> to the Caterpillar'                                                                3.42 %       ±6.72%  ±8.95% ±11.66%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='10x'                                                                            **    -11.47 %       ±8.10% ±10.81% ±14.11%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='10x'                                                                             *     11.96 %      ±10.13% ±13.48% ±17.55%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='aaaaaaaaaaaaaaaaa'                                                                      0.03 %       ±5.07%  ±6.76%  ±8.81%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='aaaaaaaaaaaaaaaaa'                                                                      0.14 %       ±4.83%  ±6.43%  ±8.37%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='Alice'                                                                                 -7.12 %       ±9.66% ±12.86% ±16.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Alice'                                                                                  6.65 %      ±10.54% ±14.05% ±18.34%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='among mad people'                                                                       4.48 %       ±7.14%  ±9.53% ±12.47%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='among mad people'                                                                      -5.94 %       ±6.09%  ±8.12% ±10.61%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='found it very'                                                                          4.04 %       ±6.27%  ±8.39% ±11.01%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='found it very'                                                                          1.61 %       ±3.99%  ±5.31%  ±6.92%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='Gryphon'                                                                                6.74 %       ±9.61% ±12.82% ±16.74%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Gryphon'                                                                        **     17.32 %      ±11.59% ±15.45% ±20.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='neighbouring pool'                                                                     -0.75 %       ±3.36%  ±4.48%  ±5.83%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='neighbouring pool'                                                                      0.47 %       ±4.26%  ±5.67%  ±7.38%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='Ou est ma chatte?'                                                                      1.19 %       ±5.27%  ±7.01%  ±9.13%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Ou est ma chatte?'                                                                      5.49 %       ±6.60%  ±8.79% ±11.47%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='Panther'                                                                               -0.58 %       ±9.85% ±13.10% ±17.06%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Panther'                                                                                7.13 %      ±10.66% ±14.20% ±18.49%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='Soo--oop'                                                                               2.61 %       ±5.52%  ±7.39%  ±9.70%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Soo--oop'                                                                              -0.12 %       ±4.97%  ±6.62%  ±8.63%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='SQ'                                                                                     0.07 %       ±8.17% ±10.87% ±14.15%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='SQ'                                                                                     5.63 %       ±7.55% ±10.06% ±13.13%
 buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='venture to go near the house till she had brought herself down to'                      4.43 %       ±9.25% ±12.35% ±16.16%
 buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='venture to go near the house till she had brought herself down to'                     -1.54 %       ±8.13% ±10.82% ±14.10%

Comment thread benchmark/buffers/buffer-indexof.js Outdated

mscdex commented Mar 8, 2019
edited
Loading

Copy link
Copy Markdown
Contributor

Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/300/console

Results with ***:

buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='10x'                                                                         ***     12.43 %       ±4.95%  ±6.59%  ±8.59%
buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='@'                                                                           ***     12.80 %       ±5.88%  ±7.84% ±10.25%
buffers/buffer-indexof.js n=1000 type='string' encoding='UTF16LE' search='SQ'                                                                         ***     11.97 %       ±6.49%  ±8.66% ±11.32%
buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='10x'                                                                           ***    -11.23 %       ±6.28%  ±8.40% ±11.03%
buffers/buffer-indexof.js n=1000 type='string' encoding='UTF8' search='Alice'                                                                         ***     14.72 %       ±6.66%  ±8.88% ±11.60%
buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='Panther'                                                                      ***     11.85 %       ±5.86%  ±7.83% ±10.28%

It looks like 'utf8' regressed quite a bit for some reason. I think that's probably the most common format for that encoding, so it would be best if we could find a way to avoid that regression.

ZYSzys commented Mar 8, 2019

Copy link
Copy Markdown
Member Author

Simply elevate the most common encoding utf8.

Results with *** locally:

buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='Alice'                                                                       ***     19.60 %      ±10.68% ±14.21% ±18.49%
buffers/buffer-indexof.js n=1000 type='string' encoding='BINARY' search='SQ'                                                                          ***     19.60 %      ±10.03% ±13.35% ±17.37%
buffers/buffer-indexof.js n=1000 type='string' encoding='LATIN1' search='Alice'                                                                       ***     24.18 %      ±10.93% ±14.54% ±18.93%
buffers/buffer-indexof.js n=1000 type='string' encoding='UTF-8' search='@'                                                                            ***     21.10 %       ±9.20% ±12.26% ±16.00%
buffers/buffer-indexof.js n=1000 type='string' encoding='utf8' search='10x'                                                                           ***     22.51 %      ±12.13% ±16.16% ±21.06%

mscdex commented Mar 8, 2019

Copy link
Copy Markdown
Contributor

Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/301/console

The results there now look better, especially for common cases.

Copy link
Copy Markdown
Member

BridgeAR added the author ready PRs that have at least one approval, no outstanding review comments, and a CI started. label Mar 10, 2019

refack commented Mar 10, 2019

Copy link
Copy Markdown
Contributor

-1 to this at current form.
I'm not convinced the convoluted code is worth it based on Latest results with (p < 0.01)
Maybe only keep

if (encoding === undefined || encoding === 'utf8') {

buffers/buffer-indexof.js n=1000 confidence improvement accuracy (*) (**) (***)
type='string' encoding='binary' search='10x' ** -10.02 % ±7.44% ±9.91% ±12.92%
type='string' encoding='ucs-2' search='Alice' *** -13.87 % ±7.08% ±9.43% ±12.30%
type='string' encoding='utf-8' search='Soo--oop' ** -3.21 % ±2.22% ±2.95% ±3.84%
type='string' encoding='LATIN1' search='Soo--oop' *** -4.45 % ±2.48% ±3.31% ±4.31%
type='buffer' encoding='undefined' search='aaaaaaaaaaaaaaaaa' ** -6.10 % ±4.55% ±6.06% ±7.89%
type='buffer' encoding='utf-8' search='among mad people' *** -6.11 % ±3.22% ±4.30% ±5.61%
type='string' encoding='utf-8' search='@' ** -8.56 % ±5.89% ±7.84% ±10.21%
type='string' encoding='ucs2' search='10x' ** -8.60 % ±4.98% ±6.63% ±8.63%
type='string' encoding='ucs2' search='@' *** -9.66 % ±4.42% ±5.90% ±7.69%
type='string' encoding='BINARY' search='10x' *** 10.36 % ±4.29% ±5.71% ±7.43%
type='string' encoding='BINARY' search='Alice' ** 10.55 % ±6.10% ±8.12% ±10.56%
type='string' encoding='UTF-16LE' search='10x' ** 11.16 % ±7.33% ±9.76% ±12.70%
type='buffer' encoding='undefined' search='10x' ** 11.76 % ±7.42% ±9.94% ±13.07%
type='string' encoding='UTF16LE' search='10x' *** 12.54 % ±7.09% ±9.49% ±12.44%
type='string' encoding='utf8' search='Alice' *** 12.80 % ±5.28% ±7.04% ±9.17%
type='string' encoding='UTF-8' search='SQ' *** 12.85 % ±7.19% ±9.65% ±12.71%
type='string' encoding='utf8' search='Gryphon' *** 12.90 % ±6.52% ±8.74% ±11.51%
type='string' encoding='utf8' search='10x' ** 14.00 % ±8.93% ±11.89% ±15.49%
type='buffer' encoding='binary' search='@' ** 14.43 % ±9.32% ±12.52% ±16.55%
type='string' encoding='UTF-8' search='@' ** 14.62 % ±8.69% ±11.60% ±15.16%
type='string' encoding='LATIN1' search='@' *** 16.40 % ±9.18% ±12.25% ±16.03%
type='string' encoding='BASE64' search='among mad people' ** 4.37 % ±2.77% ±3.69% ±4.80%
type='buffer' encoding='ASCII' search='venture to go near the house till she had brought herself down to' ** 7.67 % ±5.33% ±7.12% ±9.33%
type='string' encoding='UTF16LE' search='@' *** 8.73 % ±4.98% ±6.64% ±8.66%
type='string' encoding='UTF-8' search='Alice' *** 8.79 % ±4.54% ±6.05% ±7.88%
type='string' encoding='utf8' search='among mad people' *** 9.24 % ±4.01% ±5.35% ±7.00%

refack added performance Issues and PRs related to the performance of Node.js. and removed author ready PRs that have at least one approval, no outstanding review comments, and a CI started. labels Mar 10, 2019

Copy link
Copy Markdown
Member

@refack the common cases are improved a tiny bit. It does not hurt to land this.

refack commented Mar 10, 2019

Copy link
Copy Markdown
Contributor

the common cases are improved a tiny bit. It does not hurt to land this.

Churn and code complexity make this not worth it.
(also table shows degradation in performance for many cases)

Copy link
Copy Markdown
Member

@nodejs/tsc PTAL. There is a -1 on this PR and it would be good to get opinions about landing this or not.

Trott commented Mar 25, 2019

Copy link
Copy Markdown
Member

/ping @nodejs/buffer for additional opinions/insights

mcollina left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I do not understand why this change is needed in the first place, can you articulate/expand? Considering the slowdown in our microbechmarks, I do not think we should land this either.

ZYSzys commented Mar 26, 2019

Copy link
Copy Markdown
Member Author

Thanks all. Will investigate more and have another try.

Closing this for now.

ZYSzys closed this Mar 26, 2019
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

buffer Issues and PRs related to the buffer subsystem. performance Issues and PRs related to the performance of Node.js.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

Footer

© 2026 GitHub, Inc.

Back | FazBrowse Home | New Git URL