Skip to content

Instantly share code, notes, and snippets.

@JimBobSquarePants
Last active December 25, 2018 21:00
Show Gist options
  • Save JimBobSquarePants/9fc411292724a9dbc3a887b9cfce157b to your computer and use it in GitHub Desktop.
Save JimBobSquarePants/9fc411292724a9dbc3a887b9cfce157b to your computer and use it in GitHub Desktop.
Imaging Benchmarks 19/04/2017

Resize

BenchmarkDotNet=v0.10.3.0, OS=Microsoft Windows 10.0.15063
Processor=Intel(R) Core(TM) i7-6600U CPU 2.60GHz, ProcessorCount=4
Frequency=2742191 Hz, Resolution=364.6719 ns, Timer=TSC
dotnet cli version=1.0.3
  [Host]     : .NET Core 4.6.25009.03, 64bit RyuJIT
  Job-YVBYQX : .NET Core 4.6.25009.03, 64bit RyuJIT

Toolchain=CoreCsProj

                    Method |       Mean |    StdDev |    Gen 0 |    Gen 1 |    Gen 2 | Allocated |
-------------------------- |----------- |---------- |--------- |--------- |--------- |---------- |
       'ImageSharp Resize' |  8.7665 ms | 0.1078 ms | 183.3333 | 152.0833 | 152.0833 |   4.59 MB |
      'ImageMagick Resize' | 62.8907 ms | 0.6899 ms |        - |        - |        - |   6.16 kB |
                 FreeImage | 12.2221 ms | 0.2100 ms | 250.0000 |        - |        - |    4.1 kB |
 'SkiaSharp Canvas Resize' |  2.7685 ms | 0.0243 ms |        - |        - |        - |   1.15 kB |
 'SkiaSharp Bitmap Resize' |  6.5434 ms | 0.0967 ms |        - |        - |  

Load Resize Save

BenchmarkDotNet=v0.10.3.0, OS=Microsoft Windows 10.0.15063
Processor=Intel(R) Core(TM) i7-6600U CPU 2.60GHz, ProcessorCount=4
Frequency=2742191 Hz, Resolution=364.6719 ns, Timer=TSC
dotnet cli version=1.0.3
  [Host]     : .NET Core 4.6.25009.03, 64bit RyuJIT
  Job-TCQDXB : .NET Core 4.6.25009.03, 64bit RyuJIT

Toolchain=CoreCsProj

                                Method |        Mean |    StdErr |     StdDev |      Median |     Gen 0 |     Gen 1 |     Gen 2 | Allocated |
-------------------------------------- |------------ |---------- |----------- |------------ |---------- |---------- |---------- |---------- |
       'ImageSharp Load, Resize, Save' | 559.9014 ms | 1.8576 ms |  7.1945 ms | 557.9842 ms | 5670.8333 | 2083.3333 | 1358.3333 | 137.53 MB |
      'ImageMagick Load, Resize, Save' | 792.2733 ms | 2.4167 ms |  9.0426 ms | 788.5338 ms |         - |         - |         - |  59.25 kB |
        'ImageFree Load, Resize, Save' | 408.4990 ms | 1.1194 ms |  4.0361 ms | 406.6774 ms | 5416.6667 |         - |         - | 114.89 kB |
      'MagicScaler Load, Resize, Save' | 148.5096 ms | 0.5062 ms |  1.9606 ms | 148.0197 ms |  625.0000 |         - |         - |   3.24 MB |
 'SkiaSharp Canvas Load, Resize, Save' | 219.0432 ms | 1.4501 ms |  5.2284 ms | 217.2815 ms | 1341.3462 |         - |         - |   3.57 MB |
 'SkiaSharp Bitmap Load, Resize, Save' | 265.7063 ms | 2.7451 ms | 15.7696 ms | 257.8925 ms | 1357.5000 |         - |         - |   3.54 MB |
@JimBobSquarePants
Copy link
Author

A definite improvement on raw resizing but still struggling with the full job. The jpeg decoder is our bottleneck here running at about 4x slower than System.Drawing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment