Re: responsive threading
Andras Balogh <[email protected]> Thu, 04 Aug 2005 13:12:49 -0600
| Newsgroups | gmane.games.devel.general |
|---|---|
| Message-ID | <[email protected]> |
It turns out that all the spikes were my fault. I'm deeply ashamed.. I have failed to follow the most important rule of all, that says: profile first! I was pretty sure my application was not the one causing the stalls, since when I turned the other thread off, I got no spikes at all.. What happened is that I also called another small 3rd party library from my main thread, but only when the other thread was also running. This library converts coordinates between different projections (this is a mapping software), and it seems like that sometimes it takes a pretty long time to do this operation, that I assumed to be basically free. Now I'm going to dive into this library, to see what's going on. I think I've learned my lesson: PROFILE, PROFILE, PROFILE! DO NOT MAKE ASSUMPTIONS! EVER! Thanks, Andras Andras Balogh wrote: > I'm developing a graphics application, that I want to be very > responsive, very smooth, all the time! The rendering is pretty simple, > the framerate is high and stable, so I just lock to vsync, and > everything moves beautifully smooth! The CPU usage for this thread is > always below 10%. > > However, I also have another thread, that has to do some heavy work. > This thread does tons of IO operations, and also makes the CPU sweat! > > There is no synchronization between the two threads, so they should be > able to run independently. Still, I'm experienceing sudden spikes in the > framerate, when the second thread is really hammering. What could be the > reason for this? Is it possible to do something about it, to regain the > continuous framerate? I'm really not interested in the performance of > the second thread, I just want my first thread to run as smooth as > possible! I've tried lowering the priority for the second thread, and it > does help, but there are still some spikes. Is it possible that it's > Windows itself doing some operations at higher priority, like memory > management, IO stuff, and the likes? > > Thanks, > > > Andras ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Gamedevlists-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/gamedevlists-general Archives: http://sourceforge.net/mailarchive/forum.php?forum_id=557