Jump to content

Memory leakage


xmms

Recommended Posts

  • 2 months later...

I'm also having this issue after upgrading to windows 10. Previously 3.4.2 worked fine for me (on windows 8.1 but subsequent versions of stable had this memory issue).

 

I've been testing for about 10 hours now, using a variety of versions and nothing works with windows 10 for me. Standby memory just gets completely populated. I have 48GB of ram. https://a.pomf.cat/stdmqt.png this is all populated with mapped files from utorrent. I've tried modifying the settings mentioned and I can't seem to do anything. I am really lost. I have done a bunch of research on this and read multiple threads. For others here from google and other places, here is a repo of all the different things you can try. unfortunately for me none of them have worked.

http://superuser.com/questions/585517/rammap-empty-standby-list-drastically-speeds-up-pc-is-there-a-better-way-to-d

http://www.uwe-sieber.de/ntcacheset_e.html

http://www.thewindowsclub.com/enable-disable-disk-write-caching-windows-7-8

disabling disk write caching in windows does nothing because all of my standby ram is populated by read files. 

edit: as a last hail mary I tried installing 2.2.1 - that works fine with the cache. why? how? how can a massively outdated version lacking in all the awesome features of later versions - just work?

can't the devs just copy / paste the old code for memory from 2.2.1? I would gladly purchase utorrent pro if this was something that could be added, maybe even on special request? utorrent is the best client and the latest versions have been great apart from this one issue. Please dont leave me on 2.2.1 :(

i'd love to hear from anybody that has managed to get it working with windows 10 and any suggestions I can do to fix it. 

 

edit 2: 2.2.1 does the same issue too, going to revert back to windows 8.1 - only fix i can figure out. 

Link to comment
Share on other sites

5 minutes ago, DreadWingKnight said:

uTorrent can't eat that much ram internally. It's a 32-bit program. It WILL crash.

I know it can't, everybody in this thread knows this. It is a windows cache issue. We all know this. 

Some people in this thread have speculated that it is to do with the flags not closing properly. utorrent is not telling windows cache to remove stuff. 

This is a utorrent specific problem though. utorrent is not working as it should do. It is not behaving like it should. It should be either telling windows to remove those files out of cache or it should be telling letting those files close. I am not knowledgeable about the inner workings of the code to know what the issue is. 

 

What we do know is documented in this thread quite extensively. It is a windows cache issue that stems from utorrent not operating properly. 

my options are;

a) beg on the forums, like i am doing and many people have done so that the devs edit the program so that it properly obeys windows rules on caching

b ) go nuclear and install windows 7, it'll probably work fine on that. 

 

I really don't want to have to go with option b, and would love acknowledgement of this issue. It is easily replicable for me and many people like me in this thread.  When inspecting the standby memory data using that memory program mentioned I can see it is all cached reads of files that I am seeding. 

What happens is well documented by I can repeat it again in the hope that you guys will fix it.

program starts > utorrent asks to read files to seed them > files are added to windows cache > utorrent never tells windows that it doesn't need the files anymore > windows keeps them forever in the cache. 

 

This has some really detrimental effects, forcing programs to be unable to use standby memory. Chrome using standby memory whilst web browsing is much more beneficial to overall performance than utorrent keeping some cache of files that are not even being seeded. 

 

Please help us. We do not want to use older versions of the program. Please. 

Link to comment
Share on other sites

15 hours ago, DreadWingKnight said:

Your other option is to report the issue to windows support or their feature request line.

I really doubt that will do anything. It is just their new poor choice of how to run memory. 

 

1 minute ago, rafi said:

Have you tried setting uT exe to  "Win7 compatibility mode"?

yes, tried all modes, on 4 different versions of utorrent. all of them have this issue in windows 10. I've gone nuclear and formatted / reinstalled windows 8.1 pro. 

even 2.2.1 had the same issue on windows 10, even after I posted last night that it seemed to work. I was wrong, it just doesn't consume all ram as quickly. 

 

Testing out the latest utorrent version to see if that still has the memory leak with windows 8.1 but it seems like it does. Will try some other versions of utorrent and if they don't work i'll go back down to 3.4.2, that one works fine with windows 8.1 

 

