weiya711 / sam

MIT License
14 stars 4 forks source link

Sparse metamapper #117

Closed bobcheng15 closed 5 months ago

bobcheng15 commented 5 months ago
  1. Updated the graphs that contains the smax operation (all relu graphs) to update the op name from max to smax, and update the argument they use to pass the constant.
  2. Update the mat_elemadd_leakyrelu_exp graph to use a single exp node to represent the exponential operation, which will rely on metamapper to perform mapping.
  3. Updated parse_dot.py to add code that generates the coreir specification for compute nodes.
  4. Updated parse_dot.py to call metamapper/scripts/map_app.py to perform mapping on the generated coreir specification.
  5. Updated parse_dot.py to add support for parsing the complex op mapping generated by the metamapper.
  6. Updated parse_dot.py to fix the issue where it is trying to remap the already rewritten arrayvals when the second time the rewrite_arrays function is invoked.
  7. Updated compute_node.py to remove all the hard-coded logic that generates the opcode for the alu. Also added code to generate the FIFO enable configuration register value base on the ports picked by metamapper
  8. Updated compute_node.py to add a function to parse the mapped coreir specification for the opcode and the input ports a compute_node will use.
  9. Updated connection logic to compute node in intersect_node.py, reduce_node.py, compute_node.py, and read_scanner_node.py to get rid of the hard-coded connection port name. It now uses the information generated by metamapper instead.