Return-Path: X-Original-To: apmail-felix-dev-archive@www.apache.org Delivered-To: apmail-felix-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 78519174A6 for ; Wed, 11 Mar 2015 19:04:42 +0000 (UTC) Received: (qmail 7531 invoked by uid 500); 11 Mar 2015 19:04:39 -0000 Delivered-To: apmail-felix-dev-archive@felix.apache.org Received: (qmail 7466 invoked by uid 500); 11 Mar 2015 19:04:39 -0000 Mailing-List: contact dev-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list dev@felix.apache.org Received: (qmail 7454 invoked by uid 99); 11 Mar 2015 19:04:39 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 Mar 2015 19:04:39 +0000 Date: Wed, 11 Mar 2015 19:04:39 +0000 (UTC) From: "Guillaume Nodet (JIRA)" To: dev@felix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Comment Edited] (FELIX-4656) Improve memory usage and speed of the resolver MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/FELIX-4656?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14357406#comment-14357406 ] Guillaume Nodet edited comment on FELIX-4656 at 3/11/15 7:04 PM: ----------------------------------------------------------------- The missing methods are fixed. I hit the problem too and I've pushed the fixes to my branch. The CopyOnWriteList is similar to the CopyOnWriteArrayList but avoids the synchronization overhead, as the resolver is single threaded. was (Author: gnt): The missing methods are fixed. I hit the problem too and I've pushed the fixes to my branch. The CopyOnWriteList is similar to the CopyOnWriteArrayList but avoids the synchronization overhead, as the result is single threaded. > Improve memory usage and speed of the resolver > ---------------------------------------------- > > Key: FELIX-4656 > URL: https://issues.apache.org/jira/browse/FELIX-4656 > Project: Felix > Issue Type: Improvement > Components: Resolver > Reporter: Guillaume Nodet > Assignee: Guillaume Nodet > Fix For: resolver-1.2.0 > > > During big resolutions (> 100 bundles), the memory consumption can become very huge, mostly by keeping a lot of copies of the Candidates object. > I want to lower the memory requirements of the resolver without touching the algorithm at all (which would be a different improvement). > This can be done by using : > * lower memory intensive collections > * do smart copies of those collections (where they would only actually copy the data when modify) > The second item is slightly more difficult to achieve, as the maps in the Candidate objects contains Set and List, which would mean that those must be copied too. So it could actually be complementary, if achievable. > For the first one, the HashMap and HashSet are very memory intensive. I'll introduce two new collections which will lower the requirements. -- This message was sent by Atlassian JIRA (v6.3.4#6332)