update benchmarks · boyter/scc@5fbf72f

@@ -629,10 +629,10 @@ However if you want greater performance and you have RAM to spare you can disabl

629629

Benchmarks are run on fresh 32 Core CPU Optimised Digital Ocean Virtual Machine 2020/08/19 all done using [hyperfine](https://github.com/sharkdp/hyperfine) with 3 warm-up runs and 10 timed runs.

630630631631

```

632-

scc v2.13.0

633-

tokei v12.0.4

632+

scc v3.0.0

633+

tokei v12.1.2

634634

loc v0.5.0

635-

polyglot v0.5.25

635+

polyglot v0.5.29

636636

```

637637638638

See https://github.com/boyter/scc/blob/master/benchmark.sh to see how the benchmarks are run.

@@ -642,39 +642,39 @@ See https://github.com/boyter/scc/blob/master/benchmark.sh to see how the benchm

642642643643

| Program | Runtime |

644644

|---|---|

645-

| scc | 17.9 ms ± 1.8 ms |

646-

| scc (no complexity) | 14.6 ms ± 1.3 ms |

647-

| tokei | 29.3 ms ± 6.8 ms |

648-

| loc | 50.7 ms ± 21.8 ms |

649-

| polyglot | 19.6 ms ± 0.7 ms |

645+

| scc | 18.2 ms ± 1.8 ms |

646+

| scc (no complexity) | 15.0 ms ± 1.6 ms |

647+

| tokei | 26.9 ms ± 5.7 ms |

648+

| loc | 47.6 ms ± 23.8 ms |

649+

| polyglot | 20.4 ms ± 1.1 ms |

650650651651

#### CPython https://github.com/python/cpython

652652653653

| Program | Runtime |

654654

|---|---|

655-

| scc | 52.3 ms ± 4.9 ms |

656-

| scc (no complexity) | 45.2 ms ± 4.4 ms |

657-

| tokei | 92.2 ms ± 7.4 ms |

658-

| loc | 132.7 ms ± 17.7 ms |

659-

| polyglot | 88.0 ms ± 1.6 ms |

655+

| scc | 50.5 ms ± 4.2 ms |

656+

| scc (no complexity) | 43.8 ms ± 3.3 ms |

657+

| tokei | 90.2 ms ± 2.8 ms |

658+

| loc | 143.3 ms ± 20.9 ms |

659+

| polyglot | 86.6 ms ± 3.4 ms |

660660661661

#### Linux Kernel https://github.com/torvalds/linux

662662663663

| Program | Runtime |

664664

|---|---|

665-

| scc | 584.8 ms ± 15.8 ms |

666-

| scc (no complexity) | 420.7 ms ± 11.3 ms |

667-

| tokei | 871.9 ms ± 23.1 ms |

668-

| loc | 1.999 s ± 0.057 s |

669-

| polyglot | 1.171 s ± 0.043 s |

665+

| scc | 612.1 ms ± 16.1 ms |

666+

| scc (no complexity) | 462.1 ms ± 16.8 ms |

667+

| tokei | 883.3 ms ± 23.4 ms |

668+

| loc | 2.145 s ± 0.049 s |

669+

| polyglot | 1.215 s ± 0.047 s s |

670670671671

If you enable duplicate detection expect performance to fall by about 20% in `scc`.

672672673-

Performance is tracked over each release and presented below.

673+

Performance is tracked over each release and presented below. Currently the most recent release 3.0.0 is the fastest version.

674674675675

<img alt="scc" src=https://github.com/boyter/scc/raw/master/performance-over-time.png>

676676677-

https://jsfiddle.net/0ardq2g7/

677+

https://jsfiddle.net/u4m6xysv/3/

678678679679

### CI/CD Support

680680