Flash devices block size limitation
In order to reduce complexity, flash memory is divided into blocks of a given size. When a write is performed, an entire block must be erased and then written to. Since the erase destroys all data in the block, when a partial write is required the contents must be read into a temporary buffer, combined with the new data, the block erased, and the new data written out. When an entire block is written there is no need to read the previous contents, so writes are faster.
The device you are examining has 16kiB blocks, and so writes are fastest when performed in an exact multiple of that size starting on a block boundary.
How to disable request merges in Block device driver?
First check the nomerges value -
cat /sys/block/sda/queue/nomerges
if it's not already 2, then do:
echo 2 > /sys/block/sda/queue/nomerges
Related Topics
How to Lock The Cursor to The Inside of a Window on Linux
Synchronize Shell Script Execution
Extract Parent Domain Name from a List of Url Through Bash Shellscripting
Socket Programming Send() Return Value
Apache/Httpd /Var/Www/HTML/ .Cgi Scripts Throw 500 Internal Server Error
Can't Install Using Yum in Rhel 7.1
Reason of a Directory Size Being Zero
What Is a Good Interface for a Linux Device Driver for a Co-Processing Peripheral
What Is The Downside of Updating Arm Ttbr(Translate Table Base Register)
How to Make Libusb Library Visible to Another Program
How to Invoke Any Kernel Function
Pci-E Memory Space Access with Mmap
Programmatically Set Custom Folder/Directory Icon in Linux
Adding a Shell Command Inside/Inline of a Systemd Service File
Recursively List Files from a Given Directory in Bash
Why Does Bash Not Stop on Error for Failures in Sequence of Short-Circuited Commands