From: Tim H. <ho...@wu...> - 2010-07-05 18:58:36
|
Hi Wenyan, On Saturday, July 03, 2010 10:24:48 pm Wenyuan Guo wrote: > I've been profiling the game to accelerate the startup sequence > further, since the last update with SVG caches. In particular, I > wanted to hide the remaining menu loading latency in a worker thread > that runs parallel to the starting title animation (when "tux of math > command" slides nicely across the screen). This turns out to be > impossible/unnecessary after a closer examination of "titlescreen.c". > Basically, there is a section of startup code there that locks us for > at least 2 seconds at the logo screen, polling ESC press from the > user. Presumably the program gives the user a grace period should he > want to quit. In addition, my profiling suggests that the total time > for menu loading and other initializations, after the last caching > optimization, only takes 1.4 seconds (on my machine). That is to say > that this latency is entirely hidden within the compulsory wait period > already. As long as we do not change that section of code, there is no > more acceleration possible for the startup sequence (that is, 2 > seconds at minimum). > > My question is what is your experience with the current startup > process of tuxmath. I know the performance and experience may differ > from one machine to another. Or perhaps we can eliminate that > compulsory ESC polling period and do multithreading for menu loading > in favor of faster startup? Or maybe there is no more need for > further optimization and I should move on to the next phase of the > project? What is your opinion? Hmm, an interesting question. I think if we want to have the logo display for 2s, then I agree there is little point in further optimization, since you've gotten the loading time down below that. I guess the key question is whether we want to have the logo there for 2s. For a developer who might be testing tuxmath many times a day, a 2s delay could become annoying. But I bet for a kid who might just launch it once per day, that's probably a reasonable amount of time to devote to "branding." So overall I would vote that additional optimization is not necessary. Anybody feel differently? Best, --Tim |