Comment 1 for bug 1184581

Revision history for this message
Daniel Schürmann (daschuer) wrote : Re: Fix triple hash table lookup in midicontroller.cpp

We should do a complete refactor the CO hashtables:

I have some made some measurements on a Ubuntu 32 bit system and here are the results:
(The absolute values are only for reference, they are rather un-precise and varies from run to run, but the tendency and magnitude is allays the same.)

ControlObject::get(ConfigKey()); // 2065 ns on a hashtable filled with all controls
getControlObjectThread(ConfigKey())->get(); // 1930ns on a private hashtable filled with 6 controls
pCOT->get(); // 695ns and will be much faster on a 64 bit system because double is atomic there

Conclusion:
* Size of QHash dos not put significant time on the get call.
* Saving a local pCOT speeds up get() by 3 @32bit

https://bugs.launchpad.net/mixxx/+bug/1166016 depends on this as well.