diff --git a/tests/ImageSharp.Benchmarks/Codecs/DecodeWebp.cs b/tests/ImageSharp.Benchmarks/Codecs/DecodeWebp.cs index ff1307b546..0bd0c4e8dd 100644 --- a/tests/ImageSharp.Benchmarks/Codecs/DecodeWebp.cs +++ b/tests/ImageSharp.Benchmarks/Codecs/DecodeWebp.cs @@ -21,10 +21,10 @@ namespace SixLabors.ImageSharp.Benchmarks.Codecs private string TestImageLosslessFullPath => Path.Combine(TestEnvironment.InputImagesDirectoryFullPath, this.TestImageLossless); - [Params(TestImages.WebP.Lossy.Alpha1)] + [Params(TestImages.WebP.Lossy.Earth)] public string TestImageLossy { get; set; } - [Params(TestImages.WebP.Lossless.BikeThreeTransforms)] + [Params(TestImages.WebP.Lossless.Earth)] public string TestImageLossless { get; set; } [GlobalSetup] @@ -84,5 +84,29 @@ namespace SixLabors.ImageSharp.Benchmarks.Codecs } } } + + /* Results 18.03.2020 + * BenchmarkDotNet=v0.12.0, OS=Windows 10.0.18362 + Intel Core i7-6700K CPU 4.00GHz (Skylake), 1 CPU, 8 logical and 4 physical cores + .NET Core SDK=3.1.200 + [Host] : .NET Core 3.1.2 (CoreCLR 4.700.20.6602, CoreFX 4.700.20.6702), X64 RyuJIT + Job-TLYXIR : .NET Framework 4.8 (4.8.4121.0), X64 RyuJIT + Job-HPKRXU : .NET Core 2.1.16 (CoreCLR 4.6.28516.03, CoreFX 4.6.28516.10), X64 RyuJIT + Job-OBFQMR : .NET Core 3.1.2 (CoreCLR 4.700.20.6602, CoreFX 4.700.20.6702), X64 RyuJIT + | Method | Runtime | TestImageLossy | TestImageLossless | Mean | Error | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated | + |--------------------------- |-------------- |--------------------- |--------------------- |----------:|----------:|---------:|-----------:|----------:|----------:|-------------:| + | 'Magick Lossy WebP' | .NET 4.7.2 | WebP/(...).webp [21] | WebP/(...).webp [24] | 70.37 ms | 9.234 ms | 0.506 ms | - | - | - | 32.05 KB | + | 'ImageSharp Lossy Webp' | .NET 4.7.2 | WebP/(...).webp [21] | WebP/(...).webp [24] | 211.77 ms | 8.055 ms | 0.442 ms | 19000.0000 | - | - | 82297.31 KB | + | 'Magick Lossless WebP' | .NET 4.7.2 | WebP/(...).webp [21] | WebP/(...).webp [24] | 49.35 ms | 1.099 ms | 0.060 ms | - | - | - | 15.32 KB | + | 'ImageSharp Lossless Webp' | .NET 4.7.2 | WebP/(...).webp [21] | WebP/(...).webp [24] | 494.34 ms | 5.505 ms | 0.302 ms | 2000.0000 | 1000.0000 | 1000.0000 | 151801.78 KB | + | 'Magick Lossy WebP' | .NET Core 2.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 70.21 ms | 1.440 ms | 0.079 ms | - | - | - | 14.8 KB | + | 'ImageSharp Lossy Webp' | .NET Core 2.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 142.32 ms | 6.046 ms | 0.331 ms | 9000.0000 | - | - | 40610.23 KB | + | 'Magick Lossless WebP' | .NET Core 2.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 49.44 ms | 0.258 ms | 0.014 ms | - | - | - | 14.3 KB | + | 'ImageSharp Lossless Webp' | .NET Core 2.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 206.45 ms | 11.093 ms | 0.608 ms | 2666.6667 | 1666.6667 | 1000.0000 | 151758.87 KB | + | 'Magick Lossy WebP' | .NET Core 3.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 69.69 ms | 1.147 ms | 0.063 ms | - | - | - | 14.42 KB | + | 'ImageSharp Lossy Webp' | .NET Core 3.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 121.72 ms | 2.373 ms | 0.130 ms | 9000.0000 | - | - | 40050.06 KB | + | 'Magick Lossless WebP' | .NET Core 3.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 49.37 ms | 1.865 ms | 0.102 ms | - | - | - | 14.27 KB | + | 'ImageSharp Lossless Webp' | .NET Core 3.1 | WebP/(...).webp [21] | WebP/(...).webp [24] | 194.03 ms | 37.759 ms | 2.070 ms | 2000.0000 | 1000.0000 | 1000.0000 | 151756.38 KB | + */ } } diff --git a/tests/ImageSharp.Tests/TestImages.cs b/tests/ImageSharp.Tests/TestImages.cs index 517fe38f1b..e57d268171 100644 --- a/tests/ImageSharp.Tests/TestImages.cs +++ b/tests/ImageSharp.Tests/TestImages.cs @@ -404,6 +404,7 @@ namespace SixLabors.ImageSharp.Tests public static class Lossless { + public const string Earth = "WebP/earth_lossless.webp"; public const string WithExif = "WebP/exif_lossless.webp"; public const string WithIccp = "WebP/iccp_lossless.webp"; public const string NoTransform1 = "WebP/lossless_vec_1_0.webp"; @@ -454,6 +455,7 @@ namespace SixLabors.ImageSharp.Tests public static class Lossy { + public const string Earth = "WebP/earth_lossy.webp"; public const string WithExif = "WebP/exif_lossy.webp"; public const string WithIccp = "WebP/iccp_lossy.webp"; diff --git a/tests/Images/Input/WebP/earth_lossless.webp b/tests/Images/Input/WebP/earth_lossless.webp new file mode 100644 index 0000000000..8729ece9ca --- /dev/null +++ b/tests/Images/Input/WebP/earth_lossless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ea7fad78cd68e27c1616f4a99de52397f5485259c7adbd674a5c9a362885216 +size 2447273 diff --git a/tests/Images/Input/WebP/earth_lossy.webp b/tests/Images/Input/WebP/earth_lossy.webp new file mode 100644 index 0000000000..8f1cebc3fa --- /dev/null +++ b/tests/Images/Input/WebP/earth_lossy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71263c0db7b8cd2e787b8554fd40aff1d46a753646fb2062966ca07ac040e841 +size 852402