rdma

package
v2.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2022 License: MIT Imports: 5 Imported by: 1

Documentation

Overview

Package rdma provides the implementation of an RDMA engine.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DrainReq

type DrainReq struct {
	sim.MsgMeta
}

DrainReq asks the rdma to stop processing requests from L1 while allowing pending requests to L2 to complete

func (*DrainReq) Meta

func (r *DrainReq) Meta() *sim.MsgMeta

Meta returns the meta data associated with the message.

type DrainReqBuilder

type DrainReqBuilder struct {
	// contains filtered or unexported fields
}

DrainReqBuilder can build RDMA drain requests

func (DrainReqBuilder) Build

func (b DrainReqBuilder) Build() *DrainReq

Build creats a new DrainReq

func (DrainReqBuilder) WithDst

func (b DrainReqBuilder) WithDst(dst sim.Port) DrainReqBuilder

WithDst sets the destination of the request to build.

func (DrainReqBuilder) WithSendTime

func (b DrainReqBuilder) WithSendTime(
	t sim.VTimeInSec,
) DrainReqBuilder

WithSendTime sets the send time of the request to build.:w

func (DrainReqBuilder) WithSrc

func (b DrainReqBuilder) WithSrc(src sim.Port) DrainReqBuilder

WithSrc sets the source of the request to build.

type DrainRsp

type DrainRsp struct {
	sim.MsgMeta
}

DrainRsp is a drain complete response to a RDMA Drain Req

func (*DrainRsp) Meta

func (r *DrainRsp) Meta() *sim.MsgMeta

Meta returns the meta data associated with the message.

type DrainRspBuilder

type DrainRspBuilder struct {
	// contains filtered or unexported fields
}

DrainRspBuilder can build RDMA drain responses

func (DrainRspBuilder) Build

func (b DrainRspBuilder) Build() *DrainRsp

Build creats a new RDMADrainRsp

func (DrainRspBuilder) WithDst

func (b DrainRspBuilder) WithDst(dst sim.Port) DrainRspBuilder

WithDst sets the destination of the request to build.

func (DrainRspBuilder) WithSendTime

func (b DrainRspBuilder) WithSendTime(
	t sim.VTimeInSec,
) DrainRspBuilder

WithSendTime sets the send time of the request to build

func (DrainRspBuilder) WithSrc

func (b DrainRspBuilder) WithSrc(src sim.Port) DrainRspBuilder

WithSrc sets the source of the request to build.

type Engine

type Engine struct {
	*sim.TickingComponent

	ToOutside sim.Port

	ToL1 sim.Port
	ToL2 sim.Port

	CtrlPort sim.Port

	RemoteRDMAAddressTable mem.LowModuleFinder
	// contains filtered or unexported fields
}

An Engine is a component that helps one GPU to access the memory on another GPU

func NewEngine

func NewEngine(
	name string,
	engine sim.Engine,
	localModules mem.LowModuleFinder,
	remoteModules mem.LowModuleFinder,
) *Engine

NewEngine creates new engine

func (*Engine) SetFreq

func (e *Engine) SetFreq(freq sim.Freq)

SetFreq sets freq

func (*Engine) SetLocalModuleFinder

func (e *Engine) SetLocalModuleFinder(lmf mem.LowModuleFinder)

SetLocalModuleFinder sets the table to lookup for local data.

func (*Engine) Tick

func (e *Engine) Tick(now sim.VTimeInSec) bool

Tick checks if make progress

type RestartReq

type RestartReq struct {
	sim.MsgMeta
}

RestartReq is a message to allow rdma to continue processing reqs from L1

func (*RestartReq) Meta

func (r *RestartReq) Meta() *sim.MsgMeta

Meta returns the meta data associated with the message.

type RestartReqBuilder

type RestartReqBuilder struct {
	// contains filtered or unexported fields
}

RestartReqBuilder can build RDMA restart req

func (RestartReqBuilder) Build

func (b RestartReqBuilder) Build() *RestartReq

Build creats a new RDMADrainRsp

func (RestartReqBuilder) WithDst

WithDst sets the destination of the request to build.

func (RestartReqBuilder) WithSendTime

func (b RestartReqBuilder) WithSendTime(
	t sim.VTimeInSec,
) RestartReqBuilder

WithSendTime sets the send time of the request to build

func (RestartReqBuilder) WithSrc

WithSrc sets the source of the request to build.

type RestartRsp

type RestartRsp struct {
	sim.MsgMeta
}

RestartRsp is a drain complete response to a RDMA Drain Req

func (*RestartRsp) Meta

func (r *RestartRsp) Meta() *sim.MsgMeta

Meta returns the meta data associated with the message.

type RestartRspBuilder

type RestartRspBuilder struct {
	// contains filtered or unexported fields
}

RestartRspBuilder can build RDMA drain responses

func (RestartRspBuilder) Build

func (b RestartRspBuilder) Build() *RestartRsp

Build creats a new RDMADrainRsp

func (RestartRspBuilder) WithDst

WithDst sets the destination of the request to build.

func (RestartRspBuilder) WithSendTime

func (b RestartRspBuilder) WithSendTime(
	t sim.VTimeInSec,
) RestartRspBuilder

WithSendTime sets the send time of the request to build

func (RestartRspBuilder) WithSrc

WithSrc sets the source of the request to build.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL