Ticket #1931 (closed enhancement: fixed)

Opened 6 years ago

Last modified 6 years ago

Improve performance of ImageJ context startup

Reported by: curtis Owned by: dscho
Priority: major Milestone: imagej2-b8-analysis
Component: Other Version:
Severity: non-issue Keywords:
Cc: Blocked By:
Blocking: #1914

Description

We need to replace IJ1's MacAdapter with the ImageJ2 OS X application handler. So we will lean on IJ2's PlatformService (specifically the MacOSXPlatform) as a replacement. It would be simplest if Fiji could simply initialize an IJ2 context right off the bat for this, but Johannes has concerns about the IJ2 startup performance.

We can optimize many of the bottlenecks by making each service less aggressive about what it does during its initialize phase. This should improve the startup time of ImageJ2 substantially.

Change History

comment:1 Changed 6 years ago by dscho

Curtis: you addressed this in  https://github.com/imagej/imagej/commit/c4a8334, no?

comment:2 Changed 6 years ago by curtis

Partially. Unfortunately, the startup time of some services (e.g., CommandService) is not trivial to optimize.

This ticket is really about making the ImageJ2 context start up quickly enough to avoid negatively impacting Fiji's performance. Please do some benchmarks and close this ticket if happy. Or if *not* happy (which wouldn't surprise me; there is much more optimization that could potentially be done), let's detail here what other steps we can take, and/or what our end goal is.

comment:3 Changed 6 years ago by dscho

  • Status changed from new to closed
  • Resolution set to fixed

Okay, I just did a performance benchmark (very quick and dirty) and it takes less than two seconds now. As you can see in  https://github.com/fiji/fiji/commit/119b547fea075e1606145c1c3f1c80c5b96c938e#L1R113 I told Fiji to get the context in a thread, after showing the GUI, so I think all is well now.

We can always revisit should there be complaints.

Note: See TracTickets for help on using tickets.