Re: [PATCH 1/1] Improve performance of package list expansion.

Matthew Hanna (BLOOMBERG/ 731 LEX) mhanna21 at bloomberg.net
Sun Jun 19 12:57:31 UTC 2016


Thanks for the quick reply.  Yes, I forgot to attach it.  Should be attached now.

Matthew

From: nicholson at endlessm.com At: Jun 18 2016 10:19:35
To: MATTHEW HANNA (BLOOMBERG/ 731 LEX)
Cc: pkg-config at lists.freedesktop.org
Subject: Re: [PATCH 1/1] Improve performance of package list expansion.


Hi Matthew, 
I don't see the patch. Did you forget to attach it? 
Dan 
On Jun 18, 2016 6:31 AM, "Matthew Hanna (BLOOMBERG/ 731 LEX)" <mhanna21 at bloomberg.net> wrote:

In practice, for library sets with a high degree of dependency, iteration over the tree with revisiting results in significant slow down at best and pkg-config failure due to memory exhaustion at worst.  This patch replaces the 'in_requires_chain' flag that halted circular dependencies with a hash table that marks visited package nodes.  The resulting algorithm is equivalent to a topological sort.  Although a boolean flag on each node could be used to implement the algorithm, resetting the flag to false can only be done after the algorithm is complete, creating a bit of extra bookkeeping.  Instead, I chose to use a new hash table to record the visits, reducing the bookkeeping to a call to 'g_hash_table_destroy'.
_______________________________________________
pkg-config mailing list
pkg-config at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/pkg-config


         _______________________________________________
pkg-config mailing list
pkg-config at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/pkg-config
  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/pkg-config/attachments/20160619/b6d4e8b4/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Improve-performance-of-packa.patch
Type: application/octet-stream
Size: 4810 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/pkg-config/attachments/20160619/b6d4e8b4/attachment.obj>


More information about the pkg-config mailing list