Dear Elliott, On Sun, Dec 21, 2008 at 09:35:06PM -0800, Elliott Slaughter wrote:
> I am exploring Elephant/BDB as a backend for a video game I am writing. I > have ignored performance considerations so far, but on some larger maps > (around 100 objects), performance is abominably slow (around 5 fps). The > same maps run about 10 times faster (about 50 fps) when using completely > in-memory hash-tables. > > Based on profiling, it appears that the main bottleneck is persistent slot > lookup. I remember reading that Elephant reads from file on every slot read, > which could explain this result. I can confirm this (symptoms and cause). Luckily I have only one code path right now that is heavy enough to be a performance problem, and I can work around it using my own caching mechanism. When your program is single-threaded then you might be able to pull off something similar. Search for "dynamic scope memoization" on comp.lang.lisp. Leslie _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel