forked from MihaZupan/runtime-utils
-
Notifications
You must be signed in to change notification settings - Fork 0
[Benchmark X64] [MihaZupan] Remove more unsafe code from Uri internals #1614
Copy link
Copy link
Open
Description
Job completed in 1 hour 2 minutes (remote runner delay: 49 seconds).
Using arguments: benchmark Perf_Uri -medium -NoPRLink
System.Tests.Perf_Uri
BenchmarkDotNet v0.14.1-nightly.20250107.205, Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores
MediumRun : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Job=MediumRun IterationCount=15 LaunchCount=2
WarmupCount=10
| Method | Toolchain | input | Mean | Error | Ratio | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|
| ParseAbsoluteUri | Main | ? | 166.1814 ns | 0.5861 ns | 1.00 | 304 B | 1.00 |
| ParseAbsoluteUri | PR | ? | 168.5380 ns | 1.1001 ns | 1.01 | 304 B | 1.00 |
| DnsSafeHost | Main | ? | 173.7048 ns | 4.0725 ns | 1.00 | 328 B | 1.00 |
| DnsSafeHost | PR | ? | 164.8996 ns | 0.8367 ns | 0.95 | 328 B | 1.00 |
| BuilderToString | Main | ? | 71.5654 ns | 1.2860 ns | 1.00 | 216 B | 1.00 |
| BuilderToString | PR | ? | 69.5725 ns | 0.0647 ns | 0.97 | 216 B | 1.00 |
| UriBuilderReplacePort | Main | ? | 65.6175 ns | 0.3750 ns | 1.00 | 216 B | 1.00 |
| UriBuilderReplacePort | PR | ? | 66.2976 ns | 1.3258 ns | 1.01 | 216 B | 1.00 |
| GetComponents | Main | ? | 10.6229 ns | 0.0937 ns | 1.00 | 80 B | 1.00 |
| GetComponents | PR | ? | 10.8516 ns | 0.1163 ns | 1.02 | 80 B | 1.00 |
| PathAndQuery | Main | ? | 0.9056 ns | 0.1188 ns | 1.05 | - | NA |
| PathAndQuery | PR | ? | 0.8215 ns | 0.0620 ns | 0.95 | - | NA |
| EscapeDataString | Main | {{{{{{{{{{{{(...){{{{{{{{{{{{ [1000] | 4,673.8030 ns | 6.5694 ns | 1.00 | 6024 B | 1.00 |
| EscapeDataString | PR | {{{{{{{{{{{{(...){{{{{{{{{{{{ [1000] | 4,695.6469 ns | 40.8134 ns | 1.00 | 6024 B | 1.00 |
| CombineAbsoluteRelative | Main | /new/path | 92.0675 ns | 0.5477 ns | 1.00 | 200 B | 1.00 |
| CombineAbsoluteRelative | PR | /new/path | 94.4632 ns | 1.6609 ns | 1.03 | 200 B | 1.00 |
| UnescapeDataString | Main | %E4%BD%A0%E5%A5%BD | 37.3165 ns | 0.1255 ns | 1.00 | 32 B | 1.00 |
| UnescapeDataString | PR | %E4%BD%A0%E5%A5%BD | 38.1200 ns | 0.1100 ns | 1.02 | 32 B | 1.00 |
| EscapeDataString | Main | a{üa{üa{üa{ü(...)a{üa{üa{üa{ü [999] | 7,328.8241 ns | 55.2790 ns | 1.00 | 6688 B | 1.00 |
| EscapeDataString | PR | a{üa{üa{üa{ü(...)a{üa{üa{üa{ü [999] | 7,238.8281 ns | 18.7705 ns | 0.99 | 6688 B | 1.00 |
| EscapeDataString | Main | aaaaaaaaaaaa(...)aaaaaaaaaaaa [1000] | 27.3352 ns | 0.6744 ns | 1.00 | - | NA |
| EscapeDataString | PR | aaaaaaaaaaaa(...)aaaaaaaaaaaa [1000] | 26.6049 ns | 0.1424 ns | 0.97 | - | NA |
| UnescapeDataString | Main | abc%20def%20ghi%20 | 29.5808 ns | 0.0277 ns | 1.00 | 48 B | 1.00 |
| UnescapeDataString | PR | abc%20def%20ghi%20 | 29.9914 ns | 0.2950 ns | 1.01 | 48 B | 1.00 |
| Ctor | Main | http://dot.net | 49.7927 ns | 0.1819 ns | 1.00 | 56 B | 1.00 |
| Ctor | PR | http://dot.net | 49.9968 ns | 0.0256 ns | 1.00 | 56 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://dot.ne(...)alue#fragment [43] | 185.1049 ns | 1.7632 ns | 1.00 | 248 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://dot.ne(...)alue#fragment [43] | 195.8800 ns | 0.7300 ns | 1.06 | 248 B | 1.00 |
| Ctor | Main | http://höst.with.ünicode | 219.9153 ns | 5.5543 ns | 1.00 | 256 B | 1.00 |
| Ctor | PR | http://höst.with.ünicode | 219.8138 ns | 4.3970 ns | 1.00 | 256 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://höst.w(...)alue#fragment [53] | 1,051.5473 ns | 7.1945 ns | 1.00 | 936 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://höst.w(...)alue#fragment [53] | 1,073.5710 ns | 2.6858 ns | 1.02 | 936 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/ | 111.9771 ns | 2.4199 ns | 1.00 | 200 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/ | 112.5333 ns | 1.5538 ns | 1.01 | 200 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/p(...)s?key=ünicode [50] | 467.2619 ns | 3.4740 ns | 1.00 | 752 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/p(...)s?key=ünicode [50] | 477.4545 ns | 13.0679 ns | 1.02 | 752 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/p(...)es?key=va lue [49] | 276.4820 ns | 1.2910 ns | 1.00 | 296 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/p(...)es?key=va lue [49] | 286.7109 ns | 2.9624 ns | 1.04 | 296 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/p(...)3&key4=value4 [64] | 224.8260 ns | 0.9306 ns | 1.00 | 304 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/p(...)3&key4=value4 [64] | 240.5953 ns | 0.9292 ns | 1.07 | 304 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/p(...)=%C3%BCnicode [61] | 489.4140 ns | 5.0478 ns | 1.00 | 752 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/p(...)=%C3%BCnicode [61] | 502.3432 ns | 3.3578 ns | 1.03 | 752 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://host/p(...)?key=va%20lue [57] | 228.1495 ns | 0.5390 ns | 1.00 | 296 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://host/p(...)?key=va%20lue [57] | 245.8039 ns | 9.3835 ns | 1.08 | 296 B | 1.00 |
| Ctor | Main | http://xn--hs(...)n--nicode-2ya [38] | 77.0606 ns | 0.9542 ns | 1.00 | 56 B | 1.00 |
| Ctor | PR | http://xn--hs(...)n--nicode-2ya [38] | 76.6261 ns | 1.2773 ns | 0.99 | 56 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | http://xn--hs(...)alue#fragment [67] | 230.8228 ns | 1.3680 ns | 1.00 | 296 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | http://xn--hs(...)alue#fragment [67] | 237.6567 ns | 0.2979 ns | 1.03 | 296 B | 1.00 |
| Ctor | Main | https://a.much.longer.domain.name | 86.2592 ns | 0.7154 ns | 1.00 | 56 B | 1.00 |
| Ctor | PR | https://a.much.longer.domain.name | 89.9344 ns | 2.2277 ns | 1.04 | 56 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | https://a.muc(...)alue#fragment [62] | 233.7094 ns | 0.5609 ns | 1.00 | 280 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | https://a.muc(...)alue#fragment [62] | 254.5426 ns | 6.0456 ns | 1.09 | 280 B | 1.00 |
| Ctor | Main | https://contoso.com | 49.5386 ns | 0.0380 ns | 1.00 | 56 B | 1.00 |
| Ctor | PR | https://contoso.com | 50.1123 ns | 0.4004 ns | 1.01 | 56 B | 1.00 |
| Ctor | Main | https://CONTOSO.com | 50.5206 ns | 0.0483 ns | 1.00 | 56 B | 1.00 |
| Ctor | PR | https://CONTOSO.com | 50.2419 ns | 0.0866 ns | 0.99 | 56 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | https://conto(...)alue#fragment [48] | 190.6193 ns | 0.2877 ns | 1.00 | 256 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | https://conto(...)alue#fragment [48] | 199.0000 ns | 0.3015 ns | 1.04 | 256 B | 1.00 |
| CtorIdnHostPathAndQuery | Main | https://CONTO(...)alue#fragment [48] | 186.3635 ns | 0.5555 ns | 1.00 | 256 B | 1.00 |
| CtorIdnHostPathAndQuery | PR | https://CONTO(...)alue#fragment [48] | 199.2634 ns | 0.5749 ns | 1.07 | 256 B | 1.00 |
| EscapeDataString | Main | üüüüüüüüüüüü(...)üüüüüüüüüüüü [1000] | 8,760.3282 ns | 33.0787 ns | 1.00 | 12024 B | 1.00 |
| EscapeDataString | PR | üüüüüüüüüüüü(...)üüüüüüüüüüüü [1000] | 9,119.5599 ns | 242.9852 ns | 1.04 | 12024 B | 1.00 |
Artifacts:
- BDN_Artifacts.zip (419 KB)
- results.md (14 KB)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels