def __mark_trace(self, trace):
    if ((trace['cycle'] < self.start_cycle) or (trace['cycle'] >= self.end_cycle)):
        return
    cycle = (trace['cycle'] - self.start_cycle)
    col = (cycle % self.img_width)
    floor = (cycle // self.img_width)
    tg_x = (trace['x'] - self.xmin)
    tg_y = (trace['y'] - self.ymin)
    row = ((floor * (2 + (self.xdim * self.ydim))) + (tg_x + (tg_y * self.xdim)))
    if (trace['operation'] in self.stall_bubble_color.keys()):
        self.pixel[(col, row)] = self.stall_bubble_color[trace['operation']]
    elif (trace['operation'] in self._INSTRS_LIST):
        self.pixel[(col, row)] = self.unified_instr_color
    elif (trace['operation'] in self._FP_INSTRS_LIST):
        self.pixel[(col, row)] = self.unified_fp_instr_color
    else:
        raise Exception('Invalid operation in vanilla operation trace log {}'.format(trace['operation']))
    return
def __mark_trace(self, trace):
    if ((trace['cycle'] < self.start_cycle) or (trace['cycle'] >= self.end_cycle)):
        return
    cycle = (trace['cycle'] - self.start_cycle)
    col = (cycle % self.img_width)
    floor = (cycle // self.img_width)
    tg_x = (trace['x'] - self.xmin)
    tg_y = (trace['y'] - self.ymin)
    row = ((floor * (2 + (self.xdim * self.ydim))) + (tg_x + (tg_y * self.xdim)))
    if (trace['operation'] in self.stall_bubble_color.keys()):
        self.pixel[(col, row)] = self.stall_bubble_color[trace['operation']]
    elif (trace['operation'] in self._INSTRS_LIST):
        self.pixel[(col, row)] = self.unified_instr_color
    elif (trace['operation'] in self._FP_INSTRS_LIST):
        self.pixel[(col, row)] = self.unified_fp_instr_color
    else:
        raise Exception('Invalid operation in vanilla operation trace log {}'.format(trace['operation']))
    return