24
votes
Accepted
Why CPU spent time on IO(wa)?
The CPU idle status is divided in two different "sub"-states: iowait and idle.
If the CPU is idle, the kernel then determines if there is at least one I/O currently in progress to either a local disk ...
- 1,475
19
votes
Accepted
Evaluating the CPU I/O wait on Linux
You need to be careful when evaluating these figures.
IOWait is related, but not necessarily linearly correlated with disk activity.
The number of CPUs you have affects your percentage.
A high IOWait ...
- 23.1k
19
votes
Virtual machines and I/O heavy workload, is it ever sane?
Is it ever sane to use a Virtualized solution when performing I/O
heavy workloads?
Yep, very sane indeed, in fact for most organisations now virtual is the default and doing things on physical ...
- 101k
19
votes
Accepted
Total I/O cost of a process
Try pidstat. Use it like this: pidstat -d -e command
pidstat is able to report statistics for Linux tasks. The -d instructs pidstat to gather IO stats. pidstat will stop and print the report once the ...
- 8,886
16
votes
What does it mean when Linux has no I/O scheduler
It seems that on kernels >= 3.13 none is not an alias of noop anymore. It is shown when the blk-mq I/O framework is in use; this means a complete bypass of the old schedulers, as blk-mq has (right now)...
- 45k
15
votes
Accepted
Dmesg full of I/O errors, smart ok, four disks affected
Your dd tests show the four disks all failing at the same LBA address. As it is extremely improbable that four disks all fail at the exact same location, I strongly suspect it is due to controller or ...
- 45k
13
votes
linux: how to simulate hard disk latency? I want to increase iowait value without using a cpu power
device-mapper "delay" devices
Look at the "delay" target for device-mapper devices. This is exactly why it exists.
Example
Here's an example of how to get that going:
Create a ...
- 924
13
votes
MySQL extremely slow on very simple SELECT queries
If the cpu load is low then this indicates that there are no problems with missing indexes, if that was the case the query would just need take more cpu and disk access. Also you said it worked fine ...
- 141
12
votes
How to check disk I/O utilization per process?
Use atop. (http://www.atoptool.nl/)
Write the data to a compressed file that atop can read later in an interactive style. Take a reading (delta) every 10 seconds. do it 1080 times (3 hours; so if ...
- 241
11
votes
Accepted
Interpreting read, write and total IO time in /proc/diskstats
I've not looked at the source code, but it seems the difference stems from two different accounting modes.
The #4 and #8 fields sum the time each request take to complete. This means that parallel-...
- 45k
10
votes
Virtual machines and I/O heavy workload, is it ever sane?
Is it ever sane to use a Virtualized solution when performing I/O heavy
workloads?
Does a database server regularly pulling 1gb/second random IO count? Have one here.
Or a virtual file server ...
- 51k
10
votes
Accepted
Why do sequential writes have better performance than random writes on SSDs?
A reasonably concise explanation by Seagate (WayBack copy here) on how garbage collection is responsible for the difference in SSD performance for random versus sequential writes:
... the need for ...
- 73.3k
9
votes
MySQL extremely slow on very simple SELECT queries
You can trying a couple things,
Do you have indexes setup?
Indexing makes it possible to quickly find records without doing a full table scan first, cuts execution times dramatically.
CREATE ...
- 9,536
8
votes
Accepted
How efficient is the tac command on large files
When used correctly, tac is comparably efficient to tail -- reading 8K blocks at a time, seeking from the back.
"Correct use" requires, among other things, giving it a direct, seekable handle on your ...
- 946
7
votes
kworker consuming +90% IO and zero disk write
100% IO doesn't mean it's using all your IO operations. It means it's doing nothing but waiting on IO. Therefore, high %IO with low/zero disk bandwidth can be normal.
man iotop:
[...] It also ...
- 265
7
votes
Accepted
Filesystem Performance for LUKS Encrypted Volumes?
I've been running LUKS encrypted filesystems for over a decade, with ext2/3/4, XFS, ZFS and maybe some other filesystems I've forgotten about. While I don't have any benchmarks handy, I do have a few ...
- 240k
7
votes
Accepted
Centos7 - Buffer I/O error on dev sda, logical block xxxxxxxxx, lost async page write
Messages as
Buffer I/O error on dev sda, logical block 886865171, lost async page write
mean that an async write (ie: dirty page writeback or buffered writes) failed. You found these errors in ...
- 45k
6
votes
Accepted
What does iodepth in fio tests really mean? Is it the queue depth?
(Please don't ask multiple questions in one post - it makes answering really difficult...)
queue depth which is the number of outstanding I/O requests [...] which handles the I/O requests and sends ...
- 1,230
6
votes
Accepted
Use F2FS on RAID0 within HDD?
Do not use RAID0, a failure of any one drive will kill the array. RAID6, RAID10, even a single drive with no array would be better for availability.
f2fs intends to be friendly to modern solid state ...
- 30.8k
5
votes
Accepted
Direct I/O on Linux
ext4 doesn't have a dio mount option (I believe AIX and Solaris do) but it does have dioread_lock and dioread_nolock mount options. From the mount(8) manual page:
dioread_lock/dioread_nolock
...
- 492
5
votes
Accepted
What does it mean when Linux has no I/O scheduler
From this Debian Wiki:
Low-Latency IO-Scheduler
(This step is not necessary for SSDs using the NVMe protocol instead of SATA, which bypass the traditional I/O scheduler and use the blk-mq ...
5
votes
Accepted
What are front merges in I/O scheduling and how can I tune this parameter?
The kernel documentation says it best:
Sometimes it happens that a request enters the io scheduler that is contiguous
with a request that is already on the queue. Either it fits in the back of ...
- 240k
5
votes
What does the nomerge mean in Linux system?
0 does both a simple check for adjacent requests plus a look up in a data structure, 1 only does the simple check, and 2 does no merging. Have a look at the implementation, block/elevator.c in ...
- 30.8k
5
votes
Does ionice has any effect on NFS client?
Note that my answer assumes you're using Linux, as I'm pretty sure the ionice command is Linux specific.
The I/O scheduler operates at the block layer, not the filesystem layer. As a result, it only ...
- 2,160
5
votes
what is the relation between block size and IO?
I think the Wikipedia article explains it well enough:
Absent simultaneous specifications of response-time and workload, IOPS are essentially meaningless.
...
Like benchmarks, IOPS numbers ...
- 73.3k
5
votes
Accepted
RAID 50 vs RAID 10 for performance?
RAID 10 is the performance king, especially for writes. You will avoid parity calculations and write penalties.
https://www.xbyte.com/blog/post/testing-the-limits-of-the-dell-h710-raid-controller-...
- 2,773
5
votes
Use F2FS on RAID0 within HDD?
Using F2FS on a classical HDD is not a good idea: while its random write performance will probably be higher then EXT4 or XFS, the sequential read speed on an aged filesystem will be very ...
- 45k
4
votes
Azure IO performance
Azure VMs are sized based on their RAM and CPU cores, but all sizes are conspicuously lacking in storage performance, which always becomes the main culprit regardless of how many cores and memory you ...
- 69.3k
4
votes
No Space left on device after Jenkins installation
maybe quota is enabled on the system. Check with
repquota -as
or
cat /etc/fstab | grep quota
(did not check if mkdir return No space left in case of quota)
- 8,886
4
votes
Does Linux, Apache HTTPD or PHP cache frequently / recently accessed files?
Yes, if it has enough RAM, the file system of Linux will cache these files. All other layers rely on the FS cache.
There might be higher levels of caching that caches the generated output of the ...
- 97.9k
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
io × 401linux × 139
performance × 101
hard-drive × 71
ubuntu × 20
mysql × 20
virtualization × 19
nfs × 18
centos × 17
ssd × 17
raid × 16
kvm-virtualization × 16
iostat × 16
windows × 12
filesystems × 12
debian × 11
memory × 11
cache × 11
central-processing-unit × 11
performance-monitoring × 10
apache-2.2 × 9
networking × 9
storage × 9
performance-tuning × 9
high-load × 9