Documentation
¶
Index ¶
- Constants
- Variables
- func RegisterGluttonServer(s grpc.ServiceRegistrar, srv GluttonServer)
- type BurnCPURequest
- func (*BurnCPURequest) Descriptor() ([]byte, []int)deprecated
- func (x *BurnCPURequest) GetDurationMs() int64
- func (x *BurnCPURequest) GetParallelism() int32
- func (*BurnCPURequest) ProtoMessage()
- func (x *BurnCPURequest) ProtoReflect() protoreflect.Message
- func (x *BurnCPURequest) Reset()
- func (x *BurnCPURequest) String() string
- type BurnCPUResponse
- type GluttonClient
- type GluttonServer
- type GossipRequest
- type GossipResponse
- type IngestRequest
- func (*IngestRequest) Descriptor() ([]byte, []int)deprecated
- func (x *IngestRequest) GetAppend() bool
- func (x *IngestRequest) GetKey() string
- func (x *IngestRequest) GetPayload() []byte
- func (*IngestRequest) ProtoMessage()
- func (x *IngestRequest) ProtoReflect() protoreflect.Message
- func (x *IngestRequest) Reset()
- func (x *IngestRequest) String() string
- type IngestResponse
- func (*IngestResponse) Descriptor() ([]byte, []int)deprecated
- func (x *IngestResponse) GetSha256() []byte
- func (x *IngestResponse) GetSize() int64
- func (*IngestResponse) ProtoMessage()
- func (x *IngestResponse) ProtoReflect() protoreflect.Message
- func (x *IngestResponse) Reset()
- func (x *IngestResponse) String() string
- type OpenFDRequest
- type OpenFDResponse
- type Peer
- type PingRequest
- type PingResponse
- type ReadDiskRequest
- func (*ReadDiskRequest) Descriptor() ([]byte, []int)deprecated
- func (x *ReadDiskRequest) GetKey() string
- func (x *ReadDiskRequest) GetReadMode() ReadMode
- func (*ReadDiskRequest) ProtoMessage()
- func (x *ReadDiskRequest) ProtoReflect() protoreflect.Message
- func (x *ReadDiskRequest) Reset()
- func (x *ReadDiskRequest) String() string
- type ReadDiskResponse
- func (*ReadDiskResponse) Descriptor() ([]byte, []int)deprecated
- func (x *ReadDiskResponse) GetData() []byte
- func (x *ReadDiskResponse) GetSha256() []byte
- func (x *ReadDiskResponse) GetSize() int64
- func (*ReadDiskResponse) ProtoMessage()
- func (x *ReadDiskResponse) ProtoReflect() protoreflect.Message
- func (x *ReadDiskResponse) Reset()
- func (x *ReadDiskResponse) String() string
- type ReadMode
- type ReadRAMRequest
- func (*ReadRAMRequest) Descriptor() ([]byte, []int)deprecated
- func (x *ReadRAMRequest) GetKey() string
- func (x *ReadRAMRequest) GetSize() string
- func (*ReadRAMRequest) ProtoMessage()
- func (x *ReadRAMRequest) ProtoReflect() protoreflect.Message
- func (x *ReadRAMRequest) Reset()
- func (x *ReadRAMRequest) String() string
- type ReadRAMResponse
- func (*ReadRAMResponse) Descriptor() ([]byte, []int)deprecated
- func (x *ReadRAMResponse) GetChecksum() uint32
- func (x *ReadRAMResponse) GetSize() int64
- func (*ReadRAMResponse) ProtoMessage()
- func (x *ReadRAMResponse) ProtoReflect() protoreflect.Message
- func (x *ReadRAMResponse) Reset()
- func (x *ReadRAMResponse) String() string
- type UnimplementedGluttonServer
- func (UnimplementedGluttonServer) BurnCPU(context.Context, *BurnCPURequest) (*BurnCPUResponse, error)
- func (UnimplementedGluttonServer) Gossip(context.Context, *GossipRequest) (*GossipResponse, error)
- func (UnimplementedGluttonServer) Ingest(context.Context, *IngestRequest) (*IngestResponse, error)
- func (UnimplementedGluttonServer) OpenFD(context.Context, *OpenFDRequest) (*OpenFDResponse, error)
- func (UnimplementedGluttonServer) Ping(context.Context, *PingRequest) (*PingResponse, error)
- func (UnimplementedGluttonServer) ReadDisk(context.Context, *ReadDiskRequest) (*ReadDiskResponse, error)
- func (UnimplementedGluttonServer) ReadRAM(context.Context, *ReadRAMRequest) (*ReadRAMResponse, error)
- func (UnimplementedGluttonServer) UseCPU(context.Context, *UseCPURequest) (*UseCPUResponse, error)
- func (UnimplementedGluttonServer) WriteDisk(context.Context, *WriteDiskRequest) (*WriteDiskResponse, error)
- func (UnimplementedGluttonServer) WriteRAM(context.Context, *WriteRAMRequest) (*WriteRAMResponse, error)
- type UnsafeGluttonServer
- type UseCPURequest
- func (*UseCPURequest) Descriptor() ([]byte, []int)deprecated
- func (x *UseCPURequest) GetCapAtGomaxprocs() bool
- func (x *UseCPURequest) GetCycleLengthMs() int32
- func (x *UseCPURequest) GetDutyCycle() float64
- func (x *UseCPURequest) GetNumCores() int32
- func (*UseCPURequest) ProtoMessage()
- func (x *UseCPURequest) ProtoReflect() protoreflect.Message
- func (x *UseCPURequest) Reset()
- func (x *UseCPURequest) String() string
- type UseCPUResponse
- type WriteDiskRequest
- func (*WriteDiskRequest) Descriptor() ([]byte, []int)deprecated
- func (x *WriteDiskRequest) GetKey() string
- func (x *WriteDiskRequest) GetSize() int32
- func (x *WriteDiskRequest) GetWriteMode() WriteMode
- func (*WriteDiskRequest) ProtoMessage()
- func (x *WriteDiskRequest) ProtoReflect() protoreflect.Message
- func (x *WriteDiskRequest) Reset()
- func (x *WriteDiskRequest) String() string
- type WriteDiskResponse
- func (*WriteDiskResponse) Descriptor() ([]byte, []int)deprecated
- func (x *WriteDiskResponse) GetSha256() []byte
- func (x *WriteDiskResponse) GetSize() int64
- func (*WriteDiskResponse) ProtoMessage()
- func (x *WriteDiskResponse) ProtoReflect() protoreflect.Message
- func (x *WriteDiskResponse) Reset()
- func (x *WriteDiskResponse) String() string
- type WriteMode
- type WriteRAMRequest
- func (*WriteRAMRequest) Descriptor() ([]byte, []int)deprecated
- func (x *WriteRAMRequest) GetKey() string
- func (x *WriteRAMRequest) GetSize() string
- func (x *WriteRAMRequest) GetWriteMode() WriteMode
- func (*WriteRAMRequest) ProtoMessage()
- func (x *WriteRAMRequest) ProtoReflect() protoreflect.Message
- func (x *WriteRAMRequest) Reset()
- func (x *WriteRAMRequest) String() string
- type WriteRAMResponse
Constants ¶
const ( Glutton_WriteRAM_FullMethodName = "/glutton.Glutton/WriteRAM" Glutton_ReadRAM_FullMethodName = "/glutton.Glutton/ReadRAM" Glutton_WriteDisk_FullMethodName = "/glutton.Glutton/WriteDisk" Glutton_ReadDisk_FullMethodName = "/glutton.Glutton/ReadDisk" Glutton_OpenFD_FullMethodName = "/glutton.Glutton/OpenFD" Glutton_Ping_FullMethodName = "/glutton.Glutton/Ping" Glutton_Gossip_FullMethodName = "/glutton.Glutton/Gossip" Glutton_BurnCPU_FullMethodName = "/glutton.Glutton/BurnCPU" Glutton_Ingest_FullMethodName = "/glutton.Glutton/Ingest" Glutton_UseCPU_FullMethodName = "/glutton.Glutton/UseCPU" )
Variables ¶
var ( WriteMode_name = map[int32]string{ 0: "WRITE_MODE_TRUNCATE", 1: "WRITE_MODE_OVERWRITE", 2: "WRITE_MODE_OVERWRITE_ROTATE", } WriteMode_value = map[string]int32{ "WRITE_MODE_TRUNCATE": 0, "WRITE_MODE_OVERWRITE": 1, "WRITE_MODE_OVERWRITE_ROTATE": 2, } )
Enum value maps for WriteMode.
var ( ReadMode_name = map[int32]string{ 0: "READ_MODE_DATA", 1: "READ_MODE_DIGEST_ONLY", } ReadMode_value = map[string]int32{ "READ_MODE_DATA": 0, "READ_MODE_DIGEST_ONLY": 1, } )
Enum value maps for ReadMode.
var File_glutton_proto protoreflect.FileDescriptor
var Glutton_ServiceDesc = grpc.ServiceDesc{ ServiceName: "glutton.Glutton", HandlerType: (*GluttonServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "WriteRAM", Handler: _Glutton_WriteRAM_Handler, }, { MethodName: "ReadRAM", Handler: _Glutton_ReadRAM_Handler, }, { MethodName: "WriteDisk", Handler: _Glutton_WriteDisk_Handler, }, { MethodName: "ReadDisk", Handler: _Glutton_ReadDisk_Handler, }, { MethodName: "OpenFD", Handler: _Glutton_OpenFD_Handler, }, { MethodName: "Ping", Handler: _Glutton_Ping_Handler, }, { MethodName: "Gossip", Handler: _Glutton_Gossip_Handler, }, { MethodName: "BurnCPU", Handler: _Glutton_BurnCPU_Handler, }, { MethodName: "Ingest", Handler: _Glutton_Ingest_Handler, }, { MethodName: "UseCPU", Handler: _Glutton_UseCPU_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "glutton.proto", }
Glutton_ServiceDesc is the grpc.ServiceDesc for Glutton service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterGluttonServer ¶
func RegisterGluttonServer(s grpc.ServiceRegistrar, srv GluttonServer)
Types ¶
type BurnCPURequest ¶ added in v0.4.0
type BurnCPURequest struct {
// Wall-clock time to keep burning, in milliseconds.
DurationMs int64 `protobuf:"varint,1,opt,name=duration_ms,json=durationMs,proto3" json:"duration_ms,omitempty"`
// Number of goroutines burning concurrently; values < 1 read as 1.
Parallelism int32 `protobuf:"varint,2,opt,name=parallelism,proto3" json:"parallelism,omitempty"`
// contains filtered or unexported fields
}
func (*BurnCPURequest) Descriptor
deprecated
added in
v0.4.0
func (*BurnCPURequest) Descriptor() ([]byte, []int)
Deprecated: Use BurnCPURequest.ProtoReflect.Descriptor instead.
func (*BurnCPURequest) GetDurationMs ¶ added in v0.4.0
func (x *BurnCPURequest) GetDurationMs() int64
func (*BurnCPURequest) GetParallelism ¶ added in v0.4.0
func (x *BurnCPURequest) GetParallelism() int32
func (*BurnCPURequest) ProtoMessage ¶ added in v0.4.0
func (*BurnCPURequest) ProtoMessage()
func (*BurnCPURequest) ProtoReflect ¶ added in v0.4.0
func (x *BurnCPURequest) ProtoReflect() protoreflect.Message
func (*BurnCPURequest) Reset ¶ added in v0.4.0
func (x *BurnCPURequest) Reset()
func (*BurnCPURequest) String ¶ added in v0.4.0
func (x *BurnCPURequest) String() string
type BurnCPUResponse ¶ added in v0.4.0
type BurnCPUResponse struct {
// Total hash iterations completed across all goroutines, so the burn
// is observable and cannot be optimized away.
Iterations int64 `protobuf:"varint,1,opt,name=iterations,proto3" json:"iterations,omitempty"`
// contains filtered or unexported fields
}
func (*BurnCPUResponse) Descriptor
deprecated
added in
v0.4.0
func (*BurnCPUResponse) Descriptor() ([]byte, []int)
Deprecated: Use BurnCPUResponse.ProtoReflect.Descriptor instead.
func (*BurnCPUResponse) GetIterations ¶ added in v0.4.0
func (x *BurnCPUResponse) GetIterations() int64
func (*BurnCPUResponse) ProtoMessage ¶ added in v0.4.0
func (*BurnCPUResponse) ProtoMessage()
func (*BurnCPUResponse) ProtoReflect ¶ added in v0.4.0
func (x *BurnCPUResponse) ProtoReflect() protoreflect.Message
func (*BurnCPUResponse) Reset ¶ added in v0.4.0
func (x *BurnCPUResponse) Reset()
func (*BurnCPUResponse) String ¶ added in v0.4.0
func (x *BurnCPUResponse) String() string
type GluttonClient ¶
type GluttonClient interface {
// Tells glutton to write to RAM, either overwriting previously-used
// RAM or allocating additional RAM per request instructions. Data written
// will be random bytes.
WriteRAM(ctx context.Context, in *WriteRAMRequest, opts ...grpc.CallOption) (*WriteRAMResponse, error)
// Walks RAM previously allocated by WriteRAM: reads one byte per 4KiB
// page across the requested size, so every touched page must be resident
// before the response returns.
ReadRAM(ctx context.Context, in *ReadRAMRequest, opts ...grpc.CallOption) (*ReadRAMResponse, error)
// Tells glutton to write to disk using the specified mode. Data
// written will be random bytes.
WriteDisk(ctx context.Context, in *WriteDiskRequest, opts ...grpc.CallOption) (*WriteDiskResponse, error)
// Tells glutton to read from disk using the specified mode.
ReadDisk(ctx context.Context, in *ReadDiskRequest, opts ...grpc.CallOption) (*ReadDiskResponse, error)
// Tells glutton to make sure it has the specified number of file
// descriptors open. It will open or close file descriptors to
// hit the desired count (note this count is in addition to the other
// FDs needed to run the process).
OpenFD(ctx context.Context, in *OpenFDRequest, opts ...grpc.CallOption) (*OpenFDResponse, error)
// Send a request to the glutton, expecting the same response back.
Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*PingResponse, error)
// Tells the glutton to send network traffic to a peer glutton.
// messages will be sent on regular intervals separated by delay_ms.
Gossip(ctx context.Context, in *GossipRequest, opts ...grpc.CallOption) (*GossipResponse, error)
// Tells glutton to spin CPU for a wall-clock duration, hashing in a
// tight loop across the requested number of goroutines. Models
// compute-bound work such as compiling or running a test suite.
BurnCPU(ctx context.Context, in *BurnCPURequest, opts ...grpc.CallOption) (*BurnCPUResponse, error)
// Carries caller-supplied bytes over the wire into the glutton, which
// writes them to a file under its data dir. Unlike WriteDisk, the bytes
// cross the network, so the request models a download (git clone,
// dependency fetch) arriving through the actor's ingress path.
Ingest(ctx context.Context, in *IngestRequest, opts ...grpc.CallOption) (*IngestResponse, error)
// Tells the glutton to consume CPU. The request sets the current CPU
// load; calling again replaces it, and num_cores=0 stops it. See
// UseCPURequest for the (goroutines x duty cycle) shape.
UseCPU(ctx context.Context, in *UseCPURequest, opts ...grpc.CallOption) (*UseCPUResponse, error)
}
GluttonClient is the client API for Glutton service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
A glutton is a single small piece of a larger benchmarking suite. It is designed to be instantiated multiple times, with each piece configured to do different units of work.
func NewGluttonClient ¶
func NewGluttonClient(cc grpc.ClientConnInterface) GluttonClient
type GluttonServer ¶
type GluttonServer interface {
// Tells glutton to write to RAM, either overwriting previously-used
// RAM or allocating additional RAM per request instructions. Data written
// will be random bytes.
WriteRAM(context.Context, *WriteRAMRequest) (*WriteRAMResponse, error)
// Walks RAM previously allocated by WriteRAM: reads one byte per 4KiB
// page across the requested size, so every touched page must be resident
// before the response returns.
ReadRAM(context.Context, *ReadRAMRequest) (*ReadRAMResponse, error)
// Tells glutton to write to disk using the specified mode. Data
// written will be random bytes.
WriteDisk(context.Context, *WriteDiskRequest) (*WriteDiskResponse, error)
// Tells glutton to read from disk using the specified mode.
ReadDisk(context.Context, *ReadDiskRequest) (*ReadDiskResponse, error)
// Tells glutton to make sure it has the specified number of file
// descriptors open. It will open or close file descriptors to
// hit the desired count (note this count is in addition to the other
// FDs needed to run the process).
OpenFD(context.Context, *OpenFDRequest) (*OpenFDResponse, error)
// Send a request to the glutton, expecting the same response back.
Ping(context.Context, *PingRequest) (*PingResponse, error)
// Tells the glutton to send network traffic to a peer glutton.
// messages will be sent on regular intervals separated by delay_ms.
Gossip(context.Context, *GossipRequest) (*GossipResponse, error)
// Tells glutton to spin CPU for a wall-clock duration, hashing in a
// tight loop across the requested number of goroutines. Models
// compute-bound work such as compiling or running a test suite.
BurnCPU(context.Context, *BurnCPURequest) (*BurnCPUResponse, error)
// Carries caller-supplied bytes over the wire into the glutton, which
// writes them to a file under its data dir. Unlike WriteDisk, the bytes
// cross the network, so the request models a download (git clone,
// dependency fetch) arriving through the actor's ingress path.
Ingest(context.Context, *IngestRequest) (*IngestResponse, error)
// Tells the glutton to consume CPU. The request sets the current CPU
// load; calling again replaces it, and num_cores=0 stops it. See
// UseCPURequest for the (goroutines x duty cycle) shape.
UseCPU(context.Context, *UseCPURequest) (*UseCPUResponse, error)
// contains filtered or unexported methods
}
GluttonServer is the server API for Glutton service. All implementations must embed UnimplementedGluttonServer for forward compatibility.
A glutton is a single small piece of a larger benchmarking suite. It is designed to be instantiated multiple times, with each piece configured to do different units of work.
type GossipRequest ¶
type GossipRequest struct {
Peers []*Peer `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
// contains filtered or unexported fields
}
func (*GossipRequest) Descriptor
deprecated
func (*GossipRequest) Descriptor() ([]byte, []int)
Deprecated: Use GossipRequest.ProtoReflect.Descriptor instead.
func (*GossipRequest) GetPeers ¶
func (x *GossipRequest) GetPeers() []*Peer
func (*GossipRequest) ProtoMessage ¶
func (*GossipRequest) ProtoMessage()
func (*GossipRequest) ProtoReflect ¶
func (x *GossipRequest) ProtoReflect() protoreflect.Message
func (*GossipRequest) Reset ¶
func (x *GossipRequest) Reset()
func (*GossipRequest) String ¶
func (x *GossipRequest) String() string
type GossipResponse ¶
type GossipResponse struct {
// contains filtered or unexported fields
}
func (*GossipResponse) Descriptor
deprecated
func (*GossipResponse) Descriptor() ([]byte, []int)
Deprecated: Use GossipResponse.ProtoReflect.Descriptor instead.
func (*GossipResponse) ProtoMessage ¶
func (*GossipResponse) ProtoMessage()
func (*GossipResponse) ProtoReflect ¶
func (x *GossipResponse) ProtoReflect() protoreflect.Message
func (*GossipResponse) Reset ¶
func (x *GossipResponse) Reset()
func (*GossipResponse) String ¶
func (x *GossipResponse) String() string
type IngestRequest ¶ added in v0.4.0
type IngestRequest struct {
// name of the file the payload is written to
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// the bytes to write, carried in the request body over the network
Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
// append to the file instead of truncating it
Append bool `protobuf:"varint,3,opt,name=append,proto3" json:"append,omitempty"`
// contains filtered or unexported fields
}
func (*IngestRequest) Descriptor
deprecated
added in
v0.4.0
func (*IngestRequest) Descriptor() ([]byte, []int)
Deprecated: Use IngestRequest.ProtoReflect.Descriptor instead.
func (*IngestRequest) GetAppend ¶ added in v0.4.0
func (x *IngestRequest) GetAppend() bool
func (*IngestRequest) GetKey ¶ added in v0.4.0
func (x *IngestRequest) GetKey() string
func (*IngestRequest) GetPayload ¶ added in v0.4.0
func (x *IngestRequest) GetPayload() []byte
func (*IngestRequest) ProtoMessage ¶ added in v0.4.0
func (*IngestRequest) ProtoMessage()
func (*IngestRequest) ProtoReflect ¶ added in v0.4.0
func (x *IngestRequest) ProtoReflect() protoreflect.Message
func (*IngestRequest) Reset ¶ added in v0.4.0
func (x *IngestRequest) Reset()
func (*IngestRequest) String ¶ added in v0.4.0
func (x *IngestRequest) String() string
type IngestResponse ¶ added in v0.4.0
type IngestResponse struct {
// size of the file after the write
Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"`
// sha256 of the payload as received, so the caller can verify transport
Sha256 []byte `protobuf:"bytes,2,opt,name=sha256,proto3" json:"sha256,omitempty"`
// contains filtered or unexported fields
}
func (*IngestResponse) Descriptor
deprecated
added in
v0.4.0
func (*IngestResponse) Descriptor() ([]byte, []int)
Deprecated: Use IngestResponse.ProtoReflect.Descriptor instead.
func (*IngestResponse) GetSha256 ¶ added in v0.4.0
func (x *IngestResponse) GetSha256() []byte
func (*IngestResponse) GetSize ¶ added in v0.4.0
func (x *IngestResponse) GetSize() int64
func (*IngestResponse) ProtoMessage ¶ added in v0.4.0
func (*IngestResponse) ProtoMessage()
func (*IngestResponse) ProtoReflect ¶ added in v0.4.0
func (x *IngestResponse) ProtoReflect() protoreflect.Message
func (*IngestResponse) Reset ¶ added in v0.4.0
func (x *IngestResponse) Reset()
func (*IngestResponse) String ¶ added in v0.4.0
func (x *IngestResponse) String() string
type OpenFDRequest ¶
type OpenFDRequest struct {
// The total number of FDs for the glutton to open
Count int32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
// contains filtered or unexported fields
}
func (*OpenFDRequest) Descriptor
deprecated
func (*OpenFDRequest) Descriptor() ([]byte, []int)
Deprecated: Use OpenFDRequest.ProtoReflect.Descriptor instead.
func (*OpenFDRequest) GetCount ¶
func (x *OpenFDRequest) GetCount() int32
func (*OpenFDRequest) ProtoMessage ¶
func (*OpenFDRequest) ProtoMessage()
func (*OpenFDRequest) ProtoReflect ¶
func (x *OpenFDRequest) ProtoReflect() protoreflect.Message
func (*OpenFDRequest) Reset ¶
func (x *OpenFDRequest) Reset()
func (*OpenFDRequest) String ¶
func (x *OpenFDRequest) String() string
type OpenFDResponse ¶
type OpenFDResponse struct {
// contains filtered or unexported fields
}
func (*OpenFDResponse) Descriptor
deprecated
func (*OpenFDResponse) Descriptor() ([]byte, []int)
Deprecated: Use OpenFDResponse.ProtoReflect.Descriptor instead.
func (*OpenFDResponse) ProtoMessage ¶
func (*OpenFDResponse) ProtoMessage()
func (*OpenFDResponse) ProtoReflect ¶
func (x *OpenFDResponse) ProtoReflect() protoreflect.Message
func (*OpenFDResponse) Reset ¶
func (x *OpenFDResponse) Reset()
func (*OpenFDResponse) String ¶
func (x *OpenFDResponse) String() string
type Peer ¶
type Peer struct {
Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
DelayMs int32 `protobuf:"varint,2,opt,name=delay_ms,json=delayMs,proto3" json:"delay_ms,omitempty"`
// contains filtered or unexported fields
}
func (*Peer) Descriptor
deprecated
func (*Peer) GetDelayMs ¶
func (*Peer) ProtoMessage ¶
func (*Peer) ProtoMessage()
func (*Peer) ProtoReflect ¶
func (x *Peer) ProtoReflect() protoreflect.Message
type PingRequest ¶
type PingRequest struct {
// The message to be echoed back from the ping
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
// contains filtered or unexported fields
}
func (*PingRequest) Descriptor
deprecated
func (*PingRequest) Descriptor() ([]byte, []int)
Deprecated: Use PingRequest.ProtoReflect.Descriptor instead.
func (*PingRequest) GetMessage ¶
func (x *PingRequest) GetMessage() string
func (*PingRequest) ProtoMessage ¶
func (*PingRequest) ProtoMessage()
func (*PingRequest) ProtoReflect ¶
func (x *PingRequest) ProtoReflect() protoreflect.Message
func (*PingRequest) Reset ¶
func (x *PingRequest) Reset()
func (*PingRequest) String ¶
func (x *PingRequest) String() string
type PingResponse ¶
type PingResponse struct {
// The message echoed back
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
// contains filtered or unexported fields
}
func (*PingResponse) Descriptor
deprecated
func (*PingResponse) Descriptor() ([]byte, []int)
Deprecated: Use PingResponse.ProtoReflect.Descriptor instead.
func (*PingResponse) GetMessage ¶
func (x *PingResponse) GetMessage() string
func (*PingResponse) ProtoMessage ¶
func (*PingResponse) ProtoMessage()
func (*PingResponse) ProtoReflect ¶
func (x *PingResponse) ProtoReflect() protoreflect.Message
func (*PingResponse) Reset ¶
func (x *PingResponse) Reset()
func (*PingResponse) String ¶
func (x *PingResponse) String() string
type ReadDiskRequest ¶
type ReadDiskRequest struct {
// name of the file to be read from
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
ReadMode ReadMode `protobuf:"varint,2,opt,name=read_mode,json=readMode,proto3,enum=glutton.ReadMode" json:"read_mode,omitempty"`
// contains filtered or unexported fields
}
func (*ReadDiskRequest) Descriptor
deprecated
func (*ReadDiskRequest) Descriptor() ([]byte, []int)
Deprecated: Use ReadDiskRequest.ProtoReflect.Descriptor instead.
func (*ReadDiskRequest) GetKey ¶
func (x *ReadDiskRequest) GetKey() string
func (*ReadDiskRequest) GetReadMode ¶
func (x *ReadDiskRequest) GetReadMode() ReadMode
func (*ReadDiskRequest) ProtoMessage ¶
func (*ReadDiskRequest) ProtoMessage()
func (*ReadDiskRequest) ProtoReflect ¶
func (x *ReadDiskRequest) ProtoReflect() protoreflect.Message
func (*ReadDiskRequest) Reset ¶
func (x *ReadDiskRequest) Reset()
func (*ReadDiskRequest) String ¶
func (x *ReadDiskRequest) String() string
type ReadDiskResponse ¶
type ReadDiskResponse struct {
// total size of bytes read
Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"`
// sha256 of bytes read
Sha256 []byte `protobuf:"bytes,2,opt,name=sha256,proto3" json:"sha256,omitempty"`
// data read from the file. Empty under READ_MODE_DIGEST_ONLY.
Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
// contains filtered or unexported fields
}
func (*ReadDiskResponse) Descriptor
deprecated
func (*ReadDiskResponse) Descriptor() ([]byte, []int)
Deprecated: Use ReadDiskResponse.ProtoReflect.Descriptor instead.
func (*ReadDiskResponse) GetData ¶
func (x *ReadDiskResponse) GetData() []byte
func (*ReadDiskResponse) GetSha256 ¶
func (x *ReadDiskResponse) GetSha256() []byte
func (*ReadDiskResponse) GetSize ¶
func (x *ReadDiskResponse) GetSize() int64
func (*ReadDiskResponse) ProtoMessage ¶
func (*ReadDiskResponse) ProtoMessage()
func (*ReadDiskResponse) ProtoReflect ¶
func (x *ReadDiskResponse) ProtoReflect() protoreflect.Message
func (*ReadDiskResponse) Reset ¶
func (x *ReadDiskResponse) Reset()
func (*ReadDiskResponse) String ¶
func (x *ReadDiskResponse) String() string
type ReadMode ¶
type ReadMode int32
ReadMode selects how much of the file ReadDisk sends back.
const ( // Return the file's bytes in ReadDiskResponse.data alongside its digest. ReadMode_READ_MODE_DATA ReadMode = 0 // Return only size and sha256; ReadDiskResponse.data is empty. The digest // is the same one READ_MODE_DATA returns, so either mode can verify. ReadMode_READ_MODE_DIGEST_ONLY ReadMode = 1 )
func (ReadMode) Descriptor ¶
func (ReadMode) Descriptor() protoreflect.EnumDescriptor
func (ReadMode) EnumDescriptor
deprecated
func (ReadMode) Number ¶
func (x ReadMode) Number() protoreflect.EnumNumber
func (ReadMode) Type ¶
func (ReadMode) Type() protoreflect.EnumType
type ReadRAMRequest ¶
type ReadRAMRequest struct {
// name of the array to be read
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// size of bytes to walk, with an optional unit suffix (e.g. "2Gi");
// empty walks the whole array
Size string `protobuf:"bytes,2,opt,name=size,proto3" json:"size,omitempty"`
// contains filtered or unexported fields
}
func (*ReadRAMRequest) Descriptor
deprecated
func (*ReadRAMRequest) Descriptor() ([]byte, []int)
Deprecated: Use ReadRAMRequest.ProtoReflect.Descriptor instead.
func (*ReadRAMRequest) GetKey ¶
func (x *ReadRAMRequest) GetKey() string
func (*ReadRAMRequest) GetSize ¶
func (x *ReadRAMRequest) GetSize() string
func (*ReadRAMRequest) ProtoMessage ¶
func (*ReadRAMRequest) ProtoMessage()
func (*ReadRAMRequest) ProtoReflect ¶
func (x *ReadRAMRequest) ProtoReflect() protoreflect.Message
func (*ReadRAMRequest) Reset ¶
func (x *ReadRAMRequest) Reset()
func (*ReadRAMRequest) String ¶
func (x *ReadRAMRequest) String() string
type ReadRAMResponse ¶
type ReadRAMResponse struct {
// total size of bytes walked
Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"`
// XOR of the sampled bytes, so the reads are observable
Checksum uint32 `protobuf:"varint,2,opt,name=checksum,proto3" json:"checksum,omitempty"`
// contains filtered or unexported fields
}
func (*ReadRAMResponse) Descriptor
deprecated
func (*ReadRAMResponse) Descriptor() ([]byte, []int)
Deprecated: Use ReadRAMResponse.ProtoReflect.Descriptor instead.
func (*ReadRAMResponse) GetChecksum ¶
func (x *ReadRAMResponse) GetChecksum() uint32
func (*ReadRAMResponse) GetSize ¶
func (x *ReadRAMResponse) GetSize() int64
func (*ReadRAMResponse) ProtoMessage ¶
func (*ReadRAMResponse) ProtoMessage()
func (*ReadRAMResponse) ProtoReflect ¶
func (x *ReadRAMResponse) ProtoReflect() protoreflect.Message
func (*ReadRAMResponse) Reset ¶
func (x *ReadRAMResponse) Reset()
func (*ReadRAMResponse) String ¶
func (x *ReadRAMResponse) String() string
type UnimplementedGluttonServer ¶
type UnimplementedGluttonServer struct{}
UnimplementedGluttonServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedGluttonServer) BurnCPU ¶ added in v0.4.0
func (UnimplementedGluttonServer) BurnCPU(context.Context, *BurnCPURequest) (*BurnCPUResponse, error)
func (UnimplementedGluttonServer) Gossip ¶
func (UnimplementedGluttonServer) Gossip(context.Context, *GossipRequest) (*GossipResponse, error)
func (UnimplementedGluttonServer) Ingest ¶ added in v0.4.0
func (UnimplementedGluttonServer) Ingest(context.Context, *IngestRequest) (*IngestResponse, error)
func (UnimplementedGluttonServer) OpenFD ¶
func (UnimplementedGluttonServer) OpenFD(context.Context, *OpenFDRequest) (*OpenFDResponse, error)
func (UnimplementedGluttonServer) Ping ¶
func (UnimplementedGluttonServer) Ping(context.Context, *PingRequest) (*PingResponse, error)
func (UnimplementedGluttonServer) ReadDisk ¶
func (UnimplementedGluttonServer) ReadDisk(context.Context, *ReadDiskRequest) (*ReadDiskResponse, error)
func (UnimplementedGluttonServer) ReadRAM ¶
func (UnimplementedGluttonServer) ReadRAM(context.Context, *ReadRAMRequest) (*ReadRAMResponse, error)
func (UnimplementedGluttonServer) UseCPU ¶ added in v0.4.0
func (UnimplementedGluttonServer) UseCPU(context.Context, *UseCPURequest) (*UseCPUResponse, error)
func (UnimplementedGluttonServer) WriteDisk ¶
func (UnimplementedGluttonServer) WriteDisk(context.Context, *WriteDiskRequest) (*WriteDiskResponse, error)
func (UnimplementedGluttonServer) WriteRAM ¶
func (UnimplementedGluttonServer) WriteRAM(context.Context, *WriteRAMRequest) (*WriteRAMResponse, error)
type UnsafeGluttonServer ¶
type UnsafeGluttonServer interface {
// contains filtered or unexported methods
}
UnsafeGluttonServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to GluttonServer will result in compilation errors.
type UseCPURequest ¶ added in v0.4.0
type UseCPURequest struct {
// Number of parallel goroutines to spin, each targeting duty_cycle
// fraction of one CPU core. Set to 0 to stop all CPU load.
NumCores int32 `protobuf:"varint,1,opt,name=num_cores,json=numCores,proto3" json:"num_cores,omitempty"`
// Fraction of CPU time each goroutine should consume, in [0.0, 1.0].
DutyCycle float64 `protobuf:"fixed64,2,opt,name=duty_cycle,json=dutyCycle,proto3" json:"duty_cycle,omitempty"`
// Per-goroutine work/sleep cycle length in milliseconds. Defaults to
// 100 when 0 or unset. Smaller values give smoother load at the cost
// of scheduler and timer-wheel overhead.
CycleLengthMs int32 `protobuf:"varint,3,opt,name=cycle_length_ms,json=cycleLengthMs,proto3" json:"cycle_length_ms,omitempty"`
// Whether num_cores should be capped at GOMAXPROCS. Defaults to true
// when unset. Uncapped (false) lets the caller force oversubscription
// to test scheduler pressure, at the cost of goroutines running below
// their target duty cycle.
CapAtGomaxprocs *bool `protobuf:"varint,4,opt,name=cap_at_gomaxprocs,json=capAtGomaxprocs,proto3,oneof" json:"cap_at_gomaxprocs,omitempty"`
// contains filtered or unexported fields
}
func (*UseCPURequest) Descriptor
deprecated
added in
v0.4.0
func (*UseCPURequest) Descriptor() ([]byte, []int)
Deprecated: Use UseCPURequest.ProtoReflect.Descriptor instead.
func (*UseCPURequest) GetCapAtGomaxprocs ¶ added in v0.4.0
func (x *UseCPURequest) GetCapAtGomaxprocs() bool
func (*UseCPURequest) GetCycleLengthMs ¶ added in v0.4.0
func (x *UseCPURequest) GetCycleLengthMs() int32
func (*UseCPURequest) GetDutyCycle ¶ added in v0.4.0
func (x *UseCPURequest) GetDutyCycle() float64
func (*UseCPURequest) GetNumCores ¶ added in v0.4.0
func (x *UseCPURequest) GetNumCores() int32
func (*UseCPURequest) ProtoMessage ¶ added in v0.4.0
func (*UseCPURequest) ProtoMessage()
func (*UseCPURequest) ProtoReflect ¶ added in v0.4.0
func (x *UseCPURequest) ProtoReflect() protoreflect.Message
func (*UseCPURequest) Reset ¶ added in v0.4.0
func (x *UseCPURequest) Reset()
func (*UseCPURequest) String ¶ added in v0.4.0
func (x *UseCPURequest) String() string
type UseCPUResponse ¶ added in v0.4.0
type UseCPUResponse struct {
// The number of goroutines actually spun. Equals the request's
// num_cores unless it was capped at GOMAXPROCS.
NumCores int32 `protobuf:"varint,1,opt,name=num_cores,json=numCores,proto3" json:"num_cores,omitempty"`
// contains filtered or unexported fields
}
func (*UseCPUResponse) Descriptor
deprecated
added in
v0.4.0
func (*UseCPUResponse) Descriptor() ([]byte, []int)
Deprecated: Use UseCPUResponse.ProtoReflect.Descriptor instead.
func (*UseCPUResponse) GetNumCores ¶ added in v0.4.0
func (x *UseCPUResponse) GetNumCores() int32
func (*UseCPUResponse) ProtoMessage ¶ added in v0.4.0
func (*UseCPUResponse) ProtoMessage()
func (*UseCPUResponse) ProtoReflect ¶ added in v0.4.0
func (x *UseCPUResponse) ProtoReflect() protoreflect.Message
func (*UseCPUResponse) Reset ¶ added in v0.4.0
func (x *UseCPUResponse) Reset()
func (*UseCPUResponse) String ¶ added in v0.4.0
func (x *UseCPUResponse) String() string
type WriteDiskRequest ¶
type WriteDiskRequest struct {
// name of the file to be written to
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// size of bytes to be written
Size int32 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
WriteMode WriteMode `protobuf:"varint,3,opt,name=write_mode,json=writeMode,proto3,enum=glutton.WriteMode" json:"write_mode,omitempty"`
// contains filtered or unexported fields
}
func (*WriteDiskRequest) Descriptor
deprecated
func (*WriteDiskRequest) Descriptor() ([]byte, []int)
Deprecated: Use WriteDiskRequest.ProtoReflect.Descriptor instead.
func (*WriteDiskRequest) GetKey ¶
func (x *WriteDiskRequest) GetKey() string
func (*WriteDiskRequest) GetSize ¶
func (x *WriteDiskRequest) GetSize() int32
func (*WriteDiskRequest) GetWriteMode ¶
func (x *WriteDiskRequest) GetWriteMode() WriteMode
func (*WriteDiskRequest) ProtoMessage ¶
func (*WriteDiskRequest) ProtoMessage()
func (*WriteDiskRequest) ProtoReflect ¶
func (x *WriteDiskRequest) ProtoReflect() protoreflect.Message
func (*WriteDiskRequest) Reset ¶
func (x *WriteDiskRequest) Reset()
func (*WriteDiskRequest) String ¶
func (x *WriteDiskRequest) String() string
type WriteDiskResponse ¶
type WriteDiskResponse struct {
// size of the file after the write
Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"`
// sha256 of the whole file after the write
Sha256 []byte `protobuf:"bytes,2,opt,name=sha256,proto3" json:"sha256,omitempty"`
// contains filtered or unexported fields
}
func (*WriteDiskResponse) Descriptor
deprecated
func (*WriteDiskResponse) Descriptor() ([]byte, []int)
Deprecated: Use WriteDiskResponse.ProtoReflect.Descriptor instead.
func (*WriteDiskResponse) GetSha256 ¶
func (x *WriteDiskResponse) GetSha256() []byte
func (*WriteDiskResponse) GetSize ¶
func (x *WriteDiskResponse) GetSize() int64
func (*WriteDiskResponse) ProtoMessage ¶
func (*WriteDiskResponse) ProtoMessage()
func (*WriteDiskResponse) ProtoReflect ¶
func (x *WriteDiskResponse) ProtoReflect() protoreflect.Message
func (*WriteDiskResponse) Reset ¶
func (x *WriteDiskResponse) Reset()
func (*WriteDiskResponse) String ¶
func (x *WriteDiskResponse) String() string
type WriteMode ¶
type WriteMode int32
const ( // Overwrite the destination entirely WriteMode_WRITE_MODE_TRUNCATE WriteMode = 0 // Write on top of the existing data WriteMode_WRITE_MODE_OVERWRITE WriteMode = 1 // Write on top of the existing data at a per-key cursor that advances // past each write and wraps at the end, so repeated writes walk the // whole array instead of re-dirtying the same prefix. RAM only. WriteMode_WRITE_MODE_OVERWRITE_ROTATE WriteMode = 2 )
func (WriteMode) Descriptor ¶
func (WriteMode) Descriptor() protoreflect.EnumDescriptor
func (WriteMode) EnumDescriptor
deprecated
func (WriteMode) Number ¶
func (x WriteMode) Number() protoreflect.EnumNumber
func (WriteMode) Type ¶
func (WriteMode) Type() protoreflect.EnumType
type WriteRAMRequest ¶
type WriteRAMRequest struct {
// name of the array to be written to
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// size of bytes to be written, with an optional unit suffix (e.g. "2Gi")
Size string `protobuf:"bytes,2,opt,name=size,proto3" json:"size,omitempty"`
WriteMode WriteMode `protobuf:"varint,3,opt,name=write_mode,json=writeMode,proto3,enum=glutton.WriteMode" json:"write_mode,omitempty"`
// contains filtered or unexported fields
}
func (*WriteRAMRequest) Descriptor
deprecated
func (*WriteRAMRequest) Descriptor() ([]byte, []int)
Deprecated: Use WriteRAMRequest.ProtoReflect.Descriptor instead.
func (*WriteRAMRequest) GetKey ¶
func (x *WriteRAMRequest) GetKey() string
func (*WriteRAMRequest) GetSize ¶
func (x *WriteRAMRequest) GetSize() string
func (*WriteRAMRequest) GetWriteMode ¶
func (x *WriteRAMRequest) GetWriteMode() WriteMode
func (*WriteRAMRequest) ProtoMessage ¶
func (*WriteRAMRequest) ProtoMessage()
func (*WriteRAMRequest) ProtoReflect ¶
func (x *WriteRAMRequest) ProtoReflect() protoreflect.Message
func (*WriteRAMRequest) Reset ¶
func (x *WriteRAMRequest) Reset()
func (*WriteRAMRequest) String ¶
func (x *WriteRAMRequest) String() string
type WriteRAMResponse ¶
type WriteRAMResponse struct {
// contains filtered or unexported fields
}
func (*WriteRAMResponse) Descriptor
deprecated
func (*WriteRAMResponse) Descriptor() ([]byte, []int)
Deprecated: Use WriteRAMResponse.ProtoReflect.Descriptor instead.
func (*WriteRAMResponse) ProtoMessage ¶
func (*WriteRAMResponse) ProtoMessage()
func (*WriteRAMResponse) ProtoReflect ¶
func (x *WriteRAMResponse) ProtoReflect() protoreflect.Message
func (*WriteRAMResponse) Reset ¶
func (x *WriteRAMResponse) Reset()
func (*WriteRAMResponse) String ¶
func (x *WriteRAMResponse) String() string