Skip to content

Conversation

@cbalint13
Copy link
Contributor

@cbalint13 cbalint13 commented Nov 20, 2024

This PR propose to make ORCJIT the default LLVM runtime executor (engine).

Notes

  • Currently ORCJIT is a optional executor under llvm -jit=orcjit flag, introduced here.
  • Targets like RISCV, and possible others too, will not work on MCJIT see some discussions here .
  • As a live example, similar project Halide already use ORCJIT completley replacing the old MCJIT engine.

TVM disscussions and recent issues on the subject:

Since ORCJIT was poorly exposed within TVM until now (being optional) any rising issues will need attention.

@cbalint13 cbalint13 marked this pull request as ready for review November 21, 2024 01:23
@cbalint13
Copy link
Contributor Author

This is ready for review.
Cc: @masahi , @vinx13, @tqchen , @ekalda , @lhutton1 , @quic-sanirudh , @kparzysz-quic , @Lunderberg
Cc: @katebern-grovety , @PhilippvK, @JieGH

@tqchen
Copy link
Member

tqchen commented Nov 21, 2024

@cbalint13 can you dig a bit into windows issue? seems related to a missing symbol

@cbalint13
Copy link
Contributor Author

@cbalint13 can you dig a bit into windows issue? seems related to a missing symbol

@tqchen , Yes I am on it, it will take a little bit of time.

@cbalint13
Copy link
Contributor Author

@tqchen ,

  • The MSWIN __ImageBase issue is fixed using COFF workaround flags via explicit JIT linkage pass.
  • For track of record, the reference LLVM example was used here, where mentioned flags are showcased.

If this goes to main will help track & tackle issues as they arise, I hope for the best that there will be none at all.

@cbalint13
Copy link
Contributor Author

@tvm-bot rerun

@tqchen tqchen merged commit 7ae7ea8 into apache:main Nov 26, 2024
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants