28.07.2013 Views

Performance Analysis and Optimization of the Hurricane File System ...

Performance Analysis and Optimization of the Hurricane File System ...

Performance Analysis and Optimization of the Hurricane File System ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 1. INTRODUCTION AND MOTIVATION 3<br />

kernel. It relies on memory-mapped input/output (I/O) capabilities <strong>of</strong> <strong>the</strong> memory management system to<br />

perform efficient data transfers between disks <strong>and</strong> requesting applications.<br />

HFS contains <strong>the</strong> flexibility that is necessary to match <strong>the</strong> goals <strong>of</strong> K42, which is why it was selected<br />

as <strong>the</strong> K42 native file system. However, <strong>the</strong> scalability characteristics <strong>of</strong> HFS were, to date, never really<br />

tested 2 . A secondary motivation is to evaluate <strong>the</strong> effectiveness <strong>and</strong> robustness <strong>of</strong> <strong>the</strong> original file system<br />

design on new operating system <strong>and</strong> hardware technology, which has evolved significantly since <strong>the</strong> inception<br />

<strong>of</strong> Hector <strong>and</strong> <strong>Hurricane</strong>. That is, we can now determine whe<strong>the</strong>r <strong>the</strong> initial design withst<strong>and</strong>s <strong>the</strong> test <strong>of</strong><br />

time <strong>and</strong> can exploit new technologies, or whe<strong>the</strong>r <strong>the</strong> design is restricted to exploiting only “technology<br />

<strong>of</strong> moment”. Since K42 is <strong>the</strong> University <strong>of</strong> Toronto’s third generation research operating system, many<br />

bottlenecks that were present in <strong>the</strong> previous generations have been eliminated or reduced 3 . K42 is a faster<br />

operating system that can stress a file system to an extent not possible in <strong>the</strong> past. As well, <strong>the</strong> disparity<br />

between processor <strong>and</strong> memory speeds has become more severe, possibly affecting file system performance.<br />

A good design would nullify <strong>the</strong> disparity.<br />

1.3 K42 Operating <strong>System</strong><br />

K42 is a research operating system currently being developed to address performance <strong>and</strong> scalability issues<br />

<strong>of</strong> system s<strong>of</strong>tware on large-scale, shared-memory, NUMA multiprocessor computers. The operating system<br />

is a product <strong>of</strong> research at <strong>the</strong> University <strong>of</strong> Toronto in collaboration with <strong>the</strong> K42 group at <strong>the</strong> IBM Thomas<br />

J. Watson Research Center. The core <strong>of</strong> K42 is based on <strong>the</strong> University <strong>of</strong> Toronto’s Tornado Operating<br />

<strong>System</strong> [22]. K42 is <strong>the</strong> university’s third generation <strong>of</strong> research on scalable operating systems. <strong>Hurricane</strong><br />

OS / Hector Multiprocessor was <strong>the</strong> first generation <strong>and</strong> Tornado OS / NUMAchine Multiprocessor [24] was<br />

<strong>the</strong> second generation. K42 runs on 64-bit processors that include <strong>the</strong> 64-bit PowerPC, MIPS, <strong>and</strong> AMD<br />

x86-64 processors. In terms <strong>of</strong> complete systems, K42 runs on SimOS machine simulation s<strong>of</strong>tware [62]<br />

(under 64-bit PowerPC <strong>and</strong> MIPS emulation), <strong>the</strong> NUMAchine multiprocessor (MIPS), <strong>and</strong> IBM RS/6000<br />

64-bit PowerPC computers.<br />

K42 uses a micro-kernel architecture ra<strong>the</strong>r than <strong>the</strong> traditional monolithic kernel design. K42 consists <strong>of</strong><br />

a small exception-h<strong>and</strong>ling component that serves as <strong>the</strong> micro-kernel, a fast IPC mechanism, <strong>and</strong> servers for<br />

all o<strong>the</strong>r components <strong>of</strong> <strong>the</strong> operating system. These servers exist in separate address spaces <strong>and</strong> rely upon <strong>the</strong><br />

fast IPC mechanism for communication with <strong>the</strong> micro-kernel <strong>and</strong> o<strong>the</strong>r servers. Examples <strong>of</strong> fundamental<br />

servers include <strong>the</strong> memory management system <strong>and</strong> processor scheduler. O<strong>the</strong>r servers include <strong>the</strong> resource<br />

<strong>and</strong> may be used interchangeably.<br />

2As described by Krieger in [34, p. 72], <strong>the</strong> scalability <strong>of</strong> HFS was not fully explored under <strong>the</strong> original Hector / <strong>Hurricane</strong><br />

environment.<br />

3Improvements were achieved mainly between <strong>Hurricane</strong> <strong>and</strong> Tornado operating systems. Some <strong>of</strong> <strong>the</strong>se improvements<br />

include IPC performance, <strong>the</strong> elimination <strong>of</strong> hierarchical clustering <strong>and</strong> promotion <strong>of</strong> clustered objects, <strong>and</strong> simpler finer grain<br />

locking.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!