-
Notifications
You must be signed in to change notification settings - Fork 68
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
[BUG] make difftest-so
is broken.
#519
Comments
@forever043 Could you please help describe the usage of difftest-so and add a test for it? I'm not sure about how we are going to use it. Also, we probably need a README description for this. |
Given that the current CI only tests NutShell (with a lot of macros disabled), I think we need a) generating profile for XiangShan with some @Tang-Haojin For a), is there any available command? We only need Chisel elaboration to generate the profile, no need for invoking CIRCT. For b), is there any required test in addition to the difftest-so? I think the ultimate goal for us is to automatically create official releases for XiangShan and DiffTest in CI. This completes our workflow and ensures its functional correctness. |
we use the libdifftest.so generated by |
I will add a make argument to do this now.
I cannot come up with any additional test right now. If we need something else more than just |
I'll add the difftest-so compile job after this is fixed. Chisel elaboration, which only elaborates the design without FIRRTL transforms and CIRCT runs, should take less time. I'll work with Haojin on this. Hopefully we can find a way to testing it. |
A relatively simple way is to eliminate CIRCT pass: OpenXiangShan/XiangShan#3974. It takes less than 3 minutes (Scala compile time is not included) to run |
I'm drafting a PR for testing it. Let's see what will happen. |
The |
It does fail now. If we are testing it using the predefined profile, is it mostly the same as building from XiangShan? |
Is there any place other than |
CI supports uploading some artifacts. But I'm not sure it is appropriate for us to depend on CI builds instead of official releases. Depending on CI may cause circular dependence issues. For example, XiangShan depends on DiffTest but DiffTest depends on XiangShan |
10GB Xmx is enough, and Github-hosted free machine has 16GB RAM. I will try to add another argument to modify -Xmx in build.sc. Maybe we can retry later. |
make daffiest-so
is broken.make difftest-so
is broken.
After merging OpenXiangShan/XiangShan#3974 and OpenXiangShan/XiangShan#3975, we can try |
If you want to use sv_dpiv.h, you must first initialize the VCS or palldium environment variables |
Another option is to emulation the vcs using emu, as is done in CI, which will generate code that does not depend on sv_dpi |
Then what's the use case to compile it? @forever043 @Tang-Haojin Should we compile them in VCS env and use them as well in VCS env? If so, CI can hardly test it. |
Previously, I can compile it on verilator environment. @cailuoshan Is this expected or I just happened to successfully compile it with verilator? |
If use make emu, difftest won't generate code that requires sv_dpi.h |
Related component: build
Describe the bug
At XiangShan repository. When I run
make sim-verilog && cd difftest && make difftest-so
, it reports an error:Seems that this may be related to #506.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
difftest-so
are generated successfully.Screenshots
What you expect us (DiffTest developers) to do for you
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: