-
Notifications
You must be signed in to change notification settings - Fork 179
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
Modernize packaging #643
Modernize packaging #643
Conversation
Currently, setting the environment variable "FLASHINFER_ENABLE_AOT" to "1" will enable AOT. Or do we prefer command line arguments like apex? |
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.
To provides flags to In the |
I don't have preference among the two, using environment variable looks good to me. cc @abcdabcd987 @zhyncs @nandor do you have any suggestions? |
me too |
c8d22f0
to
a331370
Compare
Hi @ur4t , thanks for the update.
|
If |
I tried
Seems I encountered the error before the build process attempt to install torch, I can reproduce this on two of my working environments, is it expected behavior? |
I not quite sure whether we should make It is much easier to specify Besides, when creating
Could we emplace |
I have no problem with the move considering python is the most important frontend at the moment. |
With the And there is a common file structure used by other projects (apex for example), within FlashInfer it will be like:
Will we switch the style or keep the current structure? |
I have no problem switching the style.
Longer generation time is not a big issue at the moment and I believe better maintainance experience is much more important :) |
10473ca
to
cced062
Compare
@yzh119 I think this PR is ready to be merged. We have all 5 installations: Python AOT/JIT sdist/wheel and CMake and they build well. Please try locally and run tests in case. There is no suitable method to distribute |
119feac
to
8cbe2b3
Compare
@ur4t hi, it seems the JIT mode was broken because these paths (used for JIT compilation) no longer exists: flashinfer/python/flashinfer/jit/env.py Lines 44 to 49 in 1b998c3
|
Split cuda file generation Add custom build backend Update installation document
8cbe2b3
to
640f5af
Compare
@yzh119 This is an editable mode specific issue. Fixed via symlinks. |
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.
Thanks a lot @ur4t !
This pull request is awesome, huge props to you
@yzh119 Cheers for ours improvement! Our doc builder failed but I can not reproduce locally. Any idea to fix it? |
Probably related to #573. |
Got it. Just leave it be. If doc builders continue failing we would try to fix then. |
echo "::endgroup::" | ||
|
||
|
||
echo "::group::Build wheel for FlashInfer" | ||
cd "$PROJECT_ROOT/python" |
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.
Why remove the +cu
info?
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.
local_version is concatenated to package version here:
Line 55 in b1b1fb8
return f"{package_version}+{local_version}" |
I can produce correct wheel name locally but it doesn't work for nightly wheels.
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.
I see
According to Python Packaging User Guide,
python setup.py
and the use ofsetup.py
as a command line tool are deprecated.This PR unifies
setup.py
andaot_setup.py
and moves static fields topyproject.toml
.