SUSE® Linux Enterprise Real Time
Matthias Nagorni Product Manager SUSE Linux Enterprise
22. März 2007
What is SUSE® Linux Enterprise Real Time?
• An add-on to SUSE Linux Enterprise Server providing deterministic performance in time-critical environments.
• An industry-standard real-time version of Linux for x86 architectures engineered and supported in cooperation with Concurrent Computer Corp. providing the following key features:
– CPU Shielding: Dedicated resources (such as CPU, memory, fabric) for high priority processes
– Kernel Preemption: Fast response to external events, optimized kernel critical sections (aggressive lock breaking) – Priority Inheritance: Solves priority inversion problem for mission critical processes
2 © Novell Inc. All rights reserved
Real Time – The problem and its solution Problem:
Multi-tasking systems with scheduler-driven task execution do not provide deterministic timing. Solution:
Exclude processes with real-time requirements from scheduling by running them on an isolated CPU/Core.
➔ SLE RT allows to explicitely and exclusively assign a process to a CPU/Core.
➔ CPU/Cores can be excluded from ordinary scheduling and interrupts.
➔ Together with other measures this results in predictable timing of the shielded process.
3 © Novell Inc. All rights reserved
CPU Shielding: The Processing Highway
The way CPU Shielding improves processing can most easily be understood by the analogy of cars running on a highway. Associate: CPU/Core --> Lane, Process/Thread --> Car Interrupt --> Truck, Consumed CPU time --> Distance
While this analogy is not strict, it illustrates many effects of Shielding: ➔ Shielding of CPUs/Cores from other processes and interrupts is pictured in the upper lane ➔ The advantage of shielding is less apparent when there is little load ( = traffic on highway) ➔ Even at times of very low traffic, there is no guarantee that no truck will show up. ➔ Workloads with few high-priority Processes/Threads benefit most from Shielding.
4 © Novell Inc. All rights reserved
Real Time as a time machine
In Real Time applications for Financial Services, SLE RT can give a competitive advantage close to a time machine.
Events
5 © Novell Inc. All rights reserved
What's the secret?
Standard Linux Kernel Measured 44,759,417 samples Kernel with Real-time Extensions Max latency: 92.3 millisecs Measured 28,800,882 samples 44374681 samples < 0.1ms (99.140%) Max latency: 27 microsecs 219672 samples < 0.2ms (99.630%) Min latency: 11 microsecs 93496 samples < 1.0ms (99.843%) Average latency: 11.3 microsecs 44452 samples < 10.ms (99.939%) 28,808,870 samples < 0.02 ms (99.99999%) 16188 samples < 30.ms (99.975%) 12 samples < 0.03 ms (100%) 10761 samples < 60.ms (99.999%) 166 samples < 90.ms (99.999%) 1 sample < 100ms (100%) Interrupts fire at 490 us /dev/rtc
6 © September 08, 2005 Novell Inc, Confidential & Proprietary
Technical Benefits of SUSE Linux Enterprise Real Time
● Predictable response times with minimal latency
● High Quality of Service (QoS) even under heavy load
● High I/O throughput (integration with Infiniband)
● Fast response to external events
● 6 - 11 usec interrupt response time
● Deterministic and repeatable program execution
● 7 usec context switch times
● Optimized interprocess communication
● Signal delivery 6 usec
7 © Novell Inc. All rights reserved
When Is Real-Time The Appropriate Platform?
Standard Kernel: Real Time Kernel
Throughput Sensitive Workloads Latency Sensitive Workloads • Non-time sensitive workloads, applications • Most improvement – applications with a limited with no process or transaction priority number of threads or clear hierarchy with hierarchy, environments with no performance priority; applications requiring faster, SLAs predictable data delivery predictable, low data latency • When fair scheduling algorithms are required • Market data feeds (Wombat, Tibco, Reuters) across compute resources (time sharing) • Algorithmic Trading • Web farms serving FIFO based requests • Real Time Enterprise Risk Management • Enterprise mail servers • High volume Transaction Processing & High Volume Query Processing - Applications, e.g. • Batch processing ATM transactions, credit card authorizations, etc.
Use standard kernel for throughput sensitive workloads and real-time kernel for latency sensitive workloads
8 © Novell Inc. All rights reserved
Real Time in Financial Services
• Applications requiring predictable, low data latency
– Market Data Delivery
> Assure fair access to pricing information.
– Trading / Algorithmic Trading
> Maximize stock trading profit
> Minimize time from receipt of new market information to re-calculation of risk and trade execution
> Faster trade matching & execution
> E.g., Foreign Exchange, Bond, MBS, Equity, and Derivatives trading
– Other high volume Transaction Processing Applications
> E.g., ATM transactions, credit card authorizations, websites, etc.
9 © Novell Inc. All rights reserved
Results in Financial Services
• Business Results
> Large investment bank has said that for every 1 millisecond their program trading applications can beat the market, they would earn an additional $100 Million per year!
> A leading Wall Street firm has shown it needs only 20% of its existing market data servers to meet performance SLAs • Performance Results
> Another Investment Bank is seeing 30%+ improvements for a time-critical program trading application
> A large regional Bank has seen performance improvements ranging between 10% to 150%+ under heavy loads for their enterprise Identity Management solution while decreasing their overall physical server footprint by 75%
> In database benchmarks, Oracle and Ingres database queries execute 5+ times faster under load
10 © Novell Inc. All rights reserved
Real Time Doubles Wombat Feed Handler capacity to 200,000 messages per second
• 2 Consumer Server 1 • 4 Consumer Application Applications/Client Wombat Feed Handler Connections • Handling a total of 200,000 • Subscribing to 100,000 msgs/sec Symbols Each • 50,000/second per connection
Server 2 Switch Server 3 Wombat Wombat Client Client
Customer Benefits Partner Components • 2x improvement for Wombat • Intel Woodcrest Chips customers running SLERT
11 © Novell Inc. All rights reserved
Benchmarks
Maximum Response Time Ingres Database Performance 2 275 1.8 250 1.6 SLES 225 RHEL4 1.4 SLE RT s 200 SLERT d ) n s 1.2
( 175 o
c e
1 e 150 m S i
T 0.8 n I 125
0.6 e
m 100 i 0.4 T 75 0.2 50 0 25 1 5 10 15 20 User Load 0 1 1 1 2 2 2 4 4 4 8 8 8 16 16 16 Oracle 10g Benchmark Threads Generating System Load
Archipelago Data – Ingres Benchmark Using The Flood Test 550 500 RHEL4 450 SLERT Standard Linux Kernel: 90 milliseconds 400 350 Windows Server 2003: 2.3 seconds 300 250 Real Time Kernel: 22 microseconds 200 150 100 50 Maximum Process Dispatch 0 3 4 5 6 7 8 9 10 11 12 13 14 Latency Market Data Flood Test
12 © Novell Inc. All rights reserved