Replies: 1 comment 4 replies
-
Reading the code, this looks unintentional on our part because the vector extension is an explicit feature that you need to turn on, but the assert you're hitting is always going to fail if it's not turned on. Are you compiling Halide yourself? If so, can you try just removing that assertion in CodeGen_RISCV.cpp line 143? |
Beta Was this translation helpful? Give feedback.
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi all,
I'm trying to cross-compile a Halide kernel to a RISC-V platform. The target is a research (embedded) platform that is complex from the architectural point of view but relatively simple from the software perspective (no OS, no runtime, etc.). However, whenever I try to cross-compile a kernel for RISC-V target (with some additional flags), I face multiple errors related to the support for RVV.
Here is the snippet of setting the target:
If I do not set
Halide::Target::vector_bits
and addHalide::Target::RVV
to target features, I getoriginating from CodeGen_RISCV.cpp
If I set
Halide::Target::vector_bits
to 128, and addHalide::Target::RVV
to target features, then the cross-compilation passes, but that is not what I need as that's not what my platform can execute.I tried digging around regarding this topic but to no avail. Is it really not possible (at least with no major messing around) to cross-compile a kernel to RISC-V platform without RVV support? Right now, I simply don't need that support, as we are primarily testing the feasibility of writing kernels for our hardware in Halide. We are not yet exploring scheduling and/or other features.
It might be important to mention that this approach works on this particular platform for relatively simple kernels for which RVV instructions are not emitted. Sorry if I missed something obvious, of which I still think there is a non-insignificant probability 😄
Beta Was this translation helpful? Give feedback.
All reactions