Opened 10 years ago
Closed 9 years ago
#1972 closed enhancement (done)
The TypeSelector dialog takes too long to show
Reported by: | abeham | Owned by: | gkronber |
---|---|---|---|
Priority: | highest | Milestone: | HeuristicLab 3.3.10 |
Component: | PluginInfrastructure | Version: | 3.3.7 |
Keywords: | Cc: |
Description
When creating a new user-defined algorithm and adding a LookupParameter<T>, the time to wait until one can select a certain type for T is too long. I measured the "Select Type of Generic Type Parameter" dialog to appear after 30 seconds on my notebook. The second time is faster (3 seconds), I grant, but if you open the dialog for creating parameters in a different view, it takes 30 seconds again. While waiting HL appears frozen as the operation blocks the UI thread.
Attachments (1)
Change History (14)
comment:1 Changed 10 years ago by abeham
- Component changed from ### Undefined ### to PluginInfrastructure
- Owner changed from swagner to gkronber
comment:2 Changed 10 years ago by ascheibe
comment:3 Changed 10 years ago by ascheibe
- Owner changed from gkronber to architects
- Status changed from new to assigned
comment:4 Changed 10 years ago by gkronber
- Owner changed from architects to gkronber
- Priority changed from high to highest
Two ideas from our discussions:
- types can be discovered (asynchronously?) at start-up and then be cached by the plug-in infrastructure
- only assemblies belonging to plug-ins should be searched for HL types (currently, all types in all loaded assemblies are searched, including framework-assemblies)
comment:5 Changed 9 years ago by gkronber
The profiler showed that interestingly the problem is not type discovery but the ImageList used in the TypeSelector!
comment:6 Changed 9 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 3.3.10
- Status changed from assigned to accepted
comment:7 Changed 9 years ago by gkronber
r10497: workaround to improve performance of type selector (the problem is that imagelist methods are SLOW)
comment:8 Changed 9 years ago by gkronber
- Owner changed from gkronber to abeham
- Status changed from accepted to reviewing
After r10497 "Select Type of Generic Type Parameter" dialog takes around 1sec to appear on my workstation.
comment:9 Changed 9 years ago by gkronber
I also attached a patch for the plugin infrastructure to cache assemblies for type discovery. However, after the simple change in the TypeSelector (r10497) the effect of further changes in the plugin infrastructure is negligible.
comment:10 Changed 9 years ago by abeham
This is much faster now, great!
comment:11 Changed 9 years ago by abeham
- Summary changed from Types should be discovered faster to The TypeSelector dialog takes too long to show
Ticket title update
comment:12 Changed 9 years ago by mkommend
- Owner changed from abeham to gkronber
- Status changed from reviewing to readytorelease
comment:13 Changed 9 years ago by gkronber
- Resolution set to done
- Status changed from readytorelease to closed
Possible duplicate of #1907