tancheng / VectorCGRA

CGRA framework with vectorization support.
BSD 3-Clause "New" or "Revised" License
19 stars 11 forks source link

Questions on CGRA generation and testing. #21

Closed ShangkunLi closed 4 weeks ago

ShangkunLi commented 1 month ago

Hi Cheng,

I just walked through your CGRA-Flow using the GUI provided in the docker image. And I have some questions:

  1. I tried to deploy VectorCGRA locally. However, there seems to be some problems with the PyMTL3 package. I tried to install pymtl3 using pip install pymtl3 or pip install git+https://github.com/tancheng/pymtl3.git. But in both ways, the classes/functions in pymtl3/stdlib/test_utils have some little difference with classes/functions in pymtl3/stdlib/test from your docker image.

  2. In terms of the Run tests function in your CGRA-Flow GUI, it firstly runs some tests on a determined CGRA coupled with a specific mapping json file, for the user defined CGRA, it only generates the parameterized CGRA. So how to determine whether the mapping result generated by CGRA-Mapper is correct?

Thanks for your time and help!

tancheng commented 4 weeks ago

If you checkout to the latest version of VectorCGRA, you need pymtl3 version of pip install -U git+https://github.com/tancheng/pymtl3.1@yo-struct-list-fix as shown in the README of VectorCGRA. If you didn't checkout to any version and just use the VectorCGRA within the docker, you don't need to re-install anything IIRC.

Right, that's the issue we wanna fix. The tests are only unit tests and aiming at verification of the existing functionality. We don't have a robust way to guarantee the correctness of the control signals generated from the mapper, as either of the two tools has been developed on its own for a while. Based on our and others experience, it would take a few days to tune the generated control signals to make the RTL simulation run as expected. We are working on DFG-simulator and mapping-verification these days. It would super helpful if you can help contribute on this :-)

ShangkunLi commented 4 weeks ago

Sure, I would be happy to contribute on this functionality extension. Please let me know if you have anything that I can help.