Created
May 31, 2017 09:04
-
-
Save AlleSchonWeg/605fdb08d4185cd248a690edb07cd856 to your computer and use it in GitHub Desktop.
SimplePerfTest
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using ImageSharp; | |
using System; | |
using System.Diagnostics; | |
using System.Drawing; | |
using System.IO; | |
namespace ConsoleApp1 | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
var sw = new Stopwatch(); | |
for (int i = 0; i < 50; i++) | |
{ | |
sw.Restart(); | |
RenderGdi(); | |
sw.Stop(); | |
Console.WriteLine("GDI: " + sw.Elapsed); | |
sw.Restart(); | |
RenderSharp(); | |
sw.Stop(); | |
Console.WriteLine("ImageSharp: " + sw.Elapsed); | |
Console.WriteLine(); | |
} | |
Console.Read(); | |
} | |
private static void RenderGdi() | |
{ | |
using (var img = new Bitmap(400, 400)) | |
{ | |
using (var graphics = Graphics.FromImage(img)) | |
{ | |
graphics.Clear(Color.Black); | |
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(img.Width / 2 - 50, img.Height / 2 - 25, 100, 50); | |
graphics.FillRectangle(Brushes.Red, rect); | |
} | |
} | |
} | |
private static void RenderSharp() | |
{ | |
using (var img = new Image<Rgba32>(400, 400)) | |
{ | |
img.Fill(Rgba32.Black); | |
var sRect = new ImageSharp.Rectangle(img.Width / 2 - 50, img.Height / 2 - 25, 100, 50); | |
img.Fill(Rgba32.Red, sRect); | |
} | |
} | |
} | |
} |
BenchmarkDotNet=v0.10.6, OS=Windows 10 Redstone 1 (10.0.14393)
Processor=Intel Xeon CPU E5-2667 0 2.90GHz, ProcessorCount=4
Frequency=10000000 Hz, Resolution=100.0000 ns, Timer=UNKNOWN
[Host] : Clr 4.0.30319.42000, 32bit LegacyJIT-v4.6.1648.0
DefaultJob : Clr 4.0.30319.42000, 32bit LegacyJIT-v4.6.1648.0
Method | Mean | Error | StdDev |
---|---|---|---|
RenderGdi | 767.8 us | 36.62 us | 107.4 us |
RenderSharp | 12,655.2 us | 238.32 us | 199.0 us |
BenchmarkDotNet=v0.10.6, OS=Windows 10 Redstone 1 (10.0.14393)
Processor=Intel Xeon CPU E5-2667 0 2.90GHz, ProcessorCount=4
Frequency=10000000 Hz, Resolution=100.0000 ns, Timer=UNKNOWN
[Host] : Clr 4.0.30319.42000, 32bit LegacyJIT-v4.7.2053.0
DefaultJob : Clr 4.0.30319.42000, 32bit LegacyJIT-v4.7.2053.0
Method | Mean | Error | StdDev | Median |
---|---|---|---|---|
RenderGdi | 821.2 us | 40.64 us | 119.18 us | 820.2 us |
RenderSharp | 11,582.6 us | 231.40 us | 507.92 us | 11,672.2 us |
RenderSkia | 537.4 us | 20.81 us | 61.05 us | 554.0 us |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Result (AnyCPU, Release):
GDI: 00:00:00.0216496
ImageSharp: 00:00:00.2606743
GDI: 00:00:00.0009419
ImageSharp: 00:00:00.0211199
GDI: 00:00:00.0008744
ImageSharp: 00:00:00.0214412
GDI: 00:00:00.0010461
ImageSharp: 00:00:00.0207938
GDI: 00:00:00.0008541
ImageSharp: 00:00:00.0191427
GDI: 00:00:00.0007744
ImageSharp: 00:00:00.0191028
GDI: 00:00:00.0007974
ImageSharp: 00:00:00.0182246
GDI: 00:00:00.0007848
ImageSharp: 00:00:00.0164926
GDI: 00:00:00.0008656
ImageSharp: 00:00:00.0164398
GDI: 00:00:00.0007082
ImageSharp: 00:00:00.0156905
GDI: 00:00:00.0007238
ImageSharp: 00:00:00.0176712
GDI: 00:00:00.0007721
ImageSharp: 00:00:00.0166517
GDI: 00:00:00.0007985
ImageSharp: 00:00:00.0175148
GDI: 00:00:00.0007054
ImageSharp: 00:00:00.0193243
GDI: 00:00:00.0007648
ImageSharp: 00:00:00.0153650
GDI: 00:00:00.0007401
ImageSharp: 00:00:00.0167418
GDI: 00:00:00.0007158
ImageSharp: 00:00:00.0167236
GDI: 00:00:00.0006815
ImageSharp: 00:00:00.0180900
GDI: 00:00:00.0007574
ImageSharp: 00:00:00.0158863
GDI: 00:00:00.0008574
ImageSharp: 00:00:00.0156818
GDI: 00:00:00.0007626
ImageSharp: 00:00:00.0188905
GDI: 00:00:00.0007223
ImageSharp: 00:00:00.0179966
GDI: 00:00:00.0007129
ImageSharp: 00:00:00.0151621
GDI: 00:00:00.0006731
ImageSharp: 00:00:00.0151502
GDI: 00:00:00.0006293
ImageSharp: 00:00:00.0150651
GDI: 00:00:00.0007606
ImageSharp: 00:00:00.0172274
GDI: 00:00:00.0006451
ImageSharp: 00:00:00.0157770
GDI: 00:00:00.0006696
ImageSharp: 00:00:00.0144958
GDI: 00:00:00.0006186
ImageSharp: 00:00:00.0143882
GDI: 00:00:00.0006169
ImageSharp: 00:00:00.0126236
GDI: 00:00:00.0005991
ImageSharp: 00:00:00.0156097
GDI: 00:00:00.0006207
ImageSharp: 00:00:00.0137437
GDI: 00:00:00.0005717
ImageSharp: 00:00:00.0140664
GDI: 00:00:00.0006271
ImageSharp: 00:00:00.0121928
GDI: 00:00:00.0005543
ImageSharp: 00:00:00.0138985
GDI: 00:00:00.0006027
ImageSharp: 00:00:00.0127483
GDI: 00:00:00.0005769
ImageSharp: 00:00:00.0146666
GDI: 00:00:00.0006261
ImageSharp: 00:00:00.0125715
GDI: 00:00:00.0006636
ImageSharp: 00:00:00.0147847
GDI: 00:00:00.0007944
ImageSharp: 00:00:00.0136039
GDI: 00:00:00.0010871
ImageSharp: 00:00:00.0161727
GDI: 00:00:00.0008471
ImageSharp: 00:00:00.0156460
GDI: 00:00:00.0007202
ImageSharp: 00:00:00.0139921
GDI: 00:00:00.0007291
ImageSharp: 00:00:00.0159240
GDI: 00:00:00.0007788
ImageSharp: 00:00:00.0196280
GDI: 00:00:00.0007229
ImageSharp: 00:00:00.0160295
GDI: 00:00:00.0006196
ImageSharp: 00:00:00.0140500
GDI: 00:00:00.0009960
ImageSharp: 00:00:00.0127800
GDI: 00:00:00.0007243
ImageSharp: 00:00:00.0136238
GDI: 00:00:00.0006985
ImageSharp: 00:00:00.0144192