Skip to content

Updated numbers#2

Open
adamsitnik wants to merge 20 commits intojkotas:masterfrom
adamsitnik:update
Open

Updated numbers#2
adamsitnik wants to merge 20 commits intojkotas:masterfrom
adamsitnik:update

Conversation

@adamsitnik
Copy link
Copy Markdown

Disclaimer: I don't expect this PR to get merged, I just want to share updated perf numbers to start a discussion.

Empty: an empty console app that prints a boolean and string to the output
EmpyAOT - same app compiled with CoreRT (I've used the 6.0 bits of Microsoft.DotNet.ILCompiler)
Corefxlab - app that uses corefxlab parser (I had to copy-paste the code as the nuget package is not available anymore) to parse a boolean and a string
SystemCommandLineBefore - app that uses System.CommandLine before all recent perf work (PRs)
SystemCommandLineAfter - app that uses System.CommandLine with all recent perf improvements
SystemCommandLineAfterR2R - same as above, but published with PublishReadyToRun=true
SystemCommandLineAfterAOT - same as above, but compiled to native library (possible due to all the @jonsequitur recent work)

Method Args Mean Error StdDev
Empty --bool -s test 35.67 ms 1.130 ms 1.301 ms
EmptyAOT --bool -s test 21.24 ms 0.643 ms 0.714 ms
Corefxlab --bool -s test 54.72 ms 1.214 ms 1.398 ms
SystemCommandLineBefore --bool -s test 79.65 ms 1.108 ms 1.232 ms
SystemCommandLineAfter --bool -s test 60.50 ms 1.123 ms 1.248 ms
SystemCommandLineAfterR2R --bool -s test 73.21 ms 1.332 ms 1.480 ms
SystemCommandLineAfterAOT --bool -s test 28.09 ms 0.651 ms 0.697 ms

The initial gap with coreflab parser was 25ms for given scenario. We were able to reduce this gap by 20ms.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant