aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorDennis Eriksen <d@ennis.no>2023-11-09 21:56:52 +0100
committerDennis Eriksen <d@ennis.no>2023-11-09 21:56:52 +0100
commit5b220f2dfd033dde08b602929ad665ce3dd2d183 (patch)
tree1c521f71b5356bda0c2121d54386841db8c21bf3 /README.md
parentUpdated build-instructions for go-version (diff)
downloadmakepass-5b220f2dfd033dde08b602929ad665ce3dd2d183.tar.gz
Adding a python-verion
Diffstat (limited to '')
-rw-r--r--README.md53
1 files changed, 31 insertions, 22 deletions
diff --git a/README.md b/README.md
index d1dc0b4..1abd74c 100644
--- a/README.md
+++ b/README.md
@@ -163,36 +163,41 @@ Here are the results so far:
```
% hyperfine --time-unit=millisecond --warmup=1 --shell=none ./makepass.*
Benchmark 1: ./makepass.bash
- Time (mean ± σ): 77.4 ms ± 2.1 ms [User: 27.8 ms, System: 33.8 ms]
- Range (min … max): 72.8 ms … 80.8 ms 37 runs
+ Time (mean ± σ): 81.2 ms ± 1.9 ms [User: 34.0 ms, System: 39.7 ms]
+ Range (min … max): 77.3 ms … 85.2 ms 35 runs
Benchmark 2: ./makepass.go
- Time (mean ± σ): 7.2 ms ± 0.2 ms [User: 1.2 ms, System: 4.9 ms]
- Range (min … max): 6.6 ms … 7.6 ms 409 runs
+ Time (mean ± σ): 6.7 ms ± 0.1 ms [User: 1.0 ms, System: 4.9 ms]
+ Range (min … max): 6.4 ms … 7.8 ms 444 runs
Benchmark 3: ./makepass.pl
- Time (mean ± σ): 39.4 ms ± 0.3 ms [User: 19.6 ms, System: 15.4 ms]
- Range (min … max): 38.8 ms … 40.4 ms 76 runs
+ Time (mean ± σ): 40.4 ms ± 0.3 ms [User: 19.7 ms, System: 18.3 ms]
+ Range (min … max): 39.7 ms … 41.3 ms 75 runs
-Benchmark 4: ./makepass.rs
- Time (mean ± σ): 4.8 ms ± 0.2 ms [User: 1.3 ms, System: 2.3 ms]
- Range (min … max): 4.3 ms … 5.7 ms 606 runs
+Benchmark 4: ./makepass.py
+ Time (mean ± σ): 103.5 ms ± 1.2 ms [User: 71.0 ms, System: 27.9 ms]
+ Range (min … max): 101.9 ms … 107.8 ms 29 runs
-Benchmark 5: ./makepass.sh
- Time (mean ± σ): 646.5 ms ± 2.6 ms [User: 145.0 ms, System: 1005.0 ms]
- Range (min … max): 643.2 ms … 651.3 ms 10 runs
+Benchmark 5: ./makepass.rs
+ Time (mean ± σ): 4.9 ms ± 0.2 ms [User: 1.1 ms, System: 2.4 ms]
+ Range (min … max): 4.4 ms … 5.6 ms 610 runs
-Benchmark 6: ./makepass.zsh
- Time (mean ± σ): 26.9 ms ± 0.6 ms [User: 12.4 ms, System: 12.3 ms]
- Range (min … max): 25.5 ms … 28.4 ms 111 runs
+Benchmark 6: ./makepass.sh
+ Time (mean ± σ): 638.4 ms ± 2.9 ms [User: 155.0 ms, System: 915.0 ms]
+ Range (min … max): 634.0 ms … 643.9 ms 10 runs
+
+Benchmark 7: ./makepass.zsh
+ Time (mean ± σ): 26.9 ms ± 0.7 ms [User: 13.4 ms, System: 12.0 ms]
+ Range (min … max): 25.5 ms … 30.2 ms 109 runs
Summary
- './makepass.rs' ran
- 1.49 ± 0.06 times faster than './makepass.go'
- 5.56 ± 0.23 times faster than './makepass.zsh'
- 8.16 ± 0.28 times faster than './makepass.pl'
- 16.02 ± 0.69 times faster than './makepass.bash'
- 133.85 ± 4.52 times faster than './makepass.sh'
+ ./makepass.rs ran
+ 1.36 ± 0.07 times faster than ./makepass.go
+ 5.44 ± 0.31 times faster than ./makepass.zsh
+ 8.19 ± 0.42 times faster than ./makepass.pl
+ 16.46 ± 0.91 times faster than ./makepass.bash
+ 20.96 ± 1.08 times faster than ./makepass.py
+ 129.36 ± 6.50 times faster than ./makepass.sh
```
## Versions
@@ -210,6 +215,9 @@ $ go build -C go -o .. -ldflags "-s -w"
### Perl
Perl version. I like this version <3
+### Python
+I don't really care for python, but here it is. It's pretty slow, but I don't really know Python. It should probably be faster.
+
### Rust
Rust-version. It's fast!
@@ -224,4 +232,5 @@ $ cargo build --manifest-path rust/Cargo.toml --release && mv rust/target/releas
### Zsh
This is currently the "main" version. It uses pure zsh, with no forking out to
-other programs. As of adding the go-version, it is the second fastest version.
+other programs. Aside from the compiled languages, it is by far the fastest
+version.