ME3Tweaks / LegendaryExplorer

Editor toolset for Mass Effect Trilogy and Mass Effect Legendary Edition
https://me3tweaks.com
GNU General Public License v3.0
125 stars 29 forks source link

Memory leak in package dumper #217

Closed mirh closed 2 years ago

mirh commented 3 years ago

Describe the bug I was enjoying some quality time mining the ME2 xbox iso, and I used package dumper on the whole CookedXenon folder. So far, so good, and I was quite impressed everything went smooth.

After a while though (i.e. after a while it had finished the process) while I was loading quite a lot of tabs in firefox, I found out I was swapping to my disk because ME3explorer was taking 2GB of ram.

To Reproduce Steps to reproduce the behavior:

  1. Open package dumper
  2. Select all files in the cooked folder (the pc version should be also fine, at least I tried the ME2 demo)

Expected behavior I'm not exactly sure what's the expected memory usage during extraction (though anything north of 500MB with just two threads smells suspicious), but for certain after that anything more than the original 160MB ME3Explorer uses on start is wrong.

Version information: v.5.1.0.2517 ()

Other information Please don't mind all these trivial bug reports while you are blazing it with far more juicy stuff.

Mgamerz commented 3 years ago

Did you wait a while after this operation to see if the memory usage dropped? .NET can take some time to run a garbage collection if there is little memory pressure.

Edit: I should try reading the whole message. I'll take a look. Memory usage can increase after a while due to us caching things into memory.

mirh commented 3 years ago

Actually, I feel like this happens a bit across everything. Even just if you open a big upk in package editor you get a fat process, even after minutes and minutes from closure.

Again, not a big deal overall.. but just a thing to remember.

Mgamerz commented 2 years ago

I'm closing this issue as this isn't really a memory leak (if it was, it was likely fixed some time ago). Memory usage increasing is various caches such as TLK, default structs being populated.