View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000702 | DarkRadiant | Shader System | public | 30.05.2008 21:07 | 10.12.2008 14:37 |
| Reporter | SneaksieDave | Assigned To | greebo | ||
| Priority | normal | Severity | normal | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Product Version | 0.9.6 | ||||
| Target Version | 0.9.9 | Fixed in Version | 0.9.9 | ||
| Summary | 0000702: Possible memory leak in material loading and flushing | ||||
| Description | 1. start DR fresh 2. take a memory reading (I'm using task manager; 'mem usage' column) 3. open the Media tab. Take a memory reading. 4. for the folder darkmod/stone/brick, RMB -> Load in Textures View. Take a memory reading. 5. open the Textures tab. Take a memory reading. 6. 'Flush and Reload Shaders' Repeat steps 2-6. As the steps are repeated, the memory requirements creep ever upward. At first I thought perhaps this is correct, and DR (or the OS) is caching more of the information for possible future use, but it just kept climbing, even after more than half a dozen refreshes. So, perhaps there's a leak in there somewhere. Here are sample results I've just gotten (steps 2-5 memory readings separated by arrows): 140->150->267->330 141->150->274->339 152->162->284->349 162->171->293->358 170->180->303->368 179->189->312->377 189 shutdown, restart DR 95->105->234->300 113->122->245->310 | ||||
| Tags | No tags attached. | ||||
|
I think I found the memory leak in the meantime. The ~RGBAImage() destructor called delete instead of delete[], which caused almost the entire image memory being leaked. I found this during the DDS refactoring process, so expect this to be fixed once I merge the changes back into trunk. |
|
| This should be fixed in versions 0.9.9pre1 and above. | |
| Ok, stand by. There is still something weird going on. Following the above steps, I can still see a 10 MB increase each time I press Flush & Reload Shaders and open the media tab. It seems to be unrelated to the actual shaders, as just re-populating the Media Browser seems to be worth 10 MB of memory. | |
| Yes - the GTK pixbuf loading was used excessively by the MediaBrowser's populator class, causing a 10 MB memory usage increase each time. That and increased loading times, both of which are fixed in source now. | |
| Fixed. :) | |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 30.05.2008 21:07 | SneaksieDave | New Issue | |
| 31.05.2008 06:21 | greebo | Status | new => assigned |
| 31.05.2008 06:21 | greebo | Assigned To | => greebo |
| 07.12.2008 18:18 | greebo | Note Added: 0002210 | |
| 09.12.2008 13:49 | greebo | Note Added: 0002212 | |
| 09.12.2008 14:00 | greebo | Note Added: 0002213 | |
| 09.12.2008 15:08 | greebo | Note Added: 0002214 | |
| 09.12.2008 15:09 | greebo | Status | assigned => resolved |
| 09.12.2008 15:09 | greebo | Fixed in Version | => 0.9.9 |
| 09.12.2008 15:09 | greebo | Resolution | open => fixed |
| 09.12.2008 15:09 | greebo | Projection | none => minor fix |
| 09.12.2008 15:09 | greebo | ETA | none => < 1 day |
| 09.12.2008 15:09 | greebo | Build | => 3903 |
| 09.12.2008 15:09 | greebo | Target Version | => 0.9.9 |
| 10.12.2008 14:37 | SneaksieDave | Note Added: 0002221 | |
| 10.12.2008 14:37 | SneaksieDave | Status | resolved => closed |