719 lines
21 KiB
Diff
719 lines
21 KiB
Diff
diff --git a/Cargo.lock b/Cargo.lock
|
|
index 49293a3..61c38bf 100644
|
|
--- a/Cargo.lock
|
|
+++ b/Cargo.lock
|
|
@@ -17,7 +17,7 @@ version = "0.2.14"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
|
|
dependencies = [
|
|
- "hermit-abi",
|
|
+ "hermit-abi 0.1.19",
|
|
"libc",
|
|
"winapi",
|
|
]
|
|
@@ -40,23 +40,11 @@ version = "1.3.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
|
|
|
-[[package]]
|
|
-name = "bstr"
|
|
-version = "0.2.17"
|
|
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
|
|
-dependencies = [
|
|
- "lazy_static",
|
|
- "memchr",
|
|
- "regex-automata",
|
|
- "serde",
|
|
-]
|
|
-
|
|
[[package]]
|
|
name = "bumpalo"
|
|
-version = "3.9.1"
|
|
+version = "3.12.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
|
|
+checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
|
|
|
|
[[package]]
|
|
name = "byteorder"
|
|
@@ -73,6 +61,18 @@ dependencies = [
|
|
"rustc_version",
|
|
]
|
|
|
|
+[[package]]
|
|
+name = "cast"
|
|
+version = "0.3.0"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
|
|
+
|
|
+[[package]]
|
|
+name = "cc"
|
|
+version = "1.0.79"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
|
|
+
|
|
[[package]]
|
|
name = "cfg-if"
|
|
version = "1.0.0"
|
|
@@ -101,7 +101,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1604dafd25fba2fe2d5895a9da139f8dc9b319a5fe5354ca137cbbce4e178d10"
|
|
dependencies = [
|
|
"atty",
|
|
- "cast",
|
|
+ "cast 0.2.7",
|
|
"clap",
|
|
"criterion-plot",
|
|
"csv",
|
|
@@ -122,19 +122,19 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "criterion-plot"
|
|
-version = "0.4.4"
|
|
+version = "0.4.5"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "d00996de9f2f7559f7f4dc286073197f83e92256a59ed395f9aac01fe717da57"
|
|
+checksum = "2673cc8207403546f45f5fd319a974b1e6983ad1a3ee7e6041650013be041876"
|
|
dependencies = [
|
|
- "cast",
|
|
+ "cast 0.3.0",
|
|
"itertools",
|
|
]
|
|
|
|
[[package]]
|
|
name = "crossbeam-channel"
|
|
-version = "0.5.4"
|
|
+version = "0.5.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53"
|
|
+checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"crossbeam-utils",
|
|
@@ -142,9 +142,9 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "crossbeam-deque"
|
|
-version = "0.8.1"
|
|
+version = "0.8.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
|
|
+checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"crossbeam-epoch",
|
|
@@ -153,37 +153,34 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "crossbeam-epoch"
|
|
-version = "0.9.8"
|
|
+version = "0.9.14"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c"
|
|
+checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695"
|
|
dependencies = [
|
|
"autocfg",
|
|
"cfg-if",
|
|
"crossbeam-utils",
|
|
- "lazy_static",
|
|
"memoffset",
|
|
"scopeguard",
|
|
]
|
|
|
|
[[package]]
|
|
name = "crossbeam-utils"
|
|
-version = "0.8.8"
|
|
+version = "0.8.15"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
|
|
+checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b"
|
|
dependencies = [
|
|
"cfg-if",
|
|
- "lazy_static",
|
|
]
|
|
|
|
[[package]]
|
|
name = "csv"
|
|
-version = "1.1.6"
|
|
+version = "1.2.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1"
|
|
+checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad"
|
|
dependencies = [
|
|
- "bstr",
|
|
"csv-core",
|
|
- "itoa 0.4.8",
|
|
+ "itoa",
|
|
"ryu",
|
|
"serde",
|
|
]
|
|
@@ -221,9 +218,9 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "either"
|
|
-version = "1.6.1"
|
|
+version = "1.8.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
|
|
+checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
|
|
|
|
[[package]]
|
|
name = "generic-array"
|
|
@@ -261,31 +258,34 @@ dependencies = [
|
|
]
|
|
|
|
[[package]]
|
|
-name = "itertools"
|
|
-version = "0.10.3"
|
|
+name = "hermit-abi"
|
|
+version = "0.2.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"
|
|
+checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
|
|
+dependencies = [
|
|
+ "libc",
|
|
+]
|
|
+
|
|
+[[package]]
|
|
+name = "itertools"
|
|
+version = "0.10.5"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
|
dependencies = [
|
|
"either",
|
|
]
|
|
|
|
[[package]]
|
|
name = "itoa"
|
|
-version = "0.4.8"
|
|
+version = "1.0.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
|
|
-
|
|
-[[package]]
|
|
-name = "itoa"
|
|
-version = "1.0.1"
|
|
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
|
|
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
|
|
|
|
[[package]]
|
|
name = "js-sys"
|
|
-version = "0.3.57"
|
|
+version = "0.3.61"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397"
|
|
+checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
|
|
dependencies = [
|
|
"wasm-bindgen",
|
|
]
|
|
@@ -298,53 +298,78 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
|
|
|
[[package]]
|
|
name = "libc"
|
|
-version = "0.2.124"
|
|
+version = "0.2.140"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "21a41fed9d98f27ab1c6d161da622a4fa35e8a54a8adc24bbf3ddd0ef70b0e50"
|
|
+checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
|
|
|
|
[[package]]
|
|
name = "log"
|
|
-version = "0.4.16"
|
|
+version = "0.4.17"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8"
|
|
+checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
|
|
dependencies = [
|
|
"cfg-if",
|
|
]
|
|
|
|
[[package]]
|
|
name = "memchr"
|
|
-version = "2.4.1"
|
|
+version = "2.5.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
|
|
+checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
|
|
|
|
[[package]]
|
|
name = "memoffset"
|
|
-version = "0.6.5"
|
|
+version = "0.8.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
|
|
+checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
|
|
dependencies = [
|
|
"autocfg",
|
|
]
|
|
|
|
[[package]]
|
|
-name = "num-traits"
|
|
-version = "0.2.14"
|
|
+name = "mimalloc-sys"
|
|
+version = "0.1.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
|
|
+checksum = "4aa3cefb626f6ae3d0b2f71c5378c89d2b1d4d7bc246b0ca9a7ee61a4daad291"
|
|
+dependencies = [
|
|
+ "cc",
|
|
+ "libc",
|
|
+]
|
|
+
|
|
+[[package]]
|
|
+name = "mimallocator"
|
|
+version = "0.1.3"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "2d44fe4ebf6b538fcf39d9975c2b90bb3232d1ba8e8bffeacd004f27b20c577a"
|
|
+dependencies = [
|
|
+ "mimalloc-sys",
|
|
+]
|
|
+
|
|
+[[package]]
|
|
+name = "num-traits"
|
|
+version = "0.2.15"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
|
|
dependencies = [
|
|
"autocfg",
|
|
]
|
|
|
|
[[package]]
|
|
name = "num_cpus"
|
|
-version = "1.13.1"
|
|
+version = "1.15.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
|
|
+checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
|
|
dependencies = [
|
|
- "hermit-abi",
|
|
+ "hermit-abi 0.2.6",
|
|
"libc",
|
|
]
|
|
|
|
+[[package]]
|
|
+name = "once_cell"
|
|
+version = "1.17.1"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
|
|
+
|
|
[[package]]
|
|
name = "oorandom"
|
|
version = "11.1.3"
|
|
@@ -353,9 +378,9 @@ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
|
|
|
|
[[package]]
|
|
name = "plotters"
|
|
-version = "0.3.1"
|
|
+version = "0.3.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "32a3fd9ec30b9749ce28cd91f255d569591cdf937fe280c312143e3c4bad6f2a"
|
|
+checksum = "2538b639e642295546c50fcd545198c9d64ee2a38620a628724a3b266d5fbf97"
|
|
dependencies = [
|
|
"num-traits",
|
|
"plotters-backend",
|
|
@@ -366,33 +391,33 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "plotters-backend"
|
|
-version = "0.3.2"
|
|
+version = "0.3.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "d88417318da0eaf0fdcdb51a0ee6c3bed624333bff8f946733049380be67ac1c"
|
|
+checksum = "193228616381fecdc1224c62e96946dfbc73ff4384fba576e052ff8c1bea8142"
|
|
|
|
[[package]]
|
|
name = "plotters-svg"
|
|
-version = "0.3.1"
|
|
+version = "0.3.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "521fa9638fa597e1dc53e9412a4f9cefb01187ee1f7413076f9e6749e2885ba9"
|
|
+checksum = "f9a81d2759aae1dae668f783c308bc5c8ebd191ff4184aaa1b37f65a6ae5a56f"
|
|
dependencies = [
|
|
"plotters-backend",
|
|
]
|
|
|
|
[[package]]
|
|
name = "proc-macro2"
|
|
-version = "1.0.37"
|
|
+version = "1.0.52"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
|
|
+checksum = "1d0e1ae9e836cc3beddd63db0df682593d7e2d3d891ae8c9083d2113e1744224"
|
|
dependencies = [
|
|
- "unicode-xid",
|
|
+ "unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
name = "quote"
|
|
-version = "1.0.18"
|
|
+version = "1.0.26"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
|
|
+checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
]
|
|
@@ -408,21 +433,19 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "rayon"
|
|
-version = "1.5.2"
|
|
+version = "1.7.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "fd249e82c21598a9a426a4e00dd7adc1d640b22445ec8545feef801d1a74c221"
|
|
+checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
|
|
dependencies = [
|
|
- "autocfg",
|
|
- "crossbeam-deque",
|
|
"either",
|
|
"rayon-core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "rayon-core"
|
|
-version = "1.9.2"
|
|
+version = "1.11.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "9f51245e1e62e1f1629cbfec37b5793bbabcaeb90f30e94d2ba03564687353e4"
|
|
+checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
|
|
dependencies = [
|
|
"crossbeam-channel",
|
|
"crossbeam-deque",
|
|
@@ -432,24 +455,18 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "regex"
|
|
-version = "1.5.5"
|
|
+version = "1.7.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
|
|
+checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
|
|
dependencies = [
|
|
"regex-syntax",
|
|
]
|
|
|
|
-[[package]]
|
|
-name = "regex-automata"
|
|
-version = "0.1.10"
|
|
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
|
|
-
|
|
[[package]]
|
|
name = "regex-syntax"
|
|
-version = "0.6.25"
|
|
+version = "0.6.28"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
|
|
+checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
|
|
|
|
[[package]]
|
|
name = "rustc_version"
|
|
@@ -462,9 +479,9 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "ryu"
|
|
-version = "1.0.9"
|
|
+version = "1.0.13"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
|
|
+checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
|
|
|
|
[[package]]
|
|
name = "same-file"
|
|
@@ -483,15 +500,15 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
|
|
|
|
[[package]]
|
|
name = "semver"
|
|
-version = "1.0.7"
|
|
+version = "1.0.17"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "d65bd28f48be7196d222d95b9243287f48d27aca604e08497513019ff0502cc4"
|
|
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
|
|
|
|
[[package]]
|
|
name = "serde"
|
|
-version = "1.0.136"
|
|
+version = "1.0.158"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
|
|
+checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9"
|
|
|
|
[[package]]
|
|
name = "serde_cbor"
|
|
@@ -505,22 +522,22 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "serde_derive"
|
|
-version = "1.0.136"
|
|
+version = "1.0.158"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
|
|
+checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
- "syn",
|
|
+ "syn 2.0.3",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_json"
|
|
-version = "1.0.79"
|
|
+version = "1.0.94"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
|
|
+checksum = "1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea"
|
|
dependencies = [
|
|
- "itoa 1.0.1",
|
|
+ "itoa",
|
|
"ryu",
|
|
"serde",
|
|
]
|
|
@@ -533,19 +550,30 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
|
|
|
|
[[package]]
|
|
name = "subtle"
|
|
-version = "2.4.1"
|
|
+version = "2.5.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
|
|
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
|
|
|
|
[[package]]
|
|
name = "syn"
|
|
-version = "1.0.91"
|
|
+version = "1.0.109"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
|
|
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
- "unicode-xid",
|
|
+ "unicode-ident",
|
|
+]
|
|
+
|
|
+[[package]]
|
|
+name = "syn"
|
|
+version = "2.0.3"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "e8234ae35e70582bfa0f1fedffa6daa248e41dd045310b19800c4a36382c8f60"
|
|
+dependencies = [
|
|
+ "proc-macro2",
|
|
+ "quote",
|
|
+ "unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
@@ -556,7 +584,7 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
- "syn",
|
|
+ "syn 1.0.109",
|
|
"unicode-xid",
|
|
]
|
|
|
|
@@ -581,21 +609,27 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "typenum"
|
|
-version = "1.15.0"
|
|
+version = "1.16.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
|
|
+checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
|
|
+
|
|
+[[package]]
|
|
+name = "unicode-ident"
|
|
+version = "1.0.8"
|
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
|
|
|
|
[[package]]
|
|
name = "unicode-width"
|
|
-version = "0.1.9"
|
|
+version = "0.1.10"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
|
|
+checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
|
|
|
|
[[package]]
|
|
name = "unicode-xid"
|
|
-version = "0.2.2"
|
|
+version = "0.2.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
|
|
+checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
|
|
|
|
[[package]]
|
|
name = "vec_map"
|
|
@@ -605,12 +639,11 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
|
|
|
|
[[package]]
|
|
name = "walkdir"
|
|
-version = "2.3.2"
|
|
+version = "2.3.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
|
|
+checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
|
|
dependencies = [
|
|
"same-file",
|
|
- "winapi",
|
|
"winapi-util",
|
|
]
|
|
|
|
@@ -622,9 +655,9 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
|
|
|
|
[[package]]
|
|
name = "wasm-bindgen"
|
|
-version = "0.2.80"
|
|
+version = "0.2.84"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
|
|
+checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"wasm-bindgen-macro",
|
|
@@ -632,24 +665,24 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "wasm-bindgen-backend"
|
|
-version = "0.2.80"
|
|
+version = "0.2.84"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
|
|
+checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
|
|
dependencies = [
|
|
"bumpalo",
|
|
- "lazy_static",
|
|
"log",
|
|
+ "once_cell",
|
|
"proc-macro2",
|
|
"quote",
|
|
- "syn",
|
|
+ "syn 1.0.109",
|
|
"wasm-bindgen-shared",
|
|
]
|
|
|
|
[[package]]
|
|
name = "wasm-bindgen-macro"
|
|
-version = "0.2.80"
|
|
+version = "0.2.84"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
|
|
+checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
|
|
dependencies = [
|
|
"quote",
|
|
"wasm-bindgen-macro-support",
|
|
@@ -657,28 +690,28 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "wasm-bindgen-macro-support"
|
|
-version = "0.2.80"
|
|
+version = "0.2.84"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
|
|
+checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
- "syn",
|
|
+ "syn 1.0.109",
|
|
"wasm-bindgen-backend",
|
|
"wasm-bindgen-shared",
|
|
]
|
|
|
|
[[package]]
|
|
name = "wasm-bindgen-shared"
|
|
-version = "0.2.80"
|
|
+version = "0.2.84"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
|
|
+checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
|
|
|
|
[[package]]
|
|
name = "web-sys"
|
|
-version = "0.3.57"
|
|
+version = "0.3.61"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283"
|
|
+checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97"
|
|
dependencies = [
|
|
"js-sys",
|
|
"wasm-bindgen",
|
|
@@ -723,6 +756,7 @@ dependencies = [
|
|
"clap",
|
|
"criterion",
|
|
"curve25519-dalek",
|
|
+ "mimallocator",
|
|
"num_cpus",
|
|
"rand_core",
|
|
"rayon",
|
|
@@ -742,21 +776,21 @@ dependencies = [
|
|
|
|
[[package]]
|
|
name = "zeroize"
|
|
-version = "1.5.4"
|
|
+version = "1.5.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "7eb5728b8afd3f280a869ce1d4c554ffaed35f45c231fc41bfbd0381bef50317"
|
|
+checksum = "c394b5bd0c6f669e7275d9c20aa90ae064cb22e75a1cad54e1b34088034b149f"
|
|
dependencies = [
|
|
"zeroize_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zeroize_derive"
|
|
-version = "1.3.2"
|
|
+version = "1.3.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
-checksum = "3f8f187641dad4f680d25c4bfc4225b418165984179f26ca76ec4fb6441d3a17"
|
|
+checksum = "44bf07cb3e50ea2003396695d58bf46bc9887a1f362260446fad6bc4e79bd36c"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
- "syn",
|
|
+ "syn 1.0.109",
|
|
"synstructure",
|
|
]
|
|
diff --git a/Cargo.toml b/Cargo.toml
|
|
index 696c44e..a591a47 100644
|
|
--- a/Cargo.toml
|
|
+++ b/Cargo.toml
|
|
@@ -26,6 +26,7 @@ rand_core = { version = "0.5", default-features = false, features = ["getrandom"
|
|
x25519-dalek = "0.6"
|
|
curve25519-dalek = "2.0"
|
|
num_cpus = "1.0"
|
|
+mimallocator = "0.1.3"
|
|
|
|
[dev-dependencies]
|
|
criterion = "0.3"
|
|
diff --git a/src/bin.rs b/src/bin.rs
|
|
index 1e1f2b0..1204813 100644
|
|
--- a/src/bin.rs
|
|
+++ b/src/bin.rs
|
|
@@ -2,6 +2,9 @@ use std::error::Error;
|
|
use std::fmt;
|
|
use std::io::{self, Write};
|
|
|
|
+#[global_allocator]
|
|
+static GLOBAL: mimallocator::Mimalloc = mimallocator::Mimalloc;
|
|
+
|
|
use clap::{App, AppSettings, Arg};
|
|
use num_cpus;
|
|
use rayon::prelude::*;
|
|
@@ -122,7 +125,10 @@ fn main() -> Result<(), Box<dyn Error>> {
|
|
// get_physical() appears to be more accurate: hyperthreading doesn't
|
|
// help us much
|
|
let cpus = num_cpus::get_physical();
|
|
- rayon::ThreadPoolBuilder::new().num_threads(cpus).build_global().unwrap();
|
|
+ rayon::ThreadPoolBuilder::new()
|
|
+ .num_threads(cpus)
|
|
+ .build_global()
|
|
+ .unwrap();
|
|
|
|
if trials_per_key < 2u64.pow(32) {
|
|
let raw_rate = measure_rate();
|