ucb-bar / gemmini-rocc-tests

Fork of seldridge/rocket-rocc-examples with tests for a systolic array based matmul accelerator
Other
52 stars 40 forks source link

[Deprecated fork PR] Rectangular convolutions support #27

Closed curiousdragon closed 1 year ago

curiousdragon commented 1 year ago
curiousdragon commented 1 year ago

Update: I actually ended up finding and fixing a few dimensional bugs, which seemed to be the source of the errors in

so these two tests are now passing!

Now, the only rectangular convolution test that is failing is conv_with_pool-rect-baremetal, and as suggested, I've added an if statement to exit with an error message and fail if someone tries to run a rectangular convolution with pooling - they would get something along the lines of:

Pooling with rectangular convolutions is currently not supported.
*** FAILED *** (tohost = 1)

I've also added this error message and exit statement to the commented out pooling logic in sp_tiled_conv and sp_tiled_conv_dw just in case, since I don't think the gemmini_extended2_config_st function currently supports differing pooling output dimensions which rectangular convolutions probably require.

Remaining todos (edit: done in #28):

hngenc commented 1 year ago

Thanks for the revisions!

curiousdragon commented 1 year ago

Note: Closing this PR since it's based on a branch in a fork, and opening up a new PR (#28) that has an updated branch on this repository specifically for review + merging! If I remember correctly, I think the main reasoning for wanting to have a non-forked development branch was that now with #28, I can make a PR for the gemmini repository with an updated submodule reference that isn't to a separate fork of this gemmini-rocc-tests repository.