denominator icon indicating copy to clipboard operation
denominator copied to clipboard

CLI parsing overhead seems a bit excessive

Open codefromthecrypt opened this issue 11 years ago • 1 comments

Low priority issue, but open for any interested party to attack.

Using guava stopwatch, I tracked the time to populate and build airline CliBuilder.build() at 108ms. The time to execute Cli.parse is 21ms. The parsing time is an order of magnitude less than processing, but together they amount to 130ms... 1/3 of the time inclusive of launching the JVM when using the mock provider!

Right now, remote provider calls include a heavy overhead due to the jclouds dependency and how its guice is wired. This overhead is so large that addressing the jclouds dep is a lower hanging fruit wrt performance and will be tackled in a separate issue.

That said, we'll at some point want to address CLI parsing overhead, particularly as jopt-simple overhead is 13ms or so. My suspicion is that the runtime annotation processing in airline is the cause for this overhead, and a Dagger-like approach could rid the excess.

codefromthecrypt avatar May 25 '13 20:05 codefromthecrypt

issue #198 should fix this, and we should verify it does

codefromthecrypt avatar Jul 08 '13 02:07 codefromthecrypt