-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move gemmini code under platform #180
Conversation
Codecov Report
@@ Coverage Diff @@
## master #180 +/- ##
==========================================
- Coverage 81.77% 79.99% -1.79%
==========================================
Files 33 32 -1
Lines 3298 2854 -444
==========================================
- Hits 2697 2283 -414
+ Misses 601 571 -30
Continue to review full report at Codecov.
|
I don't think |
Removed the |
I'm not convinced users need access to our Gemmini test harness? I thought this was fine in |
I think we should have a helper function that generates the main function exposed to the user, because otherwise, it will be too demanding for novice users to "just run" Exo. I think we don't want a novice users finding Exo repository and trying to use it, and realize that they need to write the main function to call procedures by themselves and drop it. |
I get your point and I generally agree, but I think this merits a much more careful design. Halide has similar features (RunGenMain) we should look at. I don't think moving this file is necessary for the purposes of artifact evaluation (i.e. this PR), so let's revert that part (moving the harness into the compiler source) for now and we can discuss how to generate command line tools (and perhaps more! e.g. Python/Matlab/Julia bindings, etc.) later. |
I didn't know about RunGenMain, that sounds super relevant! |
import pytest | ||
|
||
from exo import compile_procs | ||
|
||
GEMMINI_ROOT = os.getenv('GEMMINI_ROOT') | ||
if GEMMINI_ROOT is None: | ||
RISCV = os.getenv('RISCV') | ||
if RISCV is None: | ||
pass | ||
#pytest.skip("skipping gemmini tests; could not find chipyard", | ||
# allow_module_level=True) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we not actually want this here? Seems like the tests ought to skip if chipyard isn't available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It won't compile&run gemmini tests unless RISCV is present, because of this line:
/~https://github.com/ChezJrk/exo/blob/master/tests/gemmini/harness_gemmini.py#L247
Without RISCV environment, it'll just run the frontend.
Why does this need to go in platforms? Also, relatedly we want to remove platforms from the source ultimately, not add to it.
… On Apr 5, 2022, at 10:49 AM, Alex Reinking ***@***.***> wrote:
I'm not sure where harness should reside in, maybe not in the platform but some helper directory that users can have access to?
I'm not convinced users need access to our Gemmini test harness? I thought this was fine in tests.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because your review was requested.
|
No description provided.