Documentation ¶
Index ¶
- Constants
- Variables
- func NewHPLPhase1Handler(next func(optimal *hpl.Result, err error) error) http.HandlerFunc
- func NewIORHandler(next func(avgr *ior.Result, avgw *ior.Result, err error) error) http.HandlerFunc
- func NewMachineHandler(next func(res *MachineSpec, err error) error) http.HandlerFunc
- func NewOSUHandler(next func(res float64, err error) error) http.HandlerFunc
- func NewSpeedTestHandler(next func(res *speedtest.Result, err error) error) http.HandlerFunc
- type Benchmark
- type Data
- type Launcher
- type LauncherOption
- type MachineSpec
- type Option
- type Store
- func (s *Store) Dump() Data
- func (s *Store) IsComplete() bool
- func (s *Store) SetAllToAllCollectiveLatency(latency float64)
- func (s *Store) SetDiskTmpResult(avgr, avgw *ior.Result)
- func (s *Store) SetDiskWorldTmpResult(avgr, avgw *ior.Result)
- func (s *Store) SetDownloadBandwidth(download uint64)
- func (s *Store) SetFailure(err error)
- func (s *Store) SetGFLOPS(gflops float64)
- func (s *Store) SetMachineSpec(spec *MachineSpec)
- func (s *Store) SetP2PBidirectionalBandwidth(bandwidth float64)
- func (s *Store) SetP2PLatency(latency float64)
- func (s *Store) SetScratchResult(avgr, avgw *ior.Result)
- func (s *Store) SetSharedTmpResult(avgr, avgw *ior.Result)
- func (s *Store) SetSharedWorldTmpResult(avgr, avgw *ior.Result)
- func (s *Store) SetUploadBandwidth(upload uint64)
- func (s *Store) WaitForCompletion(ctx context.Context) (done chan struct{}, errc chan error)
Constants ¶
View Source
const ( GBtoMB = 1000 DefaultTimeLimit = 24 * time.Hour )
View Source
const DefaultHPLImage = "registry-1.deepsquare.run#library/hpc-benchmarks:23.5"
View Source
const DefaultIORImage = "registry-1.deepsquare.run#library/ior-benchmarks:latest"
View Source
const DefaultOSUImage = "registry-1.deepsquare.run#library/osu-benchmarks:latest"
View Source
const DefaultSpeedTestImage = "registry-1.docker.io#gists/speedtest-cli:1.2.0"
Variables ¶
View Source
var DefaultStore = NewStore()
Functions ¶
func NewHPLPhase1Handler ¶
func NewIORHandler ¶
func NewMachineHandler ¶
func NewMachineHandler( next func(res *MachineSpec, err error) error, ) http.HandlerFunc
func NewOSUHandler ¶
func NewOSUHandler( next func(res float64, err error) error, ) http.HandlerFunc
func NewSpeedTestHandler ¶
Types ¶
type Benchmark ¶
type Benchmark scheduler.JobDefinition
func GenerateIORBenchmark ¶
func GenerateOSUBenchmark ¶
type Data ¶
type Data struct { // UploadBandwidth is in bps UploadBandwidth uint64 // DownloadBandwidth is in bps DownloadBandwidth uint64 GFLOPS float64 // P2PBidirectionalBandwidth is in MB/s P2PBidirectionalBandwidth float64 // P2PBidirectionalBandwidth is in us AllToAllCollectiveLatency float64 // P2PLatency is in us P2PLatency float64 ScratchAvgRead *ior.Result ScratchAvgWrite *ior.Result DiskWorldTmpAvgRead *ior.Result DiskWorldTmpAvgWrite *ior.Result DiskTmpAvgRead *ior.Result DiskTmpAvgWrite *ior.Result MachineSpec *MachineSpec }
type Launcher ¶
type Launcher interface { // Cancel cancels all running benchmark Cancel(ctx context.Context, name string) error // Get the generated job name for benchmarks. GetJobName(name string) string Launch( ctx context.Context, name string, benchmark *Benchmark, ) error }
func NewLauncher ¶
type LauncherOption ¶
type LauncherOption func(*launcher)
func WithNoWait ¶
func WithNoWait() LauncherOption
func WithTimeLimit ¶
func WithTimeLimit(timeLimit time.Duration) LauncherOption
type MachineSpec ¶
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store is a simple store with hard-coded keys to store benchmark results.
func (*Store) IsComplete ¶
func (*Store) SetAllToAllCollectiveLatency ¶
func (*Store) SetDiskTmpResult ¶
func (*Store) SetDiskWorldTmpResult ¶
func (*Store) SetDownloadBandwidth ¶
func (*Store) SetFailure ¶
func (*Store) SetMachineSpec ¶
func (s *Store) SetMachineSpec(spec *MachineSpec)
func (*Store) SetP2PBidirectionalBandwidth ¶
func (*Store) SetP2PLatency ¶
func (*Store) SetScratchResult ¶
func (*Store) SetSharedTmpResult ¶
func (*Store) SetSharedWorldTmpResult ¶
func (*Store) SetUploadBandwidth ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.