|
| 1 | +# Benchmarks |
| 2 | + |
| 3 | +## Latest Results |
| 4 | + |
| 5 | +BenchmarkDotNet v0.14.0, Windows 11 (10.0.26100.2894) |
| 6 | +Intel Core i7-9700 CPU 3.00GHz, 1 CPU, 8 logical and 8 physical cores |
| 7 | +.NET SDK 9.0.200-preview.0.25057.12 |
| 8 | + [Host] : .NET 8.0.12 (8.0.1224.60305), X64 RyuJIT AVX2 |
| 9 | + DefaultJob : .NET 8.0.12 (8.0.1224.60305), X64 RyuJIT AVX2 |
| 10 | + |
| 11 | +### MimeMessage |
| 12 | + |
| 13 | +| Method | Mean | Error | StdDev | |
| 14 | +|------------------------------------------------ |---------:|----------:|----------:| |
| 15 | +| MimeMessage_Prepare_EncodingConstraint_None | 4.572 us | 0.0894 us | 0.1029 us | |
| 16 | +| MimeMessage_Prepare_EncodingConstraint_SevenBit | 4.628 us | 0.0910 us | 0.1617 us | |
| 17 | +| MimeMessage_Prepare_EncodingConstraint_EightBit | 5.052 us | 0.0850 us | 0.0754 us | |
| 18 | + |
| 19 | +### MimeParser |
| 20 | + |
| 21 | +| Method | Mean | Error | StdDev | |
| 22 | +|--------------------------------------------------- |--------------:|------------:|------------:| |
| 23 | +| MimeParser_StarTrekMessage | 400.462 us | 5.7279 us | 7.4479 us | |
| 24 | +| MimeParser_StarTrekMessagePersistent | 284.192 us | 2.8357 us | 2.3679 us | |
| 25 | +| MimeParser_ContentLengthMbox | 2,702.926 us | 41.4907 us | 38.8104 us | |
| 26 | +| MimeParser_ContentLengthMboxPersistent | 2,132.559 us | 24.8048 us | 21.9888 us | |
| 27 | +| MimeParser_JwzMbox | 22,628.980 us | 252.5825 us | 223.9078 us | |
| 28 | +| MimeParser_JwzMboxPersistent | 17,000.140 us | 141.0316 us | 131.9211 us | |
| 29 | +| MimeParser_HeaderStressTest | 51.124 us | 0.7945 us | 0.7043 us | |
| 30 | +| ExperimentalMimeParser_StarTrekMessage | 383.670 us | 7.0703 us | 6.9440 us | |
| 31 | +| ExperimentalMimeParser_StarTrekMessagePersistent | 281.025 us | 4.0180 us | 3.5618 us | |
| 32 | +| ExperimentalMimeParser_ContentLengthMbox | 2,595.748 us | 27.7057 us | 24.5604 us | |
| 33 | +| ExperimentalMimeParser_ContentLengthMboxPersistent | 2,098.446 us | 30.5942 us | 28.6179 us | |
| 34 | +| ExperimentalMimeParser_JwzMbox | 22,666.019 us | 434.5746 us | 533.6967 us | |
| 35 | +| ExperimentalMimeParser_JwzMboxPersistent | 16,821.016 us | 327.6765 us | 490.4508 us | |
| 36 | +| ExperimentalMimeParser_HeaderStressTest | 41.746 us | 0.5287 us | 0.4415 us | |
| 37 | +| MimeReader_StarTrekMessage | 221.958 us | 4.1713 us | 4.6364 us | |
| 38 | +| MimeReader_ContentLengthMbox | 992.352 us | 17.0429 us | 15.9419 us | |
| 39 | +| MimeReader_JwzMbox | 10,846.372 us | 214.6453 us | 387.0498 us | |
| 40 | +| MimeReader_HeaderStressTest | 9.911 us | 0.0660 us | 0.0585 us | |
| 41 | + |
| 42 | +### BestEncodingFilter |
| 43 | + |
| 44 | +| Method | Mean | Error | StdDev | |
| 45 | +|------------------------ |------------:|----------:|----------:| |
| 46 | +| BestEncoding_LoremIpsum | 382.0 us | 1.71 us | 1.60 us | |
| 47 | +| BestEncoding_GirlJpeg | 50,750.1 us | 667.52 us | 591.74 us | |
| 48 | + |
| 49 | +### MIME Decoders |
| 50 | + |
| 51 | +| Method | Mean | Error | StdDev | |
| 52 | +|----------------------- |-------------:|------------:|------------:| |
| 53 | +| Base64Decoder | 362,045.2 ns | 5,364.75 ns | 5,018.19 ns | |
| 54 | +| QuotedPrintableDecoder | 665.2 ns | 13.12 ns | 19.64 ns | |
| 55 | +| UUDecoder | 478,663.6 ns | 7,484.50 ns | 6,249.90 ns | |
| 56 | + |
| 57 | +### MIME Encoders |
| 58 | + |
| 59 | +| Method | Mean | Error | StdDev | |
| 60 | +|----------------------- |-------------:|------------:|------------:| |
| 61 | +| Base64Encoder | 189,400.6 ns | 3,760.16 ns | 6,486.09 ns | |
| 62 | +| HexEncoder | 585,685.4 ns | 8,224.89 ns | 7,291.15 ns | |
| 63 | +| QEncoder | 700.2 ns | 13.59 ns | 13.35 ns | |
| 64 | +| QuotedPrintableEncoder | 946.1 ns | 13.60 ns | 11.36 ns | |
| 65 | +| UUEncoder | 239,259.4 ns | 4,695.51 ns | 6,882.61 ns | |
| 66 | + |
| 67 | +### TrailingWhitespaceFilter |
| 68 | + |
| 69 | +| Method | Mean | Error | StdDev | |
| 70 | +|------------------------------ |---------:|----------:|----------:| |
| 71 | +| TrailingWhitespace_LoremIpsum | 5.200 us | 0.0809 us | 0.0757 us | |
| 72 | + |
| 73 | +### Dos2UnixFilter and Unix2DosFilter |
| 74 | + |
| 75 | +| Method | Mean | Error | StdDev | |
| 76 | +|------------------------ |---------:|----------:|----------:| |
| 77 | +| Dos2Unix_LoremIpsumDos | 3.680 us | 0.0548 us | 0.0486 us | |
| 78 | +| Dos2Unix_LoremIpsumUnix | 3.560 us | 0.0330 us | 0.0308 us | |
| 79 | +| Unix2Dos_LoremIpsumDos | 4.668 us | 0.0765 us | 0.0678 us | |
| 80 | +| Unix2Dos_LoremIpsumUnix | 4.872 us | 0.0892 us | 0.1539 us | |
| 81 | + |
| 82 | +### Rfc2047 |
| 83 | + |
| 84 | +| Method | Mean | Error | StdDev | |
| 85 | +|--------------------- |---------:|---------:|---------:| |
| 86 | +| Rfc2047_DecodeText | 914.6 ns | 18.19 ns | 30.40 ns | |
| 87 | +| Rfc2047_DecodePhrase | 831.7 ns | 5.32 ns | 4.15 ns | |
0 commit comments