diff options
Diffstat (limited to 'benches/Jellyfin.Common.Benches/HexEncodeBenches.cs')
| -rw-r--r-- | benches/Jellyfin.Common.Benches/HexEncodeBenches.cs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/benches/Jellyfin.Common.Benches/HexEncodeBenches.cs b/benches/Jellyfin.Common.Benches/HexEncodeBenches.cs new file mode 100644 index 000000000..7abf93c51 --- /dev/null +++ b/benches/Jellyfin.Common.Benches/HexEncodeBenches.cs @@ -0,0 +1,32 @@ +using System; +using BenchmarkDotNet.Attributes; +using BenchmarkDotNet.Running; +using MediaBrowser.Common; + +namespace Jellyfin.Common.Benches +{ + [MemoryDiagnoser] + public class HexEncodeBenches + { + private byte[] _data; + + [Params(0, 10, 100, 1000, 10000, 1000000)] + public int N { get; set; } + + [GlobalSetup] + public void GlobalSetup() + { + _data = new byte[N]; + new Random(42).NextBytes(_data); + } + + [Benchmark] + public string HexEncode() => Hex.Encode(_data); + + [Benchmark] + public string BitConverterToString() => BitConverter.ToString(_data); + + [Benchmark] + public string BitConverterToStringWithReplace() => BitConverter.ToString(_data).Replace("-", ""); + } +} |
