From: Sam H. <sh...@ma...> - 2006-07-28 04:16:26
|
Hey, Does it bother anyone else how slow SetMaker is? It's not that module's fault, it just takes a long time to render problems, and rendering 20 of them gets pretty insane. I was thinking that a solution to this would be to cache the entire output of the problem processor. For non-interactive situations like SetMaker, the only thing we'd need to cache on is the problem seed -- other data (like num_correct, num_incorrect, etc.) are always the same. The cache could simply be a file containing the problem TEXT, named based on the source file name and the problem seed, or we could get a little more complex and also store the names of any temporary files that the problem depends on. That way, deleting, say, a generated graph would invalidate the cache and cause the problem to be re- rendered. This would speed up problem browsing TREMENDOUSLY, since PG wouldn't even run once ANYONE had browsed a problem set. This might even be a good candidate for pre-caching -- run through the problem library once with seed 1234 to save a lot of instructor time down the road. Any thoughts? -sam |