Hardware Reference
In-Depth Information
FIGURE 32.5: Assigning cores to I/O processes may increase the performance
of the system [10].
32.4.3 Dynamic I/O Scheduler Selection
Device I/O schedulers play an important role in I/O performance. With
multicore servers, the notable difference from the past is that I/O patterns
tend to become more diverse due to more application contexts issuing I/O
requests. This issue is becoming more involved with the widening range of
device performance characteristics, e.g., with the introduction of SSDs. As a
result, systems today employ a number of I/O schedulers, each being tailored
for a set of workloads or devices. However, selecting the right scheduler for a
workload is a dicult problem and therefore, administrators and users tend
to not use any scheduler at all.
One approach to addressing this issue is to dynamically choose the right
scheduler by continuously observing and analyzing the current I/O pattern.
To explore this direction, a prototype system was developed that chooses the
most appropriate I/O scheduler based on pattern matching in the data flow
of the operating system and the devices. This is called the IOAnalyzer [9].
The I/O data flow is compared online, building a database of I/O patterns
! fI/O scheduler, I/O performanceg. Once there is enough information, the
IOAnalyzer selects the most appropriate I/O scheduler in a proactive way.
The workflow of the IOAnalyzer is discussed as follows and is displayed in
Figure 32.6. First, data about the I/O performance, the actual I/O scheduler,
and the I/O trace from the kernel are gathered, then this data is compared
to previously stored traces from the running system. If there is a match, the
IOAnalyzer looks for the most beneficial I/O scheduler for the next probable
workload; if not, the gathered information is stored. If there is a hit and there
is not enough information about which scheduler will be the best, IOAnalyzer
forces an arbitrary scheduler to complete the information. The learning phase
is short and the performance improvement compared to the worst scheduler
is very high (a 2{5 time speedup on I/O). As it is an online system, statis-
tics are updated continuously to learn new patterns and overcome system
modifications (i.e., aging).
 
Search WWH ::




Custom Search