Product SiteDocumentation Site

Red Hat Enterprise MRG 1.1

Realtime Tuning Guide

Advanced tuning procedures for the Realtime component of Red Hat Enterprise MRG

Edition 2

Lana Brindley


Legal Notice

Copyright © 2008 Red Hat, Inc. This material may only be distributed subject to the terms and conditions set forth in the Open Publication License, V1.0 or later (the latest version of the OPL is presently available at http://www.opencontent.org/openpub/).
Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
All other trademarks referenced herein are the property of their respective owners.


1801 Varsity Drive
RaleighNC 27606-2072 USA
Phone: +1 919 754 3700
Phone: 888 733 4281
Fax: +1 919 754 3701
PO Box 13588 Research Triangle ParkNC 27709 USA

Abstract
This book contains advanced tuning procedures for the MRG Realtime component of the Red Hat Enterprise MRG distributed computing platform. For installation instructions, see the MRG Realtime Installation Guide.

Preface
1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. We Need Feedback!
1. Before you start tuning your MRG Realtime system
2. General System Tuning
2.1. Using the Tuna Interface
2.2. Setting persistent tuning parameters
2.3. Interrupt and Process Binding
2.4. Filesystem determinism tips
2.5. gettimeofday speedup
2.6. Don't run extra stuff
2.7. Swapping and Out Of Memory Tips
2.8. Network determinism tips
2.9. syslog tuning tips
2.10. The PC Card Daemon
2.11. Reduce TCP performance spikes
2.12. Reducing the TCP delayed ack timeout
3. Realtime-Specific Tuning
3.1. Setting Scheduler Priorities
3.2. MRG Realtime Specific gettimeofday speedup
3.3. Using kdump and kexec with the MRG Realtime kernel
3.4. TSC timer synchronization on Opteron CPUs
3.5. Infiniband
3.6. Non-Uniform Memory Access
3.7. Using the ftrace Utility for Tracing Latencies
3.8. Latency Tracing Using trace-cmd
3.9. Using sched_nr_migrate to limit SCHED_OTHER processes.
4. Application Tuning and Deployment
4.1. Signal Processing in Realtime Applications
4.2. Using sched_yield and Other Synchronization Mechanisms
4.3. Mutex options
4.4. TCP_NODELAY and Small Buffer Writes
4.5. Setting Realtime Scheduler Priorities
4.6. Dynamic Libraries Loading
5. More Information
5.1. Reporting Bugs
5.2. Further Reading
A. Revision History