http://a.pomf.cat/hhbaoj.png memory atm, if it doesn't cannibalise it all then its fine, but it looks like its heading that way. 

 

Link to comment
Share on other sites

Okay last post and final update - this one will be long so bear with me. 

a quick tldr; this is a windows memory management issue relating to caching. the devs could fix it but they choose not to. It is a lot of hassle to fix and i'll cover how later on in this post. Clients that don't have this issue are utorrent 2.2.1, 3.0 and qbitorrent. <-- that is true for anyone not on windows 10, if you are on windows 10 you are screwed. it doesn't obey the rules and just throws your reads into standby memory.

The people who are noticing this now, are generally people who have large amounts of ram, seeding many torrents in 24/7 type environments. Chances are prior to you having a large amount of memory it was happening anyway but you just didn't notice. 

Okay to start with we have to discuss windows memory management in general and understand how that works. Since windows xp it has changed with each iteration but I think the windows standby caching starts there. 

So you have different types of physical memory like working, private, standby and free. Working and private are easy to understand, they are just basic memory assignments which windows allocates for programs. 
The way standby memory works is that anything you open / read, it gets added to memory as a cache. Any web browsing, any games you open, movies you watch, songs - anything. Standby memory works in a priority system 0 - 7, 7 being highest priority and 0 being lowest. Here is a link to more information on the priority https://products.bitsum.com/forum/index.php?topic=3384.0
Information is sparse but whenever data is read (in order to be seeded) it gets added to the standby cache. It gets assigned a priority, of which I do not know if devs can specify which priority they wish to assign but through looking at my standby memory when it is full, the seeding files that are cached are generally given a 5 although in some utorrent versions I have seen this also to be a 1. (i've been testing about 10 different utorrent versions with this).
Ideally 1 or 0 would be best, because then no matter what, other data will get priority in memory. 

What you can do is (i copied and pasted this from another post by this guy https://forum.utorrent.com/topic/89387-34-disk-cache-overload-memory-leak-issues/#comment-494198 ) - You can download and install 'Process Explorer'. Run it, select uTorrent.exe process, right-click, 'SetPriority->Background: 4 (Low I/O and Memory Priority)'. You need exactly that entry, as it is lowering not only CPU priority, but also I/O priority.
At this point, this is probably the best you can hope to achieve if you want to use most torrent clients and it should work the way you want it to. Windows will cannibalise standby data of the lowest priority when you need memory, and since it is the lowest priority, if you start something else up (like a video game) that'll cache into standby memory with a higher priority, so everything should be ok and it works how you want it.  

Now there is a bug in versions of utorrent 3.4.3 and above (3.4.2 works fine) in which windows will cache the data into standby memory but over time, it will then change the standby memory into working set memory. thus reserving the data. This is a problem that the devs should fix and it is easily fixed by just comparing the changes made between 3.4.2 and subsequent higher versions. 

Now onto more information on proper provisioning and how it can be done. I stumbled upon this wonderful post http://blog.libtorrent.org/2012/05/windows-disk-cache/ by arvid. If you read that, it'll explain exactly how devs can develop torrent clients to bypass windows cache but from his post he mentions that it can be a hassle. That is why the devs do not do it. They don't deem it a relevant enough time sink. Like I mentioned above though, some clients do have this feature. utorrent 2.2.1 and 3.0 both have the option to disable windows cache. qbitorrent has the option to disable OS cache. If you do this, you'll end up with it working exactly how you want it to. To not cache any seeded or written data into standby memory. Even after a week of uptime 24/7 you'll still see no cached torrent data in ram. (like I mentioned this is not the case in windows 10 and that version doesn't give a shit, it'll cache it regardless, or at least that is how it is from my testing.)

Hope this cleared some things up and if you get any further or better conclusion than I have, please do let me know!
 

Link to comment
Share on other sites

  • 1 month later...
47 minutes ago, rafi said:

Have you tested with  all the ads disabled ? (appropriate setting file in my sig)

that has nothing to do with it. please don't bog the thread down with this poor suggestions. deleting system 32 doesn't solve it either. nor does taking a blender to the brain or a bullet to the knee. 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...