From f677bbb88a47fc68742449622271851bfa1b80a0 Mon Sep 17 00:00:00 2001 From: Manodasan Wignarajah Date: Wed, 1 Jul 2020 19:02:57 -0700 Subject: [PATCH] Update readme and comments. --- Benchmarks/Program.cs | 8 ++++---- README.md | 6 +++++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Benchmarks/Program.cs b/Benchmarks/Program.cs index 03a29cf41..f1c3b4d24 100644 --- a/Benchmarks/Program.cs +++ b/Benchmarks/Program.cs @@ -33,8 +33,8 @@ public CustomConfig() // Test WinMD support #if NETCOREAPP3_1 - // BenchmarkDotNet will rebuild the project with a project reference when this exe is ran and - // in the same folder as it we have the application manifest binplaced which we want to embed in the new exe. + // BenchmarkDotNet will rebuild the project with a project reference to this project when this project's output exe is ran. It + // will be ran from the same folder as where we have the application manifest binplaced which we want to embed in the new exe. string manifestFile = Path.Combine( Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "Benchmarks.manifest"); @@ -62,8 +62,8 @@ public CustomConfig() // Custom tool chain for building the benchmark with WinMDs as we need to execute the // exe version of the benchmark rather than the dll version which runs under dotnet cli. - // This is becuase we need to be able to embed a side by side manifest for reg free winrt - // and to enable COM to find the WinMDs. + // This is because we need to be able to embed a side by side manifest for reg free winrt + // and we need COM to be able to find the WinMDs. private class NetCore3ToolChainWithNativeExecution : Toolchain { public NetCore3ToolChainWithNativeExecution() diff --git a/README.md b/README.md index 0836f9f0d..e1286a1df 100644 --- a/README.md +++ b/README.md @@ -117,12 +117,16 @@ The **/TestComponentCSharp** folder contains an implementation of a WinRT test c ## /Projections -The **/Projections** folder contains several projects for generating and building projections from the Windows SDK, WinUI, and Test metadata (produced by the TestWinRT and TestComponentCSharp projects). +The **/Projections** folder contains several projects for generating and building projections from the Windows SDK, WinUI, Benchmark (produced by the BenchmarkComponent project), and Test metadata (produced by the TestWinRT and TestComponentCSharp projects). ## /UnitTest The **/UnitTest** folder contains unit tests for validating the Windows SDK, WinUI, and Test projections generated above. All pull requests should ensure that this project executes without errors. +## /Benchmarks + +The **/Benchmarks** folder contains benchmarks written using BenchmarkDotNet to track the performance of scenarios in the generated projection. To run the benchmarks using the CsWinRT projection, run **benchmark.cmd**. To run the same benchmarks using the built-in WinMD support in NET Core 3.1 to compare against as a basline, run **benchmark_winmd.cmd**. + ## /WinUIDesktopSample The **/WinUIDesktopSample** contains an end-to-end sample app that uses the Windows SDK and WinUI projections generated above.