Bug 639785

Summary: Performance Tuning Guide: TRACKING BUG for [I/O] [Schedulers]
Product: Red Hat Enterprise Linux 6 Reporter: Don Domingo <ddomingo>
Component: doc-Performance_Tuning_GuideAssignee: Laura Bailey <lbailey>
Status: CLOSED CURRENTRELEASE QA Contact: ecs-bugs
Severity: medium Docs Contact:
Priority: low    
Version: 6.1CC: ddomingo, srao
Target Milestone: rcKeywords: Documentation, Tracking
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 6.1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-04 01:52:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 639779    

Comment 8 Sanjay Rao 2011-02-14 17:45:32 UTC
Looks good.

Comment 11 Michael Doyle 2011-05-04 06:52:54 UTC
Red_Hat_Enterprise_Linux-Performance_Tuning_Guide-6-en-US-1.0-28

5.6.1. Selecting an I/O Scheduler
file:///usr/share/doc/kernel-version/Documentation/block/switching-sched.txt. 

[bug] should be file:///usr/share/doc/kernel-doc-version/Documentation/block/switching-sched.txt. 

[comment] the bullet list of schedules is the inverse order of how they appear in the document.


5.6.2. Completely Fair Queuing

[bug] queued is not an option in RHEL 6.0 (please verify with a dev). also there seems to be other tunables available in /sys/block/<device>/queue/iosched/ that are not documented.



5.6.3. Anticipatory Scheduler
To address this, the anticipatory scheduler (as) enforces a delay after servicing an I/O requests before moving to the next request. 

[typo] s/requests/request


read_batch_expire

[typo] paragraph contains a double full stop

[comment] there is also a tunable called est_time


5.6.4. deadline Scheduler
front_merges
front_merges controls whether such requests should be merged to the front of the queue instead. To enable this, set front_merges to 1. front_merges is disabled (set to 0) by default. 

[bug] the default setting needs to be confirmed by a devel. on my test system the default value was 1.

Comment 14 Sanjay Rao 2011-05-09 11:24:47 UTC
Laura

There are many tunables that are not documented in the performance tuning guide because the default values are adequate / or need not be changed for performance tuning. These are available because there are cases where these may have to be modified based on the needs of some customers. But the objective of the performance tuning guide is to offer guidance and tips to majority of the customers. That's why we have highlighted the important tunables and added a pointer to the full documentation for those customers who wish to explore further.

Comment 16 Sanjay Rao 2011-05-10 11:02:02 UTC
Laura

The default value of front_merges is 1. Please change it accordingly. 

For the queued option, please add a line saying that this tunable is not available for versions earlier than RHEL6.1. 

Some of these changes were made upstream when the document was put together and found their way into different version of RHEL. As this document has been in the making for a while now, we may run into situations like this. :)

That's why most of the section was written with pointers to the documentation that accompanies the OS as these are up to date with the OS.

Comment 20 Sanjay Rao 2011-05-13 11:02:06 UTC
The IO elevator section of the document was picked from a RHEL 5 elevator document published by Red Hat. I don't remember the author's name but Don Domingo knows. We had a discussion and felt the essentially the elevators were the same with some changes to the tunables so there was no point in rewriting an already well written document. I wrote the other sections in the IO chapter.

If testing shows that some of the tunables have changed in RHEL6, please change them accordingly in the document. It appears that the queued tunable was removed in RHEL 6.

Comment 22 Michael Doyle 2011-05-16 04:51:44 UTC
Verified in Red_Hat_Enterprise_Linux-Performance_Tuning_Guide-6-en-US-1.0-31.