[WIP] Stack direct build without Makefile#246
[WIP] Stack direct build without Makefile#246i-chaochen wants to merge 10 commits intorocm-jaxlib-v0.8.0from
Conversation
cd96f05 to
645e473
Compare
645e473 to
9965e81
Compare
Ruturaj4
left a comment
There was a problem hiding this comment.
LGTM @charleshofer can you also take a look?
I oppose this heavily as you didn't explain the rationale and I don't see a value of that, but only a burden of supporting yet another build sequence. No, full stop here, we should not add another layer to this onion. |
Arech8
left a comment
There was a problem hiding this comment.
I don't think adding another build sequence to support is useful and valuable. Makefile route works flawlessly, why should we add another orthogonal way to build things? This creates nothing, but a maintenance hell...
IMO the PR should be discarded.
IIUC, previous, we need to have
Why we need such cumbersome procedure to build jax and xla? it's wasted everyone time every day to do these unnessary steps. You can still have This is to simplfy the dev process. |
|
@i-chaochen who told you that you should use that procedure? It works, but that's not what anyone should do. Have you read @charleshofer descriptions of the process? The old process is as simple as doing:
That's it. |
which docs? not in https://github.com/ROCm/rocm-jax/blob/master/BUILDING.md and https://github.com/ROCm/rocm-jax/blob/master/DEVSETUP.md#setting-up-a-docker-development-environment is let me to do this thing so I edit my xla and jax path with what docs mentioned here there are no use cases in the docs to what you said
|
so you mean we can just do like this?
BTW, why you got Lines 664 to 665 in 21840fc
I would like to add an use-case for so IIUC, the build procedure is these two?
|
@i-chaochen can you please finally have a look at stack.py CLI (that you proposed to modify, meaning you must already understand them) at https://github.com/ROCm/rocm-jax/blob/master/stack.py#L398 or just run
sure, please make a PR |
|
@i-chaochen please don't waste an effort on this PR, we will not merge a third parallel way to build the repo. On top of that, as was said, @alekstheod is brewing a major refactoring of the build system to bazelize things as much as possible, so this will be obsolete in a very short time. |
my understanding is @alekstheod's work is about RBE in CI, I am not sure how it will be. For now, I'm using this for my team purpose to build. |
|
@alekstheod is working on the whole build system refactoring and wants to fully get rid of python wrappers as much as possible. You are free to use whatever you want locally, but we will not support yet another build script. I highly suggest to learn using existing solution instead. Adding a burden of maintaining semantically duplicate code isn't a way to simplify working on a project. |

This is a more aggressive change based on #243
The build is simple by one line without
MakefileDirect Build Implementation: Refactored
stack.pyto handle the entire build and installation process (JAX, jaxlib, PJRT, and plugin) directly using Python subprocesses, removing the dependency on aMakefile.Simplified Command Line:
--kernel-jax-dirto--jax-dir.--xla-dir=/path/to/xla).--rebuild-makefileimplicit for the build action.New flag
--debug: You can now add--debugto your build or develop commands.--debugis used, the build process will:--config=debugand--compilation_mode=dbg--strip=never).-g3).-O0) for both C and C++ code.python3 stack.py develop --debugwill generate aMakefileconfigured to use theCFG_DEBUGoptions by default.To just generate a Makefile with debug settings:
If you really want
Makefileyou can still go with