[
https://issues.apache.org/jira/browse/FELIX-3034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13084247#comment-13084247
]
Richard S. Hall commented on FELIX-3034:
----------------------------------------
I investigated using threads to parallelize re-loading previously cached
bundles. It doesn't parallelize very well since the re-loading of a bundle is
actually split into two halves: 1) opening the JAR file and reading the
manifest and 2) parsing the manifest and creating the runtime objects.
I tried to parallelize the second half first and performance actually got
worse. So I tried to parallelize the first half instead and performance was
still worse. The only other possibility would be to do a bigger refactoring of
how bundles are reloaded so we could parallelize both halves in one go. This
was more work than I wanted to take on, especially considering it doesn't
appear likely to show results given the previous two experiments.
> Optimize loading of bundles from cache
> --------------------------------------
>
> Key: FELIX-3034
> URL: https://issues.apache.org/jira/browse/FELIX-3034
> Project: Felix
> Issue Type: Improvement
> Components: Framework
> Affects Versions: framework-3.2.2
> Reporter: Sahoo
> Fix For: framework-4.0.0
>
>
> Profiler shows that significant time of Felix.init() is spent in IO. Since
> bundle cache is maintained per bundle, it should be possible to have multiple
> threads read it into memory. That might save some time. Discussed this with
> Richard earlier on this and he suggested filing an issue to this effect.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira