ZigZag - Deep Learning Hardware Design Space Exploration
This repository presents the novel version of our tried-and-tested hardware Architecture-Mapping Design Space Exploration (DSE) Framework for Deep Learning (DL) accelerators. ZigZag bridges the gap between algorithmic DL decisions and their acceleration cost on specialized accelerators through a fast and accurate hardware cost estimation.
FourWayDataMoving Class Reference

Represents a standard four-way data moving attribute of a memory interface. More...

Inheritance diagram for FourWayDataMoving:
Collaboration diagram for FourWayDataMoving:

Public Member Functions

def __init__ (self, dict[DataDirection, T]|None data=None)
 Initialize with a dictionary containing all four DataDirection values, defaulting to zero. More...
 
T get (self, DataDirection direction)
 Retrieve the value associated with a specific data direction. More...
 
def set (self, DataDirection direction, T value)
 Update the value of a specific data direction. More...
 
"FourWayDataMoving[T]" __add__ (self, "FourWayDataMoving[T]" other)
 Element-wise addition of two FourWayDataMoving instances. More...
 
"FourWayDataMoving[T]" __mul__ (self, T scalar)
 Element-wise multiplication by a scalar. More...
 
def __repr__ (self)
 Readable string representation of the class. More...
 
def __jsonrepr__ (self)
 JSON-friendly representation. More...
 

Detailed Description

Represents a standard four-way data moving attribute of a memory interface.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
dict[DataDirection, T] | None   data = None 
)

Initialize with a dictionary containing all four DataDirection values, defaulting to zero.

Here is the call graph for this function:

Member Function Documentation

◆ __add__()

"FourWayDataMoving[T]" __add__ (   self,
"FourWayDataMoving[T]"  other 
)

Element-wise addition of two FourWayDataMoving instances.

◆ __jsonrepr__()

def __jsonrepr__ (   self)

JSON-friendly representation.

◆ __mul__()

"FourWayDataMoving[T]" __mul__ (   self,
T  scalar 
)

Element-wise multiplication by a scalar.

◆ __repr__()

def __repr__ (   self)

Readable string representation of the class.

◆ get()

T get (   self,
DataDirection  direction 
)

Retrieve the value associated with a specific data direction.

◆ set()

def set (   self,
DataDirection  direction,
T  value 
)

Update the value of a specific data direction.

Here is the caller graph for this function:

The documentation for this class was generated from the following file: