Is there an implementation of IDictionary <K, V> with better BCL performance?

I am looking for an IDictionary implementation with better performance of the standard BCL.

I'm looking for something with constant seek time that works great with more items (> 10K) and is more GC friendly.

Ps: No, I can't write one myself :)

0


source to share


3 answers


I haven't been able to evaluate the implementation, but an alternative - and more complete - selection of generic collection classes can be obtained from the University of Copenhagen here:

http://www.itu.dk/research/c5/



They offer a number of generic dictionary implementations with different support solutions (trees, hash tables, etc.). Perhaps one of them suits your needs. Performance has been a major factor in the development of this class library.

Of course, I would recommend trying the Universal BCL class first, as it will save you time and can satisfy your performance requirements simply.

+2


source


BCL vocabulary already performs with amortized constant time and can handle 10K items easily.

You say it should be "more GC friendly" - what's your concern with the current version?



Do you add items to the dictionary frequently? If so, create it with a lot of initial ability to avoid churn.

+7


source


I think you will have a hard time finding a managed vocabulary that is faster than BCL. I tried to write one, and I quickly found that it is about as fast as it would be when you balance read / write performance.

+2


source







All Articles