Skip to content

NativeMemoryProfiler doesn't report allocations in v0.12.1.1432 Nightly #1561

Closed
@JimBobSquarePants

Description

@JimBobSquarePants

I'm running the following benchmark to compare graphics libraries.

https://github.com/JimBobSquarePants/core-imaging-playground/tree/ac506f591f7448cb4b2250c7fb9717a976faf198

With v0.12.1 I get the following result:

BenchmarkDotNet=v0.12.1, OS=Windows 10.0.19041.572 (2004/?/20H1)
Intel Core i7-8650U CPU 1.90GHz (Kaby Lake R), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=3.1.403
  [Host]            : .NET Core 3.1.9 (CoreCLR 4.700.20.47201, CoreFX 4.700.20.47203), X64 RyuJIT
  .Net Core 3.1 CLI : .NET Core 3.1.9 (CoreCLR 4.700.20.47201, CoreFX 4.700.20.47203), X64 RyuJIT

Job=.Net Core 3.1 CLI  Toolchain=.NET Core 3.1  IterationCount=5
LaunchCount=1  WarmupCount=5
Method Mean Error StdDev Ratio Gen 0 Gen 1 Gen 2 Allocated Allocated native memory Native memory leak
'System.Drawing Load, Resize, Save' 396.97 ms 14.314 ms 2.215 ms 1.00 - - - 10.2 KB 11375.79 KB 738.27 KB
'ImageSharp Load, Resize, Save' 221.30 ms 6.784 ms 1.762 ms 0.56 - - - 1985.19 KB 24.9 KB 9.14 KB
'ImageMagick Load, Resize, Save' 437.39 ms 17.609 ms 4.573 ms 1.10 - - - 53.89 KB 60956.9 KB 0.66 KB
'ImageFree Load, Resize, Save' 235.38 ms 3.423 ms 0.889 ms 0.59 6000.0000 - - 69.75 KB 49140.58 KB 58.91 KB
'MagicScaler Load, Resize, Save' 72.62 ms 1.089 ms 0.168 ms 0.18 - - - 103.91 KB 3277.21 KB 20.98 KB
'SkiaSharp Canvas Load, Resize, Save' 251.91 ms 8.000 ms 2.078 ms 0.63 - - - 99.39 KB 69715.49 KB 1663.01 KB
'SkiaSharp Bitmap Load, Resize, Save' 251.14 ms 5.455 ms 1.417 ms 0.63 - - - 85.47 KB 70425.35 KB 494.62 KB
'NetVips Load, Resize, Save' 150.29 ms 2.230 ms 0.579 ms 0.38 - - - 47.14 KB 84730.41 KB 7532.25 KB

However, I thought the reported leaks seems odd. I saw #1427 and the merged fix in #1451 so updated to the latest (at this time v0.12.1.1432-nightly) to take advantage of the fix.

Unfortunately all native allocations now go unreported:

BenchmarkDotNet=v0.12.1.1432-nightly, OS=Windows 10.0.19041.572 (2004/May2020Update/20H1)
Intel Core i7-8650U CPU 1.90GHz (Kaby Lake R), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=3.1.403
  [Host]            : .NET Core 3.1.9 (CoreCLR 4.700.20.47201, CoreFX 4.700.20.47203), X64 RyuJIT
  .Net Core 3.1 CLI : .NET Core 3.1.9 (CoreCLR 4.700.20.47201, CoreFX 4.700.20.47203), X64 RyuJIT

Job=.Net Core 3.1 CLI  Toolchain=.NET Core 3.1  IterationCount=5
LaunchCount=1  WarmupCount=5
Method Mean Error StdDev Ratio Gen 0 Gen 1 Gen 2 Allocated Allocated native memory Native memory leak
'System.Drawing Load, Resize, Save' 402.30 ms 25.398 ms 6.596 ms 1.00 - - - 10.2 KB - -
'ImageSharp Load, Resize, Save' 221.72 ms 17.159 ms 4.456 ms 0.55 - - - 1985.19 KB - -
'ImageMagick Load, Resize, Save' 429.75 ms 21.762 ms 5.651 ms 1.07 - - - 53.89 KB - -
'ImageFree Load, Resize, Save' 234.83 ms 8.620 ms 2.239 ms 0.58 6000.0000 - - 69.73 KB - -
'MagicScaler Load, Resize, Save' 73.62 ms 4.423 ms 1.149 ms 0.18 - - - 102.78 KB - -
'SkiaSharp Canvas Load, Resize, Save' 252.89 ms 14.303 ms 2.213 ms 0.63 - - - 99.34 KB - -
'SkiaSharp Bitmap Load, Resize, Save' 250.36 ms 4.874 ms 0.754 ms 0.62 - - - 85.47 KB - -
'NetVips Load, Resize, Save' 148.82 ms 2.542 ms 0.393 ms 0.37 - - - 47.14 KB - -

I was going to upload the traces but they are far too big for my bandwidth to allow. Please let me know if you require any more information.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions