This project is sponsored by the Innovative Software AG!



Definitions and Objectives

Introduction


Definition of Terms
  • internal-fragmentation
  • external-fragmentation
  • standard formulation
  • fragmentationX
  • fragmented path


  • Link to my old page


    Copyright and Contact



    Tool: Fibmap

    Description
  • download



  • Tool: Read

    Description
  • download



  • Tool: Agesystem

    Description
  • download


  • Gauge Measurements

  • Test System

  • 500 MB Partition

  • file size distribution
  • results for Ext2FS
  • results for ReiserFS
  • results for JFS
  • results for XFS


  • 1GB Partition
  • file size distribution
  • all results


  • 4 GB Partition
  • file size distribution
  • all results


  • Gauge Verifications

  • Test System

  • 500 MB Partition

  • 1 GB Partition

  • 4 GB Partition


  • TODO



    Gauge Performance

    Description
  • download


  • Measurements on 2.4.5

  • Test System

  • Output Explanation

  • variable file size
  • create fixed size
  • append variable size


  • Measurements on 2.4.8

  • Test System

  • Output Explanation

  • variable file size



  • Append Tests

    Description
  • download


  • Measurements on 2.4.8

  • Test System

  • Output Explanation

  • fixed append size
  • variable append size
  • low statistics


  • With Preallocation

  • Output Explanation

  • fixed append size


  • Measurements on 2.4.10
  • Test System

  • Output Explanation

  • fixed append size


  • With Preallocation

  • Output Explanation

  • fixed append size


  • Tool: Agesystem3

    Description
  • download



  • Aging Tests

    Description
  • download


  • Measurements on 2.4.8

  • Test System

  • Explanation of Terms

  • generic file size dist


  • Measurements on 2.4.10
  • Test System

  • Explanation of Terms

  • generic file size dist



  • External Links

    Filesystem Homepages
  • ReiserFS
  • Ext2FS
  • Ext3FS
  • XFS
  • JFS


  • Benchmarks & Results
  • ReiserFS benchs
  • Denis'+Kresimir's site
  • Randy's tests
  • Yves' YAFB tests


  • Literature
  • Smith's site
  • My master thesis




  • Additional Notes

    Copyright 2001 by
    Constantin Loizides,
    loizides AT informatik DOT uni-frankfurt DOT de

    Last changes:
    Do Feb  5 09:40:01 CET 2004
    

    Journaling-Filesystem Fragmentation Project

    Definitions and Objectives




    Introduction

    I am undertaking a small research project investigating the effect of fragmentation on the performance of the
    ReiserFS file system. The project is part of my master thesis at the university of Frankfurt and is financed by the Innovative Software AG.

    The objective is to find and provide a method that artificially ages a filesystem so that one gets an idea of how the performance of a given filesystem behaves under different workloads.

    During the last months also other journaling filesystems have reached version numbers close to one, so I decided to also look at these although mainly focusing on ReiserFS.

    • The standard filesystem benchmarking tools such as Bonnie++, Postmark , Mongo and others all test the optimum case for the block layouting algorithm. In that case the filesystem is empty such that the block allocation algorithm has no problems in layouting the blocks on disk in the way it is designed for.

    • But in practice one also is interested to know how a filesystem performs when it is or was heavily used over a longer period (e.g. months and years). From the user's and administrator's point of view one might also be interested in choosing the right file system for the right task and corresponding workload.

      Filesystems using clusters (like the MSDOS/Windows FAT filesystems) are known to be a worst case example, that get severely fragmented. But also the (Berkeley) FFS filesystem and derivates were investigated in the past and found to pay a performance loss of up to 20 percent dependent of the workload. When looking for further information and literature you might find Smith's site a very good starting point.

    • Nevertheless benchmarks on empty systems are very important. Look at my ''gauge measurements'' or at my older (mongo) benchmarks or at the ReiserFS benchmarking site for newer results. You may also find Denis' and Kresimir's filesystem test interesting, though there page seem to be down. Other results and test suites you will easily find if you search in Google Groups.


    Definition of Terms

    Talking about blocking data into chunks of fixed size one typically uses the terms of internal and external fragmentation.


    Copyright and Contact

    I hold the copyrights on the entire content of this page. I am not responsible for the content of external links, though. The results and graphs I present are part of my master thesis in computer science at the university of Frankfurt. You are allowed to use them for your research, if you correctly cite me (bibtex entry). Look into the source code of the tools for the license information about it (GNU GPL). For questions, criticism, ideas or what ever do not hesitate to mail.

    Constantin Loizides, loizides AT no spam please and robs beware informatik DOT uni-frankfurt DOT de, University of Frankfurt