On Tue, Dec 28, 2021 at 8:32 AM Jacques Montier <[email protected]> wrote:
>
> Well, il cleaned my dusty mobo, unplugged and plugged again the sata cables.
> Now, with or without NCQ, boot time is rather short (~28s).
> So it seems it was a connection problem.

Yeah, I've suspected my cables for some of these ATA errors.  I do
feel like SATA is probably a bit lacking in error management, but I
haven't looked into the gory details.

That said, without NCQ the drive should work completely normally but
you may get degraded performance.  The idea of NCQ is that the kernel
can feed the drive multiple instructions at a time, and then the drive
firmware can optimize order of execution to reduce seek time.  The
kernel doesn't know the physical layout of the disk and so if the
commands are executed in strict order the drive may end up seeking in
a non-optimal way, and of course with mechanical drives being what
they are that is very costly.  A bit of controller CPU spent solving
the travelling salesman problem can save a LOT of time waiting for the
disk and heads to move.

One of the bigger changes in NVMe is making the queue vastly larger so
that more operations can be done in parallel.  Obviously there are no
seek times in flash, but I'm not familiar with how the actual
addressing works so there may still be cases where the order of access
matters, or where dispatching instructions in parallel keeps the
pipeline more full.

-- 
Rich

Reply via email to