From c4ad3f73033c7e0511c3e7df961e1232cc503478 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 26 Feb 2014 12:32:06 +0100 Subject: IRC. --- hurd/libihash.mdwn | 54 +++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 39 insertions(+), 15 deletions(-) (limited to 'hurd/libihash.mdwn') diff --git a/hurd/libihash.mdwn b/hurd/libihash.mdwn index be20fa58..57588d55 100644 --- a/hurd/libihash.mdwn +++ b/hurd/libihash.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2009, 2010, 2011, 2012, 2013 Free Software +[[!meta copyright="Copyright © 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable @@ -22,23 +22,44 @@ License|/fdl]]."]]"""]] # Open Issues - * [[viengoos libhurd-ihash|microkernel/viengoos/projects/new_hash_function]] +## Collisions - IRC, freenode, #hurd, 2008/2009 +Viengoos: [[microkernel/viengoos/projects/new_hash_function]]. - so, we need a new ihash implementation - marcusb: When 80% full, the collision rate is very high. - marcusb: I tested using 512mb / 4096 entries - marcusb: Changing the load factor to 30% resulted in my program - running more than an order of magnitude faster. - yeah, it shouldn't get so full - don't we do an exponential back-off in the array size? - of course it's clear we can do much better - the ihash algo is very simple - I'm not even sure it makes much sense to have a generic - library - * [[community/gsoc/project_ideas/object_lookups]] +### IRC, freenode, #hurd, 2008/2009 + + so, we need a new ihash implementation + marcusb: When 80% full, the collision rate is very high. + marcusb: I tested using 512mb / 4096 entries + marcusb: Changing the load factor to 30% resulted in my program + running more than an order of magnitude faster. + yeah, it shouldn't get so full + don't we do an exponential back-off in the array size? + of course it's clear we can do much better + the ihash algo is very simple + I'm not even sure it makes much sense to have a generic + library + + +## Reader-Writer Locks + +### IRC, freenode, #hurd, 2013-12-09 + + btw, why don't we use rwlocks for serializing access to our + hash tables ? + teythoon: we definitely could + ok + teythoon: we definitely could use rcu *whistles* + should we ? + i don't know + yeah, ofc + rwlocks have some overhead compared to mutexes + and our mutexes are already quite expensive + our condition variables are also not optimized + + +# [[community/gsoc/project_ideas/Object_Lookups]] # Alternatives? @@ -64,3 +85,6 @@ License|/fdl]]."]]"""]] * * CCAN's htable, idtree + + * Not actually use a hashing data structure; see [[libports]], *Open Issues*, + *IRC, freenode, #hurd, 2013-11-14*. -- cgit v1.2.3