Closed cloudhan closed 1 year ago
Seems like Triton has been changed such that the advice above is no longer valid (build will still fail for similar reasons).
Are both of these issues still current, or just the GetXlaFfiStream
issue?
@ezhulenev do you have suggestions on how we might avoid the weak symbol here? MSVC apparently does not support weak symbols.
Still current. But the first one is mainly configuration issue. So only the second one need to be address ATM.
The weak symbol problem has been resolved on openxla/xla latest main.
Is this issue still a problem?
(I know it isn't an CPU, because the new Windows CPU CI build is mostly happy: https://github.com/google/jax/actions/workflows/windows_ci.yml )
The weak symbol problem has been resolved on openxla/xla latest main.
That is, the second is fixed in https://github.com/openxla/xla/commit/e634d4ab1067445c0f89f4b2bbe0bafaf0400051
The first one is still there, but as it can be workaround from outside, feel free to close this issue.
Description
@hawkinsp Follow the fix in https://github.com/google/jax/issues/14369#issuecomment-1429839230
There will still be linking error as in https://github.com/google/jax/issues/14369#issuecomment-1428121867
Cause of multiply defined
tsl::profiler::internal::g_annotation_enabled
TF_COMPILE_LIBRARY
is not properly defined https://github.com/tensorflow/tensorflow/blob/959d1b144dc03fbda586f8a60dd4c117025e6c18/tensorflow/tsl/platform/macros.h#L61-L69 which if further caused by parameteris_external
of macroget_win_copts
is not properly propagated in, in https://github.com/tensorflow/tensorflow/blob/959d1b144dc03fbda586f8a60dd4c117025e6c18/tensorflow/tensorflow.bzlFortunately, we can
--copts=/DTF_COMPILE_LIBRARY
to workaround this problem.Cause of already defined
xla::runtime::ffi::GetXlaFfiStream
xla::runtime::ffi::GetXlaFfiStream
is first defined as weak symbol inffi.cc
then defined as normal symbol inexecutable.cc
and msvc does not support weak symbol.As for dirty fix, removing the definition in
ffi.cc
and replacing it with decl will allow the linking to pass. After this, we can build a usable jaxlib whlWhat jax/jaxlib version are you using?
jaxlib v0.4.3
Which accelerator(s) are you using?
No response
Additional system info
No response
NVIDIA GPU info
No response