All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
Slow system performance with high I/O on only one drive
Hey LET.
I have a hetzner server, a i7 3770, 4 x 6TB drives, 32gb ram, and im having some issues. Some information about the system :
Im running windows server 2019
Disk 1 coontains windows server 2019 and 3vms in hyper-v. Disk I/O here is low, as the vms is not under any kind of heavy load
Disk 2 contains backups
Disk 3 is blank
Disk 4 is used only for seeding torrents.
I experience that when i have I/O on disk 4, the whole system slows down to sirup, even though windows is not installed there. I have 20gb ram free, and cpu is only around 20% when this happends.
If i close my torrent client who is seeding from disk 4, the problem stops instantly. There is only around 100 torrents in the client at the moment. The seeding speed is normally around 100mbit, but peaks to 1gbit some time after rss grabs a new torrent, but the slow system syndrome happens no matter what speed im seeding at.
Any tips here ? Bite the bullet and move everything to ssds? Its expensive to keep seeding data from ssds, and not sure if thats worth it. Only seeding to keep my ratio on a few private trackers.
Comments
If you run the performance tool of windows, how much load is put on disk 4 and any other disks when you start seeding? What chipset does your server have?
I am not an expert with Windows Server, but if there is a cache for most used files in RAM then when you start running torrents it gets filled with torrents data and that could be the reason why all your other processes start reading from the other disks directly resulting in slower IO response time.
Exactly the same amount that my torrent client reports in MB/s. Responsetime up in for 700-1000ms range at any time when I/O is over 30MB/s
Chupset i have no idea.
Ram usage is only around 50%, so its not full. But interesting theory.
You should find out (just find out the motherboard, you'll find the chipset from there). It could be the SATA controller for instance, so googling your chipset + slow disk speed may get you somewhere.
The file cache is not shown as part of used memory.
Do you believe that a newer server, with a nvme system disk istead of a hdd would solve the issue ? I really dont want to use ssd or nvme to seed torrents. That would be to expensive.
Yes, I believe it should solve the issue. I am not sure if there is a way to disable file caching for a specified drive in Windows.
@Styx worth a try: https://www.thewindowsclub.com/enable-disable-disk-write-caching-windows-7-8
Wondering if a 9900k server will be way overkill. Its sad to overpay for things you really dont need. I just use plex, storage and a few small vms really
Ended up ordering a ex62 with 2 x 8TB, and i added a 1tb nvme. Going to test it and see if better hardware helps
disk transfer rate isn't the same as iops. you are most likely running into heavy iowait with that old spinning rust and the tons of small chunks seeding.
I get that, but why does everything slow down, when the seeding files is only on one seperate hdd?
https://serverfault.com/questions/12679/can-anyone-explain-precisely-what-iowait-is
essentially it's blocking the cpu threads, waiting for the IO requests being done (without causing actual load to the cpu itself).
now, if you have 8 threads on your cpu and all are waiting for getting their IO requests served, guess what happens...
PS: I haven't used virtualization in windows, however, have you tried to run your torrent in a sperate VM and only assign half of the cores/threads to it. so while that VM might be sluggish then hopefully the rest of the system has enough breathing room.
Currently setting up the new server, i will try to run it in a vm. Doesnt matter if its sluggish, its just doing torrents anyway.
I guess half of a 9900k should do the trick
yes, that's what I would try too. and it's not the cpu that's hindering anyway, just the IO queue. if you serve the files you seed from the NVMe this should help a great deal, because the IO request will be served a hell lot faster, so the IO-wait should drop dramatically.
Not really planning to seed the torrents from the nvme, but i want the rest of the system running of a nvme.
I`ve ordered a ex62 with 2 x 8tb hdds, and i added a 1tb nvme. Going to seed from a vm, running on one of the 8tb drives, host web and everything else i need on the nvme and use the secound 8tb for plex and backups. Thats the plan right now.
The 9900k gives me alot of room to fire up more vms if i need that also.
On top of that, the old server had some other issues to, random bluescreens and so on. So a new server is welcome anyway
while I understand the thoughts behind that, the whole system would benefit most from putting the high IO capability of the NVMe to the service that really requires it... so the hot stuff should always be served first from there, so that the CPU doesn't get blocked by waiting.
if you have scripted it anyway, maybe think about a two-zone setup where the new/urgent things can be served from nvme for a while before being relocated to the spinning rust when moving down the queue. however, let us know about the outcome of your setup ;-)
Im not poor, but i cannot afford to host terrabytes of torrents on nvme drives im afraid. I will test it as i explained above and post results in a few days.
Looking forward to have double the cpu benchmark, double the ram and nvme
Done some testing now, this beast server is way overpowered for my useage. Running the seedbox inside a vm solves the issue in the first post. Now im here with a server way overpowered...
Maybe try to find someone to share it with. I have half of a 9900k and 32gb ram to share
with hetzner you can cancel your order withing the first 14 days (free of any costs). and cancel the cancellation before midnight (if it's set for today)
Or i can enjoy the new server, and look for someone to share it with. I like that idea alot better
Have you run smart test on the disk?
good luck with your... oh. wait.