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.

List <strong>of</strong> Figures<br />

3.1 HFS layers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

3.2 Indices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

3.3 Cache types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />

3.4 ORS cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />

3.5 Block cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br />

3.6 VFS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />

3.7 Cache trace <strong>of</strong> getAttribute(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />

3.8 Cache trace <strong>of</strong> path name lookup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />

4.1 Maximally configured hardware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br />

4.2 Ping-pong effect on memory models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />

4.3 Ping-pong effect on perfect memory model, magnified. . . . . . . . . . . . . . . . . . . . . . 32<br />

4.4 Memory system saturation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />

5.1 Experimental setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

5.2 Extent read – unoptimized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

5.3 Extent read – unoptimized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

5.4 Extent read – unoptimized, magnified. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

5.5 Extent read – fully optimized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />

5.6 Extent read – perfect memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />

5.7 Extent read – perfect memory, magnified. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />

5.8 Extent read – baseline. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38<br />

5.9 Extent read – baseline, magnified. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38<br />

5.10 Extent read – spin-only locks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38<br />

5.11 Extent read – 4-way primary <strong>and</strong> 2-way secondary cache. . . . . . . . . . . . . . . . . . . . . 38<br />

5.12 Extent read – rehashed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38<br />

5.13 An example <strong>of</strong> false sharing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />

5.14 Extent read – rehashed & padded ORS hash table. . . . . . . . . . . . . . . . . . . . . . . . 40<br />

5.15 Extent read – larger ORS hash table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40<br />

5.16 Extent read – padded ORS cache entries & hash list headers. . . . . . . . . . . . . . . . . . . 42<br />

5.17 Extent read – all optimizations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br />

5.18 Extent read – fully optimized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br />

5.19 Extent read - fully optimized, magnified. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />

5.20 Regular read. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />

5.21 Regular read – fully optimized. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />

5.22 Regular read – rehashed block cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />

5.23 Regular read – larger rehashed block cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />

5.24 Optimized block cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br />

5.25 Regular read – fine grain locks, larger rehashed block cache. . . . . . . . . . . . . . . . . . . 46<br />

5.26 Regular read – previous optimizations +padding. . . . . . . . . . . . . . . . . . . . . . . . . 47<br />

5.27 Regular read – fine grain locks++, no free list. . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />

5.28 Regular read – fine grain locks++, no free list, magnified. . . . . . . . . . . . . . . . . . . . 47<br />

5.29 S<strong>of</strong>tware set-associative cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br />

5.30 Regular read – global lock++, no free list. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br />

5.31 Regular read – all optimizations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50<br />

5.32 Regular read – all optimizations, magnified. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50<br />

viii

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

Saved successfully!

Ooh no, something went wrong!