Skip to content

ilopez5/sonar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Generic badge

SONAR

A custom benchmark for I/O systems

The purpose of this benchmark is to simulate different I/O patterns with configurable parameters in order to test the performance for I/O systems. Initial development of Sonar is intended for to testing the LABIOS I/O system. By obtaining performance metrics, the optimal configurations of different I/O systems can be discovered.

Building

In order to compile Sonar generically, use the command:

mpicxx -o sonar sonar.cpp

or, for usage with LABIOS, use:

mpicxx -o sonar sonar.cpp -llabios -lnats -lmemcached

Configurable parameters:

  • Application Workload
    • Type of Workload (input as # of reads, # of writes)
      • Read Heavy
      • Write Heavy
      • Read Only
      • Write Only
      • Mixed
    • Access pattern
      • Sequential
      • Random
      • Strided
        • Stride length
    • Operation Count
      • Examples:
        • 1000 iterations, 10 requests, 1 access-per-request
        • 10 iterations, 1000 requests, 2 accesses-per-request
        • 505 iterations, 505 requests, 1 access-per-request
    • Size of I/O request (input as lower and upper bound)
      • 4 to 8K
      • 64K to 512K
      • 1M to 16M
      • Distribution (future work)
        • Uniform
        • Normal
        • Gamma
        • Random
    • Scaling
      • # of nodes
        • 1, 2, 4, 8
      • # of processors per node
        • 4, 8, 16, 32
    • Compute
      • Inter-Iteration compute
      • Inter-Operation compute
    • Compute Intensity
      • No compute
      • Sleep-simulated ("busy waiting")
        • Sleep duration
      • Traditional
        • Matrix Multiplication
  • Output log file (.csv)

About

Custom I/O system benchmark

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published