All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 2 posts ] 
Author Message
 Post subject: Strange Throttling in HDD during zero-fill
PostPosted: January 17th, 2022, 23:33 
Offline

Joined: August 8th, 2016, 4:04
Posts: 9
Location: Brasil
My 1 TB HDD (WDC WD10SPZX-24Z10) is displaying a weird throttling behavior while I'm trying to wipe it.

It's writing speed is dropping dramatically for all regions after doing a long (> 10 GiB) zero-fill operation in Linux (Mint 18, running on a thumb drive) using dd.

And, for some reason, if I wait a couple minutes and try again, it goes back to its normal write speed.

Obviously, the first thing I thought is that it should be a thermal throttle, but hddtemp said it was only at 46 °C right after a 330 GiB zero-fill (which I interrupted for it was taking absurdly long).

Anyway, I let it cool to the lowest temperature it would reach while idle, 40 °C, then made a bash script looping these commands, repeating 0.98 GiB zero-fills in the beginning of the HDD:

Code:
hddtemp /dev/sda
nice -n -20 dd if=/dev/zero of=/dev/sda bs=209715200 count=5 oflag=direct


and put a cloth over the laptop where the HDD is located to make it heat faster.

Each operation takes about 17 s and there's virtually no dead time before the next starts, the HDD itself doesn't take even 0.1 s to begin the next one.

I let it repeat it until it reached 48 °C, and so far it kept stable writing speeds, from 60 to 56 MB/s every time.

Didn't make sense, so I let it cool down to 40 °C again, and gave this command, to make a single 19.5 GiB zero-fill:

Code:
nice -n -20 dd if=/dev/zero of=/dev/sda bs=209715200 count=100 oflag=direct


now without the cloth nor anything to hinder the cooling.

Right at the end the temperature was 44 °C only, and I repeated the same script I ran before.

Now the speeds would vary from 22 to 20 MB/s, while the temperature kept constant at 44 °C.

I let it running for over 20 mins, the speed would never get better.

Then I stopped it for 2 minutes only. The temperature didn't even change, it was still 44 °C, and the write speed came back to 60-56 MB/s when I ran the script again.

Nothing here makes sense.

If this isn't thermal, why is it happening and why letting it quiet for 2 minutes make its speed come back to normal, while a 10-20 second interval isn't enough?

It just feels like it's something thermal, but makes no sense. Why repeating 0.98 GiB zero-fills over and over, with a cloth to hinder cooling until it reached 48 °C wouldn't make it throttle, but a single 19.5 GiB zero-fill without anything to hinder cooling does?

And if the repeated 0.98 GiB zero-fills don't "heat it", then why wouldn't it "cool" when I ran them after the 19.5 GiB zero-fill?

They seem to be unable to "heat" but seem to be able to "keep the heat", so to say, they need to be stopped so it comes back to normal.

Note that the HDD was tuned with hdparm before to fully disable power management and write cache, as it was going to be a zero-fill (a sequential write operation), and dd was using the "direct" output flag, so there's no cache to worry about, it should be a direct I/O process.

I posted this before in Tom's Hardware, but most are reading superficially and asking things that I already made clear before, one interesting point one brought is that some element could be heating that isn't measured by the sensor.

But what could be heating in a sequential write?

This isn't a file being written in a fragmented file system, it's a zero-fill directly to the device, there's no much seeking operation for the head to be making for its actuator to heat.

Anything that could be heating in a single 19.5 GiB zero-fill should be heating in several 0.98 GiB fills with no interval between them.

Plus, I disable all caches and I'm using direct output, there should be no cache issue.

I'm lost here.





My laptop is an IdeaPad S145-15IWL 81S90008BR, with an Intel Core i5-8265U CPU, Nvidia MX110 GPU, 8 GB DDR4 RAM.


Top
 Profile  
 
 Post subject: Re: Strange Throttling in HDD during zero-fill
PostPosted: January 18th, 2022, 19:56 
Online

Joined: October 3rd, 2005, 0:40
Posts: 4311
Location: Hungary
The disk is SMR and L2 translator gets full, which makes it neccessary to defrag in the bkground. This process is responsible for the performance drop after some gigs.
Trimming would do a lot better job...

pepe

_________________
Adatmentés - Data recovery


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: Google [Bot] and 67 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group