in py/fpga_resnet.py [0:0]
def forward(self, context, program, queue, x):
residual = x
ext = self.ext
out = self.conv1.forward(context, program, queue, x)
inspect("bottleneck conv1", ext, context, program, queue, out)
out = self.relu1.forward(context, program, queue, out)
inspect("bottleneck relu1", ext, context, program, queue, out)
out = self.conv2.forward(context, program, queue, out)
inspect("bottleneck conv2", ext, context, program, queue, out)
out = self.relu2.forward(context, program, queue, out)
inspect("bottleneck relu2", ext, context, program, queue, out)
out = self.conv3.forward(context, program, queue, out)
inspect("bottleneck conv3", ext, context, program, queue, out)
if self.downsample is not None:
residual = self.downsample.forward(context, program, queue, x)
inspect("residual downsample", ext, context, program, queue, residual)
self.add.setAdd(residual)
out = self.add.forward(context, program, queue, out)
inspect("bottleneck add", ext, context, program, queue, out)
out = self.relu3.forward(context, program, queue, out)
inspect("bottleneck relu3", ext, context, program, queue, out)
return out