Jump to content

LARGE disk cache support


aLcATRAZ

Recommended Posts

Hello!

I have a problem with my raid array working too damn much when downloading at 10-100 Mbit. The random activity is just too much and the drives would not survive long with this abuse. The abuse/wear is rapidly multiplied when using larger arrays.

The computer has 4 GB of memory of which 3gb I try to use as a ramdrive for downloads but that doesnt work so well with combined seeding/downloading taking up more than 3 GB of space.

I request a way for the disk cache to use the availible RAM like a ramdrive for downloads, with other words, a true disk cache. That means IF the disk cache can hold the entire torrent NOTHING is written to the harddrive untill the torrent is finished. Also when seeding, the torrent should be kept in the cache (even though it means reading the entire torrent before seed, (side option?)).

I think more people are getting this trouble with extensive harddrive wear, especially with high speed downloads. Buying some extra RAM (cheap today) really is worth the money saved on harddrives. But most important, the load on the system would be much lower while downloading. Please implement this function to open up SAFE ULTRAFAST DOWNLOADS!!

Thank you for your time. /Michael

Link to comment
Share on other sites

Um, you can try setting diskio.write_queue_size to 384000, set diskio.coalesce_writes to true, set diskio.flush_files to false and set a read cache (in advanced settings) to some high value. It won't work exactly like you want it to, but it should at least -help- reduce reads and writes. You can also try increasing the Windows system cache with CacheSet from sysinternals to again reduce reads and writes.

http://www.utorrent.com/download/beta/utorrent-1.4.1-beta-build-405.exe

Link to comment
Share on other sites

Hey thanks man! I appreciate the lightning fast response.

Those tips are really good. Is there a chance you will be raising the max write cache value higher than 384000 kB ?

I havent abandoned the ramdrive yet. I will experiment but untill I find a disk cache as good as a ram drive I will go for that permanent.

I already made a feature request about this issue, I hope it's no problem for you guys.

Thanks for sharing the latest beta. Are there any improvements in this area?

/M

Link to comment
Share on other sites

You could set it higher, that's just a value I estimated that would work. Basically, 100mbit (in KiB) multiplied by 30, since µT writes at most every 30 seconds. It's for writes only.

And yes, this beta adds a read cache (diskio.read_cache, off by default) and various other improvements.

Link to comment
Share on other sites

Why do you keep write and read cache seperate? I know it must be easier to control them, but alot of the data could be identical in the two. Thats pretty inefficiant, don't you think? Bitcomet for example uses a combined cache.

Also I tried searching for info about this coelesce function but without much luck. What does it do? Disk_io_flush_files, may I ask what this does? The names are clues but they dont explain it perfectly, sorry.

/M

Link to comment
Share on other sites

And yes, this beta adds a read cache (diskio.read_cache, off by default) and various other improvements.

Yes, finally. Its been discussed alot about its effectivness. After reading this I had to try it out.

Running 3 torrents totalling ~2GB and with a small 512 MB cache this gives me a 24% effectiveness. This can hardly be called bad. If I throw another 512 MB for cache it will probably be perfect when Im seeding 2-4 250 MB torrents. Effectiveness will probably be tweaked during the betas and it will probably go up the longer you have uTorrent opened. It does look like the cache isnt marked as unswappable. I see Windows swapping it out now and then.

Yes it will be useless if its set low (below 512 MB) or you are seeding alot of diffrent torrents.

I love this beta!

Btw, new user and first post. I see you are using punbb made by my friend. :)

Link to comment
Share on other sites

  • 3 weeks later...

Hey Firon! I have a question. You say that uTorrent uses a write queue? Does this mean that enlarging the queue only means delaying the random writes? If I set a queue size of 3 GB will a completely downloaded torrent be written randomly or continuous to the harddrive?

Thanks for the help!

/Michael

PS. No not as the party street. People like alcazar, I would like to round them up and murder them in cold blood.

Link to comment
Share on other sites

µTorrent writes at least every 30 seconds, regardless of how full the cache is, to minimize data loss. It's usually a bit more often with automatic management though.

You can set it to a fairly large amount though and if you got a decent download speed, it'll minimize writes significantly. You can also turn on diskio.coalesce_writes if you wanna reduce writes even further.

If you wanna reduce reads, you can use the read cache (use beta 419!), and set it to some ridiculously high value.

Link to comment
Share on other sites

Thanks for the info, but it really does not answer my question? If the entire torrent is fitted into the write cache, will the cache unnestle all the pieces and write the data continuously, DEFRAGMENTED, to the harddrive?

I'm not sure how to make myself completely clear.

Thanks Firon!

/Michael

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...