views:

25

answers:

0

I've recently acquired responsibility for a critical system which is a data store featuring memory-mapped IO, multi-threaded (local) clients, and an interesting mixture of constraints. It has to store a mix of serial and indexed data including sparse 3D data of varying levels of detail.

Performance is critical, including being able to work with gigabytes of data on Win32 including working on XP but I only have to worry about Windows implementations. It is mostly implemented but I have to worry about debugging and improving performance.

I'm looking for tips on where to study, book recommendations, themes etc. I have a varied 25+ years experience including writing Quicktime components and a lot of work with ISAM data stores but not having to worry about the finer points of performance and cache coherence in this kind of system. I don't have traditional computer science education so if there's a theoretical gap I need to fill, please tell me!

Areas I was considering are the data stores used for some games, file system implementations, git internals and books such as Maurice Herlihy's The Art of Multiprocessor Programming.