Skip to content
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

Generate also jax-cuda-plugin and jax-cuda-pjrt in cuda builds and bump CUDA used at built time to 12.6 and add fixes for CUDA #288

Merged
merged 11 commits into from
Dec 9, 2024

Conversation

traversaro
Copy link
Contributor

@traversaro traversaro commented Nov 18, 2024

Fix #285 and conda-forge/jax-feedstock#162 .

Recap of changes:

  • Generate also jax-cuda-plugin and jax-cuda-pjrt in cuda builds for consistency with PyPI packages
  • Bump CUDA used at built time to 12.6
  • Add libcublas-dev, libcusolver-dev, libcurand-dev, cuda-cupti-dev, libcufft-dev, libcusparse-dev as run dependencies to workaround dynamic loading logic of xla that looks for libraries without .12 suffix
  • Patch CUDA loading logic of xla to automatically look for CUDA conda packages without the need to set export XLA_FLAGS=--xla_gpu_cuda_data_dir=$CONDA_PREFIX (backport of cuda_root_path: Find cuda libraries when installed with conda packages openxla/xla#20288)

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

@traversaro
Copy link
Contributor Author

The cirun jobs are failing as I do not have permissions. I will try to build the packages locally for test.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

@traversaro
Copy link
Contributor Author

@conda-forge-admin, please rerender

@traversaro
Copy link
Contributor Author

I will try to build the packages locally for test.

I started a built of a linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12numpy2.0python3.12.____cpython on a local server.

@njzjz
Copy link
Member

njzjz commented Nov 19, 2024

I tried to build several hours ago but got the following error

external/xla/xla/service/gpu/autotuning/conv_algorit
hm_picker.cc:82:10: fatal error: third_party/gpus/cu
dnn/cudnn_version.h: No such file or directory      
   82 | #include "third_party/gpus/cudnn/cudnn_versi
on.h"                              
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~                                    
compilation terminated.

@traversaro
Copy link
Contributor Author

I tried to build several hours ago but got the following error

external/xla/xla/service/gpu/autotuning/conv_algorit
hm_picker.cc:82:10: fatal error: third_party/gpus/cu
dnn/cudnn_version.h: No such file or directory      
   82 | #include "third_party/gpus/cudnn/cudnn_versi
on.h"                              
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~                                    
compilation terminated.

Indeed the same for me:

[832 / 1,428] [Sched] Generating code from table: lib/Target/RISCV/RISCV.td @llvm-project//llvm:RISCVCommonTableGen__gen_macro_fusion_pred_genrule; 228s ... (128 actions, 3 running)
ERROR: /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/share/bazel/d8c4940b49ec3cfa193ee6c89dff367c/external/xla/xla/service/gpu/autotuning/BUILD:337:11: Compiling xla/service/gpu/autotuning/conv_algorithm_picker.cc failed: (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command (from target @xla//xla/service/gpu/autotuning:conv_algorithm_picker) 
  (cd /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/share/bazel/d8c4940b49ec3cfa193ee6c89dff367c/execroot/__main__ && \
  exec env - \
    CLANG_CUDA_COMPILER_PATH=None \
    GCC_HOST_COMPILER_PATH=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/bin/x86_64-conda-linux-gnu-gcc \
    GCC_HOST_COMPILER_PREFIX=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/bin \
    PATH=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/bin:/opt/conda/condabin:/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/bin:/opt/conda/bin:/opt/conda/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/conda/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/nvvm/bin \
    PWD=/proc/self/cwd \
    TF_NVCC_CLANG=1 \
  bazel_toolchain/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/_objs/conv_algorithm_picker/conv_algorithm_picker.pic.d '-frandom-seed=bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/_objs/conv_algorithm_picker/conv_algorithm_picker.pic.o' -fPIC '-DEIGEN_MAX_ALIGN_BYTES=64' -DEIGEN_ALLOW_UNALIGNED_SCALARS '-DEIGEN_USE_AVX512_GEMM_KERNELS=0' -DHAVE_SYS_UIO_H -DTF_USE_SNAPPY '-DLLVM_ON_UNIX=1' '-DHAVE_BACKTRACE=1' '-DBACKTRACE_HEADER=<execinfo.h>' '-DLTDL_SHLIB_EXT=".so"' '-DLLVM_PLUGIN_EXT=".so"' '-DLLVM_ENABLE_THREADS=1' '-DHAVE_DEREGISTER_FRAME=1' '-DHAVE_LIBPTHREAD=1' '-DHAVE_PTHREAD_GETNAME_NP=1' '-DHAVE_PTHREAD_H=1' '-DHAVE_PTHREAD_SETNAME_NP=1' '-DHAVE_REGISTER_FRAME=1' '-DHAVE_SETENV_R=1' '-DHAVE_STRERROR_R=1' '-DHAVE_SYSEXITS_H=1' '-DHAVE_UNISTD_H=1' -D_GNU_SOURCE '-DHAVE_MALLINFO=1' '-DHAVE_SBRK=1' '-DHAVE_STRUCT_STAT_ST_MTIM_TV_NSEC=1' -DHAVE_BUILTIN_THREAD_POINTER '-DLLVM_NATIVE_ARCH="X86"' '-DLLVM_NATIVE_ASMPARSER=LLVMInitializeX86AsmParser' '-DLLVM_NATIVE_ASMPRINTER=LLVMInitializeX86AsmPrinter' '-DLLVM_NATIVE_DISASSEMBLER=LLVMInitializeX86Disassembler' '-DLLVM_NATIVE_TARGET=LLVMInitializeX86Target' '-DLLVM_NATIVE_TARGETINFO=LLVMInitializeX86TargetInfo' '-DLLVM_NATIVE_TARGETMC=LLVMInitializeX86TargetMC' '-DLLVM_NATIVE_TARGETMCA=LLVMInitializeX86TargetMCA' '-DLLVM_HOST_TRIPLE="x86_64-unknown-linux-gnu"' '-DLLVM_DEFAULT_TARGET_TRIPLE="x86_64-unknown-linux-gnu"' '-DLLVM_VERSION_MAJOR=20' '-DLLVM_VERSION_MINOR=0' '-DLLVM_VERSION_PATCH=0' '-DLLVM_VERSION_STRING="20.0.0git"' -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS '-DLLVM_HAS_AArch64_TARGET=1' '-DLLVM_HAS_AMDGPU_TARGET=1' '-DLLVM_HAS_ARM_TARGET=1' '-DLLVM_HAS_NVPTX_TARGET=1' '-DLLVM_HAS_PowerPC_TARGET=1' '-DLLVM_HAS_RISCV_TARGET=1' '-DLLVM_HAS_SystemZ_TARGET=1' '-DLLVM_HAS_X86_TARGET=1' '-DBLAKE3_USE_NEON=0' -DBLAKE3_NO_AVX2 -DBLAKE3_NO_AVX512 -DBLAKE3_NO_SSE2 -DBLAKE3_NO_SSE41 '-DGOOGLE_CUDA=1' '-DBAZEL_CURRENT_REPOSITORY="xla"' -iquote external/xla -iquote bazel-out/k8-opt/bin/external/xla -iquote external/com_google_protobuf -iquote bazel-out/k8-opt/bin/external/com_google_protobuf -iquote external/zlib -iquote bazel-out/k8-opt/bin/external/zlib -iquote external/com_google_absl -iquote bazel-out/k8-opt/bin/external/com_google_absl -iquote external/eigen_archive -iquote bazel-out/k8-opt/bin/external/eigen_archive -iquote external/tsl -iquote bazel-out/k8-opt/bin/external/tsl -iquote external/ml_dtypes -iquote bazel-out/k8-opt/bin/external/ml_dtypes -iquote external/nsync -iquote bazel-out/k8-opt/bin/external/nsync -iquote external/double_conversion -iquote bazel-out/k8-opt/bin/external/double_conversion -iquote external/snappy -iquote bazel-out/k8-opt/bin/external/snappy -iquote external/com_googlesource_code_re2 -iquote bazel-out/k8-opt/bin/external/com_googlesource_code_re2 -iquote external/farmhash_archive -iquote bazel-out/k8-opt/bin/external/farmhash_archive -iquote external/llvm-project -iquote bazel-out/k8-opt/bin/external/llvm-project -iquote external/nvtx_archive -iquote bazel-out/k8-opt/bin/external/nvtx_archive -iquote external/local_config_cuda -iquote bazel-out/k8-opt/bin/external/local_config_cuda -iquote external/cuda_cudart -iquote bazel-out/k8-opt/bin/external/cuda_cudart -iquote external/cuda_cublas -iquote bazel-out/k8-opt/bin/external/cuda_cublas -iquote external/cuda_cccl -iquote bazel-out/k8-opt/bin/external/cuda_cccl -iquote external/cuda_nvtx -iquote bazel-out/k8-opt/bin/external/cuda_nvtx -iquote external/cuda_nvcc -iquote bazel-out/k8-opt/bin/external/cuda_nvcc -iquote external/cuda_cusolver -iquote bazel-out/k8-opt/bin/external/cuda_cusolver -iquote external/cuda_cufft -iquote bazel-out/k8-opt/bin/external/cuda_cufft -iquote external/cuda_cusparse -iquote bazel-out/k8-opt/bin/external/cuda_cusparse -iquote external/cuda_curand -iquote bazel-out/k8-opt/bin/external/cuda_curand -iquote external/cuda_cupti -iquote bazel-out/k8-opt/bin/external/cuda_cupti -iquote external/cuda_nvml -iquote bazel-out/k8-opt/bin/external/cuda_nvml -iquote external/cuda_nvjitlink -iquote bazel-out/k8-opt/bin/external/cuda_nvjitlink -iquote external/local_config_rocm -iquote bazel-out/k8-opt/bin/external/local_config_rocm -iquote external/local_config_tensorrt -iquote bazel-out/k8-opt/bin/external/local_config_tensorrt -iquote external/nccl_archive -iquote bazel-out/k8-opt/bin/external/nccl_archive -iquote external/cuda_cudnn -iquote bazel-out/k8-opt/bin/external/cuda_cudnn -Ibazel-out/k8-opt/bin/external/ml_dtypes/_virtual_includes/float8 -Ibazel-out/k8-opt/bin/external/ml_dtypes/_virtual_includes/intn -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/ArithCanonicalizationIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/AsmParserTokenKinds -Ibazel-out/k8-opt/bin/external/nvtx_archive/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/local_config_cuda/cuda/_virtual_includes/cuda_headers -Ibazel-out/k8-opt/bin/external/cuda_cudart/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cublas/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cccl/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_nvtx/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_nvcc/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cusolver/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cufft/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cusparse/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_curand/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_cupti/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_nvml/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/cuda_nvjitlink/_virtual_includes/headers -Ibazel-out/k8-opt/bin/external/local_config_tensorrt/_virtual_includes/tensorrt_headers -Ibazel-out/k8-opt/bin/external/nccl_archive/_virtual_includes/nccl_config -Ibazel-out/k8-opt/bin/external/cuda_cudnn/_virtual_includes/headers -isystem external/com_google_protobuf/src -isystem bazel-out/k8-opt/bin/external/com_google_protobuf/src -isystem external/eigen_archive -isystem bazel-out/k8-opt/bin/external/eigen_archive -isystem external/eigen_archive/mkl_include -isystem bazel-out/k8-opt/bin/external/eigen_archive/mkl_include -isystem external/ml_dtypes -isystem bazel-out/k8-opt/bin/external/ml_dtypes -isystem external/ml_dtypes/ml_dtypes -isystem bazel-out/k8-opt/bin/external/ml_dtypes/ml_dtypes -isystem external/nsync/public -isystem bazel-out/k8-opt/bin/external/nsync/public -isystem external/farmhash_archive/src -isystem bazel-out/k8-opt/bin/external/farmhash_archive/src -isystem external/llvm-project/llvm/include -isystem bazel-out/k8-opt/bin/external/llvm-project/llvm/include -isystem external/llvm-project/mlir/include -isystem bazel-out/k8-opt/bin/external/llvm-project/mlir/include -isystem external/local_config_cuda/cuda -isystem bazel-out/k8-opt/bin/external/local_config_cuda/cuda -isystem external/cuda_cudart/include -isystem bazel-out/k8-opt/bin/external/cuda_cudart/include -isystem external/cuda_cublas/include -isystem bazel-out/k8-opt/bin/external/cuda_cublas/include -isystem external/cuda_cccl/include -isystem bazel-out/k8-opt/bin/external/cuda_cccl/include -isystem external/cuda_nvtx/include -isystem bazel-out/k8-opt/bin/external/cuda_nvtx/include -isystem external/cuda_nvcc/include -isystem bazel-out/k8-opt/bin/external/cuda_nvcc/include -isystem external/cuda_cusolver/include -isystem bazel-out/k8-opt/bin/external/cuda_cusolver/include -isystem external/cuda_cufft/include -isystem bazel-out/k8-opt/bin/external/cuda_cufft/include -isystem external/cuda_cusparse/include -isystem bazel-out/k8-opt/bin/external/cuda_cusparse/include -isystem external/cuda_curand/include -isystem bazel-out/k8-opt/bin/external/cuda_curand/include -isystem external/cuda_cupti/include -isystem bazel-out/k8-opt/bin/external/cuda_cupti/include -isystem external/cuda_nvml/include -isystem bazel-out/k8-opt/bin/external/cuda_nvml/include -isystem external/cuda_nvjitlink/include -isystem bazel-out/k8-opt/bin/external/cuda_nvjitlink/include -isystem external/local_config_rocm/rocm -isystem bazel-out/k8-opt/bin/external/local_config_rocm/rocm -isystem external/local_config_rocm/rocm/rocm/include -isystem bazel-out/k8-opt/bin/external/local_config_rocm/rocm/rocm/include -isystem external/local_config_rocm/rocm/rocm/include/rocrand -isystem bazel-out/k8-opt/bin/external/local_config_rocm/rocm/rocm/include/rocrand -isystem external/local_config_rocm/rocm/rocm/include/roctracer -isystem bazel-out/k8-opt/bin/external/local_config_rocm/rocm/rocm/include/roctracer -isystem external/cuda_cudnn/include -isystem bazel-out/k8-opt/bin/external/cuda_cudnn/include -isystem /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include '-march=nocona' '-mtune=haswell' -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/work=/usr/local/src/conda/jaxlib-0.4.34' '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac=/usr/local/src/conda-prefix' -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/include -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib/stubs -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib/stubs -DNDEBUG -DNDEBUG '-D_FORTIFY_SOURCE=2' -O2 -isystem /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/include -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib/stubs -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib/stubs -fvisibility-inlines-hidden '-fmessage-length=0' '-march=nocona' '-mtune=haswell' -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/work=/usr/local/src/conda/jaxlib-0.4.34' '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac=/usr/local/src/conda-prefix' -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/include -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib/stubs -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib/stubs -DNDEBUG -DNDEBUG '-D_FORTIFY_SOURCE=2' -O2 -isystem /home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/include -I/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/include -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib/stubs -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/targets/x86_64-linux/lib/stubs '-fvisibility=hidden' -Wno-sign-compare -Wno-unknown-warning-option -Wno-stringop-truncation -Wno-array-parameter '-DMLIR_PYTHON_PACKAGE_PREFIX=jaxlib.mlir.' -Wno-gnu-offsetof-extensions '-std=c++17' -c external/xla/xla/service/gpu/autotuning/conv_algorithm_picker.cc -o bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/_objs/conv_algorithm_picker/conv_algorithm_picker.pic.o)
# Configuration: 1d166e2c0032eeb996edfdf77a60c25de00053c713fdb1afb7cf2808aa4a8862
# Execution platform: @local_execution_config_platform//:platform
/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_build_env/share/bazel/d8c4940b49ec3cfa193ee6c89dff367c/execroot/__main__/bazel_toolchain/crosstool_wrapper_driver_is_not_gcc:213: SyntaxWarning: invalid escape sequence '\.'
  re.search('\.cpp$|\.cc$|\.c$|\.cxx$|\.C$', f)]
In file included from external/tsl/tsl/platform/logging.h:26,
                 from external/tsl/tsl/platform/errors.h:30,
                 from external/tsl/tsl/platform/statusor.h:74,
                 from external/xla/xla/statusor.h:18,
                 from external/xla/xla/status_macros.h:29,
                 from external/xla/xla/util.h:49,
                 from external/xla/xla/array2d.h:32,
                 from external/xla/xla/literal.h:42,
                 from external/xla/xla/hlo/ir/dfs_hlo_visitor.h:27,
                 from external/xla/xla/hlo/ir/hlo_computation.h:38,
                 from external/xla/xla/service/gpu/autotuning/conv_algorithm_picker.h:29,
                 from external/xla/xla/service/gpu/autotuning/conv_algorithm_picker.cc:16:
external/tsl/tsl/platform/default/logging.h:193: warning: "DVLOG" redefined
  193 | #define DVLOG(verbose_level) \
      | 
In file included from external/xla/xla/hlo/ir/hlo_computation.h:32:
/home/conda/feedstock_root/build_artifacts/jaxlib_1731997563828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/include/absl/log/log.h:245: note: this is the location of the previous definition
  245 | #define DVLOG(severity) ABSL_LOG_INTERNAL_DVLOG_IMPL(severity)
      | 
external/xla/xla/service/gpu/autotuning/conv_algorithm_picker.cc:82:10: fatal error: third_party/gpus/cudnn/cudnn_version.h: No such file or directory
   82 | #include "third_party/gpus/cudnn/cudnn_version.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Target //jaxlib/tools:build_gpu_plugin_wheel failed to build

The full log: log-jaxlib-cuda.txt . Probably somehow some headers try to use the internal cudnn.

@traversaro
Copy link
Contributor Author

@traversaro
Copy link
Contributor Author

traversaro commented Nov 19, 2024

The cudnn fix worked fine, now the new error is:

[2,213 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 327s local ... (5 actions, 4 running)
[2,217 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 329s local ... (3 actions, 2 running)
[2,220 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 330s local
[2,220 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 340s local
[2,220 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 370s local
[2,220 / 2,223] Compiling xla/service/gpu/kernels/topk_kernel_bfloat16.cu.cc; 430s local
[2,221 / 2,223] [Prepa] Linking external/xla/xla/service/gpu/kernels/libtopk_kernel_gpu_cuda.pic.a
[2,222 / 2,223] Linking jaxlib/tools/pjrt_c_api_gpu_plugin.so; 1s local
[2,222 / 2,223] Linking jaxlib/tools/pjrt_c_api_gpu_plugin.so; 11s local
ERROR: /home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/jaxlib/tools/BUILD.bazel:64:10: Linking jaxlib/tools/pjrt_c_api_gpu_plugin.so failed: (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command (from target //jaxlib/tools:pjrt_c_api_gpu_plugin.so) 
  (cd /home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/share/bazel/56e053149271b5976de7f33fbf2b15f5/execroot/__main__ && \
  exec env - \
    CLANG_CUDA_COMPILER_PATH=None \
    GCC_HOST_COMPILER_PATH=/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/x86_64-conda-linux-gnu-gcc \
    GCC_HOST_COMPILER_PREFIX=/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin \
    PATH=/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/bin:/opt/conda/condabin:/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/bin:/opt/conda/bin:/opt/conda/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/conda/bin:/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/nvvm/bin \
    PWD=/proc/self/cwd \
    TF_NVCC_CLANG=1 \
  bazel_toolchain/crosstool_wrapper_driver_is_not_gcc -shared -o bazel-out/k8-opt/bin/jaxlib/tools/pjrt_c_api_gpu_plugin.so -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/c/libpjrt_c_api_gpu.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/c/libpjrt_c_api_gpu_internal.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/c/libpjrt_c_api_ffi_internal.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/c/libpjrt_c_api_wrapper_impl.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/cpu/libhost_tracer.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/cpu/libhost_tracer_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/backends/cpu/libhost_tracer_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/backends/cpu/libthreadpool_listener.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/cpu/libmetadata_collector.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libdevice_tracer.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_tracer.pic.a bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_collector.pic.a bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_buffer_events.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libbuffer_pool.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libparse_annotation.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libxplane_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libxplane_builder.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libxplane_schema.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libtf_op_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libxplane_visitor.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/util/libstats_calculator_portable.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libcontext_types.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_utils.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_error_manager.pic.a bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libnvtx_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/gpu/libcupti_wrapper.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/plugin/libplugin_tracer_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libprofiler_collection.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libprofiler_factory_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libprofiler_controller.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/protobuf/libprofiler_options_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/protobuf/libxplane_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/backends/profiler/plugin/libprofiler_error.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libse_gpu_pjrt_compiler.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libse_gpu_pjrt_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libgpu_helpers.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libgpu_metrics.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libgpu_topology.pic.a bazel-out/k8-opt/bin/external/xla/xla/client/libclient_library.pic.a bazel-out/k8-opt/bin/external/xla/xla/client/libcompile_only_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcompile_only_service.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/distributed/libclient.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/coordination/libcoordination_service_agent.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/coordination/libcoordination_service_error_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libcancellation.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/rpc/coordination/libgrpc_coordination_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/rpc/libgrpc_channel.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/librpc_options_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/util/libdevice_name_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/libcall_options.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/distributed_runtime/rpc/libgrpc_util.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libdistributed_runtime_payloads_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libcoordination_config_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libcoordination_service_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/distributed/libin_memory_key_value_store.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/distributed/libtopology_util.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libgpu_topology_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/integrations/libtf_allocator_adapter.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libbfc_allocator.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libmetrics.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libbfc_memory_map_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_stream_executor_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libhost_callback.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libhost_memory_spaces.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/liblocal_device_state.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libworker_thread.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libsemaphore.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libtracked_device_buffer.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libevent_pool.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libtranspose.pic.a bazel-out/k8-opt/bin/external/xla/xla/libef57.pic.a bazel-out/k8-opt/bin/external/xla/xla/client/liblocal_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/client/libclient.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/distributed/libprotocol_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libstream_executor_executable.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libstream_executor_executable_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/liblocal_service.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblocal_service_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/gpu/libnccl_id_store.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_cudamallocasync_allocator.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_init_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/python/libcustom_partition_callback.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libmlir_to_hlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libhlo_dialect_registration.pic.a bazel-out/k8-opt/bin/external/stablehlo/libregister.pic.a bazel-out/k8-opt/bin/external/stablehlo/libinterpreter_ops.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_numpy.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_ops.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_configuration.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_scope.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_process.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_process_grid.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_value.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_tensor.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_axes.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_element.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_index.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_types.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_token.pic.a bazel-out/k8-opt/bin/external/stablehlo/libreference_errors.pic.a bazel-out/k8-opt/bin/external/stablehlo/libstablehlo_serialization.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/c/libpjrt_c_api_helpers.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_client.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_compiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libmetrics.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libutils.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/liblayout_mode.pic.a bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_executable.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libexecutable_metadata_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libexecute_options_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/client/libexecutable_build_options.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libcompile_options_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_future.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/python/libinspect_sharding.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libservice.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/liballocation_tracker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libchannel_tracker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcompilation_cache.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libexecution_tracker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbackend.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_module_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libexecution_options_util.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libnvptx_compiler.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libnvptx_compiler_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_compiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libbuffer_sharing.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcompile_module_to_llvm_ir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libconv_layout_normalization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_hlo_schedule.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_memory_scheduler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libp2p_schedule_preparation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libanalytical_latency_estimator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_collective_performance_model.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libpgle_accuracy_checker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libschedule_postprocessing.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libscheduling_instruction_annotator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_latency_hiding_scheduler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libprofile_guided_latency_estimator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblatency_hiding_scheduler.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/protobuf/libprofiled_instructions_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_p2p_pipeliner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_spmd_pipeline.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/transforms/libhlo_constant_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/libstateful_rng_spmd_partitioner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/libspmd_partitioner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libsharding_propagation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcustom_call_sharding_helper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/libshardy_xla_pass.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libhlo_to_mlir_hlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libhlo_module_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libmodule_attributes_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/libmlir_hlo_to_hlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/liblayout_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/libmodule_attributes_exporter.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libapprox_topk.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libapprox_topk_shape.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir/utils/liberror_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libmhlo_export.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libexport_ops.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libshard_map_export.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libmhlo_import.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libshard_map_import.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libpipelines.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libexport_ops.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libexport_shardy_attrs.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libimport_shardy_attrs.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libremove_size_one_axes.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libshard_map_export.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/sdy_round_trip/libshard_map_import.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/libutils.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/ir/libregister.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/mhlo_round_trip/libexport_shardings.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/libtype_to_shape.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/round_trip_common/libpipeline_passes.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/round_trip_common/libconvert_sharding_custom_calls.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/round_trip_common/libimport_constants.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/round_trip_common/libopen_while_free_vars_sharding.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libpasses.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libaggressive_factor_propagation.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libauto_partitioner_registry.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libbasic_factor_propagation.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libop_sharding_rule_registry.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libop_sharding_rule_builder.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libsharding_projection.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/propagation/libutils.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/export/libpasses.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/import/libpasses.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/common/libfile_utils.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/transforms/common/libop_properties.pic.a bazel-out/k8-opt/bin/external/shardy/shardy/dialect/sdy/ir/libdialect.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libhlo_fusion_stats.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libir_emitter_unnested.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libtriton_call.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libtransforms_gpu_passes.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libtransforms_passes.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libdeallocation_passes.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libdeallocation_utils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransformDialectTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransformDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorInferTypeOpInterfaceImpl.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libtopk_custom_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libtopk_kernel_gpu_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcommand_buffer_cmd_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libconvolution_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libfft_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libgpublas_lt_matmul_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libinfeed_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_collective_permute_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_recv_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_send_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_p2p_thunk_common.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnorm_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_norm_runner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/liboutfeed_thunk.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_transfer_manager.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libgeneric_transfer_manager.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libio_feed_manager.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libreplica_id_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libsend_recv_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libwait_for_streams_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libsort_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcholesky_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libtriangular_solve_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libmake_batch_pointers.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libmake_batch_pointers_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libprepare_hlo_for_ir_emitting_pipeline.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libalias_passthrough_params.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcopy_fusion.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libruntime_intrinsics.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libstream_finder.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libcustom_kernel_fusion_autotuner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_cost_model_stats_collection.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libalgorithm_checker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/liball_gather_optimizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/liball_reduce_blueconnect.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/liball_reduce_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libasync_collective_annotator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libasync_wrapper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcollective_permute_cycle_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcollective_permute_valid_iteration_annotator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcommand_buffer_scheduling.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libconvert_async_collectives_to_sync.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_custom_call_converter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libdot_dimension_sorter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libdot_operand_converter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libdouble_buffer_loop_unrolling.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libdynamic_slice_fusion_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/tools/libhlo_extractor.pic.a bazel-out/k8-opt/bin/external/xla/xla/tests/libtest_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtransfer_manager.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libgemm_broadcast_folding_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libgemv_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/liblayout_assignment.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libmove_copy_to_users.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libpipelined_p2p_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libreduce_scatter_creator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollective_opt_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libreduction_degenerate_dim_remover.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libreduction_layout_normalizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/librename_fusions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libsanitize_constant_names.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libscatter_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libscatter_slice_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libsoftmax_rewriter_triton.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libreduction_dimension_grouper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libreduction_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libfusion_pipeline.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libfusion_block_level_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libfusion_merger.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libhorizontal_input_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libhorizontal_loop_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libinstruction_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libfusion_node_indexing_evaluation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libmulti_output_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libhlo_dfs_reachability.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libvariadic_op_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libstream_attribute_annotator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libstream_attribute_async_wrapper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtopk_specializer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtopk_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtranspose_dimension_grouper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtree_reduction_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtriton_fusion_numerics_verifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libwindowed_einsum_handler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_unroller.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/shardy/libshardy_call_inliner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/spmd/libcollective_permute_motion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_gather_broadcast_reorder.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_gather_combiner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_combiner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_contiguous.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_folder.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_promotion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libchange_op_data_type.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_contraction_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_convolution.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_matmul.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_memory_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_util.pic.a bazel-out/k8-opt/bin/external/onednn/libmkl_dnn.pic.a bazel-out/k8-opt/bin/external/onednn/libonednn_autogen.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_reassociate.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libasync_collective_creator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbatched_gather_scatter_normalizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbatchnorm_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbitcast_dtypes_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libbroadcast.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbroadcast_canonicalizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollective_permute_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollective_pipeliner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libvalue_range.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconstant_value.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollective_quantizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollectives_schedule_linearizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcomparison_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconditional_canonicalizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconditional_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconvert_async_collectives_to_sync.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconvert_memory_placement_to_internal_annotations.pic.a bazel-out/k8-opt/bin/external/xla/xla/libside_effect_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconvolution_4d_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconvolution_pred_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcopy_insertion.pic.a bazel-out/k8-opt/bin/external/xla/xla/libfrontend_attributes.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcpu_gpu_shape_verifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdot_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdot_merger.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdynamic_dimension_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdynamic_index_splitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdynamic_padder.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libeigh_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libflatten_call_graph.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libgather_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_computation_deduplicator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_rematerialization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhost_memory_transfer_asyncifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhost_offload_legalize.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhost_offloader.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhost_offload_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblayout_assignment.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblayout_normalization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libllvm_compiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblogistic_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libloop_schedule_linearizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/graphcycles/libgraphcycles.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liboperand_upcaster.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liboptimization_barrier_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liboptimize_input_output_buffer_alias.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libqr_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libmath.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libloops.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libqr.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libmatrix.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libslicing.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libarithmetic.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreal_imag_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreduce_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreduce_scatter_combiner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreduce_scatter_reassociate.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liball_reduce_key.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreduce_window_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreshape_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libresult_caster.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/librng_bit_generator_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/librng_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libprng.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libconstants.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libscatter_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libsharding_remover.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libsimplify_fp_conversions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libslice_sinker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libsort_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libstochastic_convert_decomposer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libsub_byte_normalization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtopk_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtranspose_folding.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_all_reduce_code_motion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_replication_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_constant_sinking.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_trip_count_annotator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libzero_sized_hlo_elimination.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libconvert_mover.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdot_dimension_merger.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_constant_folding.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_cse.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libreshape_mover.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libconv_algorithm_picker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libslow_operation_alarm.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_conv_runner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libhlo_algorithm_denylist.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libgpu_autotuning_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libgemm_algorithm_picker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libgemm_fusion_autotuner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libautotuner_compile_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/autotuning/libautotuner_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libredzone_allocator_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libredzone_allocator_kernel_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/pass/libhlo_pass_pipeline.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcompilation_stats.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libfloat_normalization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtuple_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libbuffer_comparator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libbuffer_comparator_kernel_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libdevice_memory_handle.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libasm_compiler_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_float_support.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libfloat_support.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libsplit_k_gemm_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcustom_kernel_fusion_rewriter.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_fusion.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_custom_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_kernel_bf16xbf16_to_bf16.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_kernel_bf16xbf16_to_f32.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_kernel_bf16xs8_to_f32.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_kernel_f32xbf16_to_f32.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm_kernel_f32xf32_to_f32.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcutlass_gemm.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcustom_kernel_fusion_pattern.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libfusion_wrapper.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libgemm_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libpriority_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libfusion_deduplication_cache.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libfusion_process_dump_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_indexing_performance_model.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_performance_model.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libcoalescing_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_performance_model_base.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libfusion_analysis_cache.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libgpu_hlo_cost_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libhlo_op_profiles.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libhlo_op_profile_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libfusions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libconcatenate_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libcopy.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libcudnn.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libcustom.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libattribute_map.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcustom_kernel_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcopy_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libgemm_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libin_place_dynamic_update_slice_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libinput_slices_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libloop_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libreduction_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libscatter_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libscatter_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libtranspose_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/mlir/libmlir_fusion_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir/tools/mlir_replay/public/libcompiler_trace_instrumentation.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/mlir/tools/mlir_replay/public/libcompiler_trace_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libmhlo_passes.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libhlo_legalize_to_stablehlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/liblegalize_to_linalg_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libmhlo_rng_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libmhlo_scatter_gather_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libshape_component_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libstablehlo_legalize_to_hlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libunfuse_batch_norm.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libShapeTransforms.pic.a bazel-out/k8-opt/bin/external/stablehlo/libstablehlo_passes.pic.a bazel-out/k8-opt/bin/external/stablehlo/liblinalg_passes.pic.a bazel-out/k8-opt/bin/external/stablehlo/libvhlo_ops.pic.a bazel-out/k8-opt/bin/external/stablehlo/libvhlo_types.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/mlir/libstatus_scoped_diagnostic_handler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libconcatenate.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libin_place_dynamic_update_slice.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libdynamic_update_slice_util.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libbackend_config_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libonednn_config_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libinput_slices.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libreduction.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libreduction_base.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libthunk_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libmemset_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libscatter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libloop.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_fusible.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libparallel_loop_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libtranspose.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/legacy/libtiling_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libir_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libhlo_to_ir_bindings.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libbuffer_assignment_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libkernel_support_library.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libtuple_ops.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libfused_ir_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libelemental_ir_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libfloat8_fnuz_ir_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libmath_ops.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libloop_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libllvm_loop.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libtriton.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/triton/libtriton_fusion_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/triton/libpasses.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libhlo_function_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libasync_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libattribute_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libcustom_call_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/liblocation_importer.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libstack_location_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/transforms/libpasses.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/mlir/libelemental_hlo_to_mlir.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/mlir/libcomputation_partitioner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libhlo_fusion_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libreduction_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_asm_opts_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/libfusion_emitter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libir_emitter_context.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libexecution_stream_assignment.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_executable.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libxla_debug_info_manager.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libfor_all_thunks.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcommand_buffer_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcommand_buffer_cmd.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcustom_call_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_all_gather_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_all_reduce_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_all_to_all_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_collective_broadcast_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libffi_api.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libcall_frame.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libexecution_state.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libplatform_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/concurrency/libasync_value.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libtrace_command_buffer_factory.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libprofiler_lock.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libconditional_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libdynamic_slice_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libwhile_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libsequential_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libannotation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_collective_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/libattribute_exporter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/mlir/libtype_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/hlo_to_mhlo/libhlo_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir/utils/libtype_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libtype_conversion.pic.a bazel-out/k8-opt/bin/external/stablehlo/libstablehlo_ops.pic.a bazel-out/k8-opt/bin/external/stablehlo/libversion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/ir/libxla_gpu.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncExtensions.pic.a bazel-out/k8-opt/bin/external/triton/libTritonNvidiaGPUTransforms.pic.a bazel-out/k8-opt/bin/external/triton/libTritonToTritonGPU.pic.a bazel-out/k8-opt/bin/external/triton/libTritonGPUTransforms.pic.a bazel-out/k8-opt/bin/external/triton/libTritonLLVMIR.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/triton/libTritonTransforms.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/triton/third_party/nvidia/libNVGPUToLLVM.pic.a bazel-out/k8-opt/bin/external/triton/third_party/nvidia/libTritonNVIDIAGPUToLLVM.pic.a bazel-out/k8-opt/bin/external/triton/libTritonGPUToLLVM.pic.a bazel-out/k8-opt/bin/external/triton/libTritonAnalysis.pic.a bazel-out/k8-opt/bin/external/triton/libTritonDialects.pic.a bazel-out/k8-opt/bin/external/triton/third_party/nvidia/libNVGPUDialect.pic.a bazel-out/k8-opt/bin/external/triton/third_party/f2reduce/libf2reduce.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libkernel_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/kernels/libcustom_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libir_array.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libtriton_emitter_constraints.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libsymbolic_tile_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libtiled_hlo_instruction_or_computation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libsymbolic_tiled_hlo_instruction.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libsymbolic_tile.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libaffine_map_evaluator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/model/libindexing_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libgather_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libgather_scatter_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libstream_executor_memory_allocator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/llvm_gpu_backend/libllvm_gpu_backend.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libmetrics.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/monitoring/libsampler.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/monitoring/libcollection_registry.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/histogram/libhistogram.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libhistogram_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/librandom.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/librocm_rocdl_path.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libalgebraic_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libalgebraic_simplifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libhlo_instruction_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/utils/libhlo_sharding_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdot_as_convolution_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libconv_padding_legalization.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libconv_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcublas_pad_for_gemms.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libgemm_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcublas_padding_requirements.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_custom_call_compiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcudnn_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_fused_conv_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_fused_mha_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_fused_mha_transpose_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_fusion_compiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libkernel_reuse_cache.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libexecutable_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libkernel_arguments.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libtriton_fusion_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libmatmul_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libmlir_hlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libconvert_op_folder.pic.a bazel-out/k8-opt/bin/external/xla/xla/mlir_hlo/libhlo_ops_common.pic.a bazel-out/k8-opt/bin/external/stablehlo/libchlo_ops.pic.a bazel-out/k8-opt/bin/external/stablehlo/libbroadcast_utils.pic.a bazel-out/k8-opt/bin/external/stablehlo/libstablehlo_type_inference.pic.a bazel-out/k8-opt/bin/external/stablehlo/libstablehlo_assembly_format.pic.a bazel-out/k8-opt/bin/external/stablehlo/libbase.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBytecodeWriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libtriton_tiling_propagation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/fusions/triton/libtriton_support.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libinstruction_fusion.pic.a bazel-out/k8-opt/bin/external/xla/xla/tools/libhlo_decomposer_lib.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_norm_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_pad_for_convolutions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_simplify_padding.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libcudnn_vectorize_convolutions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcudnn_support_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libstream_executor_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/liblaunch_dimensions.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libstream_executor_util_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libdot_sparsity_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libgpusolver_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcusolver_context.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libsort_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libstable_sort_expander.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libop_expander_pass.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libcub_sort_thunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libthunk.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_clique.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/lib_nccl_api_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/librendezvous.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libexecution_context.pic.a bazel-out/k8-opt/bin/external/xla/xla/ffi/libtype_id_registry.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/liblocation_exporter.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/translate/mhlo_to_hlo/libstack_frame_index_builder.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libbuffer_allocations.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libgpu_executable_run_options.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/runtime/libnccl_clique_key.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libir_emission_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libhlo_traversal.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libtarget_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_f16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_f32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_f64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_s8_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_s16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_s32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_s64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u8_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u16_b16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u16_b32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u16_b64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u32_b16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u32_b32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u32_b64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u64_b16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u64_b32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u64_b64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u8_b16_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u8_b32_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcub_sort_kernel_u8_b64_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/gpu/transforms/libtriangular_solve_rewriter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/llvm_ir/libllvm_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libcpu_options.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_asm_compiler.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libcuda_root_path.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libsubprocess.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libnvjitlink_stub.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libptx_compiler_stub.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcompiler.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libexecutable.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdump.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_proto_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbuffer_assignment.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libbuffer_assignment_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libmemory_space_assignment.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libalgorithm.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libmemory_bound_loop_optimizer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libtuning_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libutils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libbuffer_interval_comparator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libprefetch_interval_picker.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libsimulator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/liballocation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libcost_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_loop_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/evaluator/libhlo_evaluator.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/utils/libhlo_query.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdynamic_dimension_inference.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libdynamic_window_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libwhile_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcall_inliner.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_dce.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_domain_isolator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_domain_remover.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_domain_verifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_domain_map.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_creation_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/lib/libcomparators.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/libxla_builder.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/libpadding.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/libsharding_builder.pic.a bazel-out/k8-opt/bin/external/xla/xla/libsharding_op_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/builder/libxla_computation.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtuple_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtuple_points_to_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblogical_buffer_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/cpu/libruntime_single_threaded_matmul_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/contraction/libeigen_contraction_kernel_no_mkl.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libslice.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/memory_space_assignment/libmemory_space_assignment_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/heap_simulator/libheap_simulator.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/heap_simulator/liballocation_block.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/utils/libhlo_live_range.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_alias_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_ordering.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libhlo_reachability.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_buffer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_dataflow_analysis.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcall_graph.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_phi_graph.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_value.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/liblogical_buffer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libbuffer_value.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libtime_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_verifier.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcollective_ops_utils.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/backends/cpu/libannotation_stack_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_execution_profile.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_cost_analysis.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_execution_profile_data_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_profile_printer.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_profile_printer_data_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhuman_readable_profile_builder.pic.a bazel-out/k8-opt/bin/external/xla/xla/libmetric_table_report.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_graph_dumper.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/hlo/parser/libhlo_parser.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libshape_inference.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libbackend_configs_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/gpu/libcublas_cudnn.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/io/libzlib_outputbuffer.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/io/libzlib_compression_options.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/libbase64.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libmaybe_owning_device_memory.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libshaped_buffer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libstream_pool.pic.a bazel-out/k8-opt/bin/external/xla/xla/libexecutable_run_options.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libmetrics_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libhlo_module_group.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libhlo.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libbackend_config.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libhuman_readable_json.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/ir/libtile_assignment.pic.a bazel-out/k8-opt/bin/external/xla/xla/libcomparison_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libliteral_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libprotobuf_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libsort_json.pic.a bazel-out/k8-opt/bin/external/xla/xla/libwindow_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcompilation_environments.pic.a bazel-out/k8-opt/bin/external/xla/xla/hlo/parser/libhlo_lexer.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_module_config.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcomputation_layout.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libcomputation_placer.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libglobal_device_id.pic.a bazel-out/k8-opt/bin/external/xla/xla/libliteral.pic.a bazel-out/k8-opt/bin/external/xla/xla/libarray.pic.a bazel-out/k8-opt/bin/external/xla/xla/libshape_tree.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/core/libbitmap.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/util/libbyte_swap_array.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/sycl/libsycl_platform_id.pic.a bazel-out/k8-opt/bin/external/xla/xla/libdebug_options_flags.pic.a bazel-out/k8-opt/bin/external/xla/xla/libparse_flags_from_env.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libnvjitlink_support.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libptx_compiler_support.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/util/libcommand_line_flags.pic.a bazel-out/k8-opt/bin/external/xla/xla/libshape_layout.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/libxla_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libname_uniquer.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/service/libhlo_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/host/libhost_platform_id.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/rocm/librocm_platform_id.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/jaxlib/mosaic/gpu/libcustom_call.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/jaxlib/mosaic/gpu/libpasses.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcupti_stub.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithToAMDGPU.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithToArmSME.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithToEmitC.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libEmitCTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmNeon2dToIntr.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSMEToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSMETransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSMEToSCF.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBufferizationToMemRef.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libComplexToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libComplexToLibm.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libComplexToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libComplexToStandard.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libControlFlowToSCF.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libControlFlowToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libConvertToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncToEmitC.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToLLVMSPVTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToNVVMTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToROCDLTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMDGPUToROCDL.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMDGPUDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMDGPUUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToVulkanTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLinalgToStandard.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathToFuncs.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathToLibm.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathToROCDL.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefToEmitC.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVGPUToNVVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToGPURuntimeTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAsyncToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libConvertToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenACCToSCF.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenMPToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libReconcileUnrealizedCasts.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFToControlFlow.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFToEmitC.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libEmitCDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFToGPU.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAffineToStandard.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFToOpenMP.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libIndexToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVCommonAttrToLLVMConversion.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libShapeToStandard.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libShapeDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorToLinalg.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLinalgTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMeshTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorTilingInterfaceImpl.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLinalgUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaToArith.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaToLinalg.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaToMLProgram.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMLProgramDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaToSCF.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaToTensor.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTosaDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libQuantOps.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libUBToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToArmSME.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToGPU.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVGPUUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMXTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSVETransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libX86VectorTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToSCF.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToSPIRV.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVConversion.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLinalgDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMeshShardingInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMeshDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorToXeGPU.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libXeGPUDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libExecutionEngine.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMXToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAMXDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmNeonToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmNeonDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSMEToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSMEDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSVEToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArmSVEDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBuiltinToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMIRToLLVMTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMIRToNVVMTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFromLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTranslateLib.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenACCToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenACCDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenMPToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenMPCommon.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libX86VectorToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libX86VectorDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAArch64AsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAArch64CodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAArch64UtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAArch64Info.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libARMAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libARMCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libARMUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libARMInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAMDGPUAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAMDGPUCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAMDGPUUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAMDGPUInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libPowerPCAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libPowerPCCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libPowerPCUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libPowerPCInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSystemZAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSystemZCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSystemZUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSystemZInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libRISCVAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libRISCVCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libRISCVUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libRISCVInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libX86AsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libOrcJIT.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libJITLink.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libExecutionEngine.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libOrcTargetProcess.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libOrcShared.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libWindowsDriver.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libOption.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libX86Disassembler.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libX86CodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libX86UtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libX86Info.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libControlFlowToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAsyncDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libROCDLTarget.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libROCDLToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libROCDLDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVTarget.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVSerialization.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVBinaryUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSPIRVDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVCIXToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVCIXDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libIndexToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libIndexDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithAttrToLLVMConversion.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMathDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAffineTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAffineUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAffineAnalysis.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBufferizationTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBufferizationDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSparseTensorDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVGPUDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVVMTarget.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTargetLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libExecutionEngineUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libNVPTXCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libPasses.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libHipStdPar.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCoroutines.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libNVPTXUtilsAndDesc.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCodeGen.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCFGuard.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCGData.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libObjectYAML.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libIPO.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libLinker.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libVectorize.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSandboxIR.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libIRPrinter.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libInstrumentation.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libObjCARC.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCodeGenTypes.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libMCDisassembler.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libNVPTXInfo.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVVMToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVVMToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libToLLVMIRTranslation.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMIRTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libNVVMDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBasicPtxBuilderInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libGPUDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libDLTIDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libOpenMPDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAtomicInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFuncDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libFrontendOpenMP.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libFrontendOffloading.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libScalar.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAggressiveInstCombine.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libInstCombine.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libTransformUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libTarget.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSCFDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libControlFlowDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libUBToLLVM.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMCommonConversion.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLLVMDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libBitWriter.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAnalysis.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libProfileData.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSymbolize.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDebugInfoDWARF.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDebugInfoPDB.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDebugInfoBTF.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libObject.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libIRReader.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libBitReader.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libMCParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libMC.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDebugInfoCodeView.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDebugInfoMSF.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libTextAPI.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libCore.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libBinaryFormat.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libRemarks.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libBitstreamReader.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libTargetParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMaskableOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMaskingOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTensorDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAffineDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemRefDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAllocationOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libCopyOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libComplexDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libParallelCombiningOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libShapedOpInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTilingInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransformDialectInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransformDialectUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransforms.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libMemorySlotInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libRuntimeVerifiableOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libTransformUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libRewrite.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libPDLToPDLInterp.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libPDLInterpDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libPDLDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSubsetOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libValueBoundsOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAnalysis.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libArithDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libCastInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libInferIntRangeCommon.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libInferTypeOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libUBDialect.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libConvertToLLVMInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libInliningUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libControlFlowInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libDataLayoutInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libInferIntRangeInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libLoopLikeInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libFunctionInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libCallOpInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libPass.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBytecodeReader.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libAsmParser.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libBytecodeOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSideEffectInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libDestinationStyleOpInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libVectorInterfaces.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libViewLikeInterface.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libDialectUtils.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libIR.pic.a bazel-out/k8-opt/bin/external/llvm-project/mlir/libSupport.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libSupport.pic.a bazel-out/k8-opt/bin/external/llvm-project/llvm/libDemangle.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcustom_call_status.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libcustom_call_target_registry.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcublas_plugin.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_blas_utils.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_blas_lt.pic.a bazel-out/k8-opt/bin/external/xla/xla/libshape_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libpermutation_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/libprinter.pic.a bazel-out/k8-opt/bin/external/xla/xla/service/libalgorithm_util.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcublas_stub.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcublas_lt_stub.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_platform.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcudnn_plugin.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_executor.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_collectives_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libnccl.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_event.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_driver.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_diagnostics.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcudart_stub.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_kernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_runtime.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_status.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_version_parser.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libdelay_kernel_cuda.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_command_buffer_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/libutil.pic.a bazel-out/k8-opt/bin/external/xla/xla/libstatus_macros.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/libxla_data_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcommand_buffer_kernels.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_timer_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_event_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_semaphore_gpu_only.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libread_numa_node.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/liballocator.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/liballocator_registry_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libscoped_memory_debug_annotation.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/backends/cpu/libtraceme_recorder_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/utils/libtime_utils_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/farmhash_archive/libfarmhash.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcudnn_frontend_helpers.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libgpu_stream_gpu_only.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/profiler/lib/libnvtx_utils_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcudnn_stub.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/libtensor_float_32_utils.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcufft_plugin.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/cuda/libcuda_platform_id.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libdevice_id_impl.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libdevice_type.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libenv_impl.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libenv.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libdenormal.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libplatform_port.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/profile_utils/libprofile_utils_cpu_utils.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/snappy/libsnappy.pic.a bazel-out/k8-opt/bin/external/com_googlesource_code_re2/libre2.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libsetround.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libtracing.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/profiler/backends/cpu/libthreadpool_listener_state.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libexecutor_cache.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libplatform_manager.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libplugin_registry.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libstream_common.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/gpu/libscoped_activate_context.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libhost_memory_allocation.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libstream_executor_common.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/util/libenv_var.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/liballocator_stats.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libblas.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libdnn.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/lib/strings/libproto_serialization.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libhash.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libprotobuf.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libkernel.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libkernel_spec.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libplatform.pic.a bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libdevice_description.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libdevice_description_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/libautotune_results_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/libautotuning_proto_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/xla/xla/tsl/protobuf/libdnn_proto_cc_impl.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/xla/xla/stream_executor/libsemantic_version.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcufft_stub.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/liberrors.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcusolver_stub.pic.a bazel-out/k8-opt/bin/external/xla/xla/tsl/cuda/libcusparse_stub.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libdso_loader.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/libpath.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/libscanner.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libstatus.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libabi.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libstrcat.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libnumbers.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libstr_util.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/liblogging.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libenv_time.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libmutex.pic.a bazel-out/k8-opt/bin/external/nsync/libnsync_cpp.pic.a bazel-out/k8-opt/bin/external/double_conversion/libdouble-conversion.pic.a bazel-out/k8-opt/bin/external/tsl/tsl/platform/libstringprintf.pic.a -Wl,-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/protobuf/liberror_codes_proto_impl_cc_impl.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/com_google_protobuf/libprotobuf.pic.lo -Wl,-no-whole-archive -Wl,-whole-archive bazel-out/k8-opt/bin/external/com_google_protobuf/libprotobuf_lite.pic.lo -Wl,-no-whole-archive bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libload_library.pic.a -Wl,--version-script,jaxlib/tools/gpu_version_script.lds -Wl,--no-undefined -lgrpc++ -lgpr -labsl_log_initialize -lrt -labsl_crc32c -labsl_crc_cord_state -labsl_crc_cpu_detect -labsl_crc_internal '-Wl,-rpath=$ORIGIN/../../nvidia/cuda_cupti/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cuda_cupti/lib' -lrt -lrt -pthread -ldl -lm '-Wl,-rpath=$ORIGIN/../../nvidia/cublas/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cublas/lib' '-Wl,-rpath=$ORIGIN/../../nvidia/nccl/lib' '-Wl,-rpath=$ORIGIN/../nvidia/nccl/lib' '-Wl,-rpath=$ORIGIN/../../nvidia/cuda_runtime/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cuda_runtime/lib' -labsl_leak_check '-Wl,-rpath=$ORIGIN/../../nvidia/cudnn/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cudnn/lib' -pthread -labsl_string_view -labsl_vlog_config_internal -labsl_log_internal_check_op -labsl_log_internal_message -labsl_log_internal_nullguard '-Wl,-rpath=$ORIGIN/../../nvidia/cufft/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cufft/lib' -labsl_vlog_config_internal -labsl_log_internal_conditions -labsl_log_internal_check_op -labsl_log_internal_message -labsl_log_internal_nullguard '-Wl,-rpath=$ORIGIN/../../nvidia/cusolver/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cusolver/lib' '-Wl,-rpath=$ORIGIN/../../nvidia/cusparse/lib' '-Wl,-rpath=$ORIGIN/../nvidia/cusparse/lib' -labsl_hash -labsl_city -labsl_low_level_hash -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_exponential_biased -labsl_statusor -labsl_bad_variant_access -labsl_synchronization -pthread -labsl_graphcycles_internal -labsl_time -labsl_civil_time -labsl_time_zone -ldl -lm -lpthread -lm -lpthread -lm -lz -labsl_status -labsl_stacktrace -labsl_symbolize -labsl_debugging_internal -labsl_demangle_internal -labsl_malloc_internal -pthread -labsl_cord -labsl_str_format_internal -labsl_strings -labsl_strings_internal -labsl_base -pthread -labsl_spinlock_wait -labsl_int128 -labsl_throw_delegate -labsl_bad_optional_access -labsl_raw_logging_internal -labsl_log_severity '-Wl,-rpath=$ORIGIN/../../tensorrt' '-Wl,-rpath=$ORIGIN/../tensorrt' -Wl,--disable-new-dtags -Wl,--disable-new-dtags -lstdc++ -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,--allow-shlib-undefined -Wl,-rpath,/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib -Wl,-rpath-link,/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/targets/x86_64-linux/lib/stubs -L/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/targets/x86_64-linux/lib -L/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/targets/x86_64-linux/lib/stubs -lrt)
# Configuration: 58403c13574b908d983a7462f6f84cb2cbe5f22dae075b3872c9f05cbef08433
# Execution platform: @local_execution_config_platform//:platform
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/xla/xla/pjrt/distributed/libin_memory_key_value_store.pic.a(in_memory_key_value_store.pic.o): in function `xla::InMemoryKeyValueStore::Get[abi:cxx11](std::basic_string_view<char, std::char_traits<char> >, absl::lts_20240722::Duration)':
in_memory_key_value_store.cc:(.text._ZN3xla21InMemoryKeyValueStore3GetB5cxx11ESt17basic_string_viewIcSt11char_traitsIcEEN4absl12lts_202407228DurationE+0xb9): undefined reference to `absl::lts_20240722::synchronization_internal::KernelTimeout::KernelTimeout(absl::lts_20240722::Duration)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/xla/xla/tsl/framework/libbfc_allocator.pic.a(allocator_retry.pic.o): in function `tsl::AllocatorRetry::AllocateRaw(std::function<void* (unsigned long, unsigned long, bool)>, int, unsigned long, unsigned long)':
allocator_retry.cc:(.text._ZN3tsl14AllocatorRetry11AllocateRawESt8functionIFPvmmbEEimm+0x179): undefined reference to `absl::lts_20240722::synchronization_internal::KernelTimeout::KernelTimeout(absl::lts_20240722::Duration)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/xla/xla/pjrt/libpjrt_stream_executor_client.pic.a(pjrt_stream_executor_client.pic.o): in function `xla::PjRtStreamExecutorLoadedExecutable::Execute(absl::lts_20240722::Span<std::vector<xla::PjRtBuffer*, std::allocator<xla::PjRtBuffer*> > const>, xla::ExecuteOptions const&, std::optional<std::vector<xla::PjRtFuture<void>, std::allocator<xla::PjRtFuture<void> > > >&)':
pjrt_stream_executor_client.cc:(.text._ZN3xla34PjRtStreamExecutorLoadedExecutable7ExecuteEN4absl12lts_202407224SpanIKSt6vectorIPNS_10PjRtBufferESaIS6_EEEERKNS_14ExecuteOptionsERSt8optionalIS4_INS_10PjRtFutureIvEESaISG_EEE+0x63c): undefined reference to `absl::lts_20240722::synchronization_internal::KernelTimeout::KernelTimeout(absl::lts_20240722::Duration)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/xla/xla/service/libasync_collective_creator.pic.a(async_collective_creator.pic.o): in function `void absl::lts_20240722::functional_internal::InvokeObject<tsl::errors::CopyPayloads(absl::lts_20240722::Status const&, absl::lts_20240722::Status&)::{lambda(std::basic_string_view<char, std::char_traits<char> >, absl::lts_20240722::Cord const&)#1}, void, std::basic_string_view<char, std::char_traits<char> >, absl::lts_20240722::Cord const&>(absl::lts_20240722::functional_internal::VoidPtr, absl::lts_20240722::functional_internal::ForwardT<std::basic_string_view<char, std::char_traits<char> > >::type, absl::lts_20240722::functional_internal::ForwardT<absl::lts_20240722::Cord const&>::type)':
async_collective_creator.cc:(.text._ZN4absl12lts_2024072219functional_internal12InvokeObjectIZN3tsl6errors12CopyPayloadsERKNS0_6StatusERS5_EUlSt17basic_string_viewIcSt11char_traitsIcEERKNS0_4CordEE_vJSC_SF_EEET0_NS1_7VoidPtrEDpNS1_8ForwardTIT1_E4typeE[_ZN4absl12lts_2024072219functional_internal12InvokeObjectIZN3tsl6errors12CopyPayloadsERKNS0_6StatusERS5_EUlSt17basic_string_viewIcSt11char_traitsIcEERKNS0_4CordEE_vJSC_SF_EEET0_NS1_7VoidPtrEDpNS1_8ForwardTIT1_E4typeE]+0x58): undefined reference to `absl::lts_20240722::cord_internal::CordzInfo::MaybeTrackCordImpl(absl::lts_20240722::cord_internal::InlineData&, absl::lts_20240722::cord_internal::InlineData const&, absl::lts_20240722::cord_internal::CordzUpdateTracker::MethodIdentifier)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/xla/xla/service/libslow_operation_alarm.pic.a(slow_operation_alarm.pic.o): in function `xla::SlowOperationAlarm::AlarmLoop()':
slow_operation_alarm.cc:(.text._ZN3xla18SlowOperationAlarm9AlarmLoopEv+0x21c): undefined reference to `absl::lts_20240722::synchronization_internal::KernelTimeout::KernelTimeout(absl::lts_20240722::Time)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: bazel-out/k8-opt/bin/external/tsl/tsl/platform/default/libenv.pic.a(posix_file_system.pic.o): in function `tsl::PosixRandomAccessFile::Read(unsigned long, unsigned long, absl::lts_20240722::Cord*) const':
posix_file_system.cc:(.text._ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE[_ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE]+0x10c): undefined reference to `absl::lts_20240722::cord_internal::cordz_next_sample'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: posix_file_system.cc:(.text._ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE[_ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE]+0x137): undefined reference to `absl::lts_20240722::cord_internal::cordz_next_sample'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: posix_file_system.cc:(.text._ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE[_ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE]+0x1af): undefined reference to `absl::lts_20240722::cord_internal::cordz_next_sample'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: posix_file_system.cc:(.text._ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE[_ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE]+0x1c5): undefined reference to `absl::lts_20240722::cord_internal::cordz_should_profile_slow(absl::lts_20240722::cord_internal::SamplingState&)'
/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: posix_file_system.cc:(.text._ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE[_ZNK3tsl21PosixRandomAccessFile4ReadEmmPN4absl12lts_202407224CordE]+0x1df): undefined reference to `absl::lts_20240722::cord_internal::CordzInfo::TrackCord(absl::lts_20240722::cord_internal::InlineData&, absl::lts_20240722::cord_internal::CordzUpdateTracker::MethodIdentifier, long)'
collect2: error: ld returned 1 exit status
Target //jaxlib/tools:build_gpu_plugin_wheel failed to build
INFO: Elapsed time: 491.618s, Critical Path: 487.64s
INFO: 1901 processes: 312 internal, 1589 local.
FAILED: Build did NOT complete successfully
ERROR: Build failed. Not running target
Traceback (most recent call last):
  File "/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/build/build.py", line 740, in <module>
    main()
  File "/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/build/build.py", line 734, in main
    shell(build_pjrt_plugin_command)
  File "/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/build/build.py", line 45, in shell
    output = subprocess.check_output(cmd)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.11/subprocess.py", line 466, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/_build_env/bin/bazel', 'run', '--verbose_failures=true', '//jaxlib/tools:build_gpu_plugin_wheel', '--', '--output_path=/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/dist', '--jaxlib_git_hash=1030732cb9b575b9c0490d60bacff7716b650f60', '--cpu=x86_64', '--enable-cuda=True', '--platform_version=12']' returned non-zero exit status 1.
Traceback (most recent call last):
  File "/opt/conda/lib/python3.12/site-packages/conda_build/build.py", line 2555, in build
    utils.check_call_env(
  File "/opt/conda/lib/python3.12/site-packages/conda_build/utils.py", line 404, in check_call_env
    return _func_defaulting_env_to_os_environ("call", *popenargs, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/lib/python3.12/site-packages/conda_build/utils.py", line 380, in _func_defaulting_env_to_os_environ
    raise subprocess.CalledProcessError(proc.returncode, _args)
subprocess.CalledProcessError: Command '['/bin/bash', '-o', 'errexit', '/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/conda_build.sh']' returned non-zero exit status 1.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/conda/bin/conda-build", line 11, in <module>
    sys.exit(execute())
             ^^^^^^^^^
  File "/opt/conda/lib/python3.12/site-packages/conda_build/cli/main_build.py", line 589, in execute
    api.build(
  File "/opt/conda/lib/python3.12/site-packages/conda_build/api.py", line 209, in build
    return build_tree(
           ^^^^^^^^^^^
  File "/opt/conda/lib/python3.12/site-packages/conda_build/build.py", line 3655, in build_tree
    packages_from_this = build(
                         ^^^^^^
  File "/opt/conda/lib/python3.12/site-packages/conda_build/build.py", line 2563, in build
    raise BuildScriptException(str(exc), caused_by=exc) from exc
conda_build.exceptions.BuildScriptException: Command '['/bin/bash', '-o', 'errexit', '/home/conda/feedstock_root/build_artifacts/jaxlib_1732009181577/work/conda_build.sh']' returned non-zero exit status 1.
selected linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12numpy2.0python3.11.____cpython
Traceback (most recent call last):
  File "/home/straversaro-iit.local/jaxlib-feedstock/build-locally.py", line 109, in <module>
    main()
  File "/home/straversaro-iit.local/jaxlib-feedstock/build-locally.py", line 97, in main
    run_docker_build(ns)
  File "/home/straversaro-iit.local/jaxlib-feedstock/build-locally.py", line 32, in run_docker_build
    subprocess.check_call([script])
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['.scripts/run_docker_build.sh']' returned non-zero exit status 1.

log-jaxlib-cuda-take4.txt

@traversaro
Copy link
Contributor Author

The only occurrence of a similar problem are in conda-forge/bazel-feedstock#188 (comment), but then the affected user reports that the problem was solved, without saying what is the corresponding change (see https://xkcd.com/979/, but in this case the user is myself :D ).

@traversaro
Copy link
Contributor Author

The only occurrence of a similar problem are in conda-forge/bazel-feedstock#188 (comment), but then the affected user reports that the problem was solved, without saying what is the corresponding change (see https://xkcd.com/979/, but in this case the user is myself :D ).

Actually, now that I think of this, probably I did a patched that then was rebased together to clean the PR. Probably the related patch is something like https://github.com/conda-forge/bazel-feedstock/blob/764ac0bb362224f0e8deb53b1a6a3f441b6ead7d/recipe/patches/0002-Build-with-native-dependencies.patch#L179-L189 .

@traversaro
Copy link
Contributor Author

The linker command seems contain some absl libraries, but not all the one required:

   -labsl_string_view -labsl_vlog_config_internal -labsl_log_internal_check_op -labsl_log_internal_message -labsl_log_internal_nullguard 

@traversaro
Copy link
Contributor Author

After a bit of an hack (passing the missing linker flags all as part of an unrelated absl target that I know as linked) the compilation end successfully, but the produced jaxlib crashes at runtime:

(jaxcuda) traversaro@IITBMP014LW012:~$ python
Python 3.11.10 | packaged by conda-forge | (main, Oct 16 2024, 01:27:36) [GCC 13.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import jax.numpy as jnp
>>> jnp.arange(5.0)
[globals.cc : 104] RAW: absl::log_internal::SetTimeZone() has already been called
Aborted (core dumped)

@traversaro
Copy link
Contributor Author

The backtrace is:

__pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
warning: 44     ./nptl/pthread_kill.c: No such file or directory
(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007ffff7cd126e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007ffff7cb48ff in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007ffff73bc3e0 in absl::lts_20240722::raw_log_internal::(anonymous namespace)::RawLogVA(absl::lts_20240722::LogSeverity, char const*, int, char const*, __va_list_tag*) ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/../../../libabsl_raw_logging_internal.so.2407.0.0
#6  0x00007ffff73bc47a in absl::lts_20240722::raw_log_internal::RawLog(absl::lts_20240722::LogSeverity, char const*, int, char const*, ...) ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/../../../libabsl_raw_logging_internal.so.2407.0.0
#7  0x00007fff404f2174 in absl::lts_20240722::log_internal::SetTimeZone(absl::lts_20240722::TimeZone) ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/../../.././libabsl_log_internal_globals.so.2407.0.0
#8  0x00007ffff78020f3 in absl::lts_20240722::InitializeLog() ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/../../../libabsl_log_initialize.so.2407.0.0
#9  0x00007fff2e8c4d7b in void absl::lts_20240722::base_internal::CallOnceImpl<GetPjrtApi::{lambda()#1}>(std::atomic<unsigned int>*, absl::lts_20240722::base_internal::SchedulingMode, GetPjrtApi::{lambda()#1}&&) [clone .constprop.0] ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jax_plugins/xla_cuda12/xla_cuda_plugin.so
#10 0x00007fff2e8c4e01 in GetPjrtApi ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jax_plugins/xla_cuda12/xla_cuda_plugin.so
#11 0x00007fff41c23f89 in pjrt::LoadPjrtPlugin(std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >) [clone .cold] ()
   from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/xla_extension.so
#12 0x00007fff41faa2b5 in nanobind::detail::func_create<false, true, xla::nanobind_init_xla_extension(nanobind::module_&)::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> --Type <RET> for more, q to quit, c to continue without paging--
basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::optional<nanobind::capsule>)#9}, nanobind::capsule, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::optional<nanobind::capsule>, 0ul, 1ul, 2ul, nanobind::scope, nanobind::name, nanobind::arg, nanobind::arg_v, nanobind::arg_v>(xla::nanobind_init_xla_extension(nanobind::module_&)::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::optional<nanobind::capsule>)#9}&&, nanobind::capsule (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::optional<nanobind::capsule>), std::integer_sequence<unsigned long, 0ul, 1ul, 2ul>, nanobind::scope const&, nanobind::name const&, nanobind::arg const&, nanobind::arg_v const&, nanobind::arg_v const&)::{lambda(void*, _object**, unsigned char*, nanobind::rv_policy, nanobind::detail::cleanup_list*)#1}::_FUN(void*, _object**, unsigned char*, nanobind::rv_policy, nanobind::detail::cleanup_list*) () from /home/traversaro/miniforge3/envs/jaxcuda/lib/python3.11/site-packages/jaxlib/xla_extension.so

@traversaro
Copy link
Contributor Author

@traversaro
Copy link
Contributor Author

xref: abseil/abseil-cpp#1656 .

@traversaro
Copy link
Contributor Author

xref: abseil/abseil-cpp#1656 .

Indeed this issue seems to describe exactly the issue. In a nutshell, apparently two parts of the code call absl::lts_20240722::InitializeLog(), and that is crashing the process.

Probably this does not happen on the PyPI packages, as there the pjrt plugin is a shared library that links a static abseil, so I guess that effectively the pjrt gets its own private copy of abseil logger, and for that private copy InitializeLog works fine. In our case, we are using a shared copy of abseil, and hence the logger there is already initialized (it is not clear to me by who).

Possible solutions:

Use static abseil (at least for pjrt plugin)

That may be a solution, but I am not sure what are the downsides of this.

Avoid to call absl::InitializeLog() in the same process

In abseil/abseil-cpp#1656 they suggest the solution/workaround:

if (!absl::log_internal::IsInitialized()) {
  absl::InitializeLog();
}

even if technically this is a big race condition, as you never know if some other thread calls `` between the call to absl::log_internal::IsInitialized() and the one to `absl::InitializeLog()`. However, that may be fine as long as we do not have free-threading builds for `jaxlib`, even if it is difficult to say if we do not know who actually calls `absl::InitializeLog()` for the first time.

Anyhow, this may be a sufficient workaround, hoping for a better solution upstream in abseil.

recipe/build.sh Outdated
@@ -78,7 +78,7 @@ build --verbose_failures
build --toolchain_resolution_debug
build --define=PREFIX=${PREFIX}
build --define=PROTOBUF_INCLUDE_PATH=${PREFIX}/include
build --local_cpu_resources=${CPU_COUNT}
build --local_cpu_resources=120
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, this was not supposed to be committed, my bad.

@xhochy
Copy link
Member

xhochy commented Nov 22, 2024

Avoid to call absl::InitializeLog() in the same process

That's a workaround I would be happy with for now. I would expect that the packages will always be imported one after another,

@xhochy
Copy link
Member

xhochy commented Nov 22, 2024

Cleaned up a bit and implemented the suggestion. @traversaro Can you check whether this fixes your problem?

@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Nov 22, 2024

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12233205650. Examine the logs at this URL for more detail.

@xhochy
Copy link
Member

xhochy commented Nov 26, 2024

The libdevice problem is solved by setting the env variable export XLA_FLAGS=--xla_gpu_cuda_data_dir=$CONDA_PREFIX, but unfortunately the segfault remains.

This segfault?

@traversaro
Copy link
Contributor Author

Yes, that segfault. The related part of the code is https://github.com/openxla/xla/blob/626f1d2aadd2bb6d2217ffdcf6dba3933cffa183/xla/stream_executor/cuda/cuda_blas.cc#L188-L208 .

I need to understand how to investigate better but my guess is that the following is happening: somehow the cuda cuBLAS is not found/not initialized (and this is the real problem), while if cuBLAS is installed in the system it is correctly found/initialized. Then, an error message would be printed, but using the log results in a segfault.

@traversaro
Copy link
Contributor Author

traversaro commented Nov 26, 2024

Ok, for now I just inspected the code, but I think I am understanding what is going on (no, that was the wrong system).

However, the CUDA xla plugins calls cuBLAS via a trampoline, and the trampoline is quite picky on the version of cuBLAS installed, trying explicitly to load the exact version used to build:

@traversaro
Copy link
Contributor Author

traversaro commented Nov 26, 2024

Ok, I noticed that also python -c "import jax;jax._src.xla_bridge._check_cuda_versions(debug=True)" was failing, so I started a side quest to try to understand how to fix that (not sure how this is related, as jaxlib and xla's CUDA plugin have two different ways of loading libraries. After playing a bit with LD_DEBUG=libs it turned out that that was failing as the libcublas.so was missing, while libcublas.so.12 was present.

@traversaro
Copy link
Contributor Author

Ok, I am not sure but apparently setting export XLA_FLAGS=--xla_gpu_cuda_data_dir=$CONDA_PREFIX and installing also libcusparse-dev libcufft-dev cuda-cupti-dev libcublas-dev libcusolver-dev fixes the segfault even if there is no system cuda installed.

@traversaro
Copy link
Contributor Author

Indeed, before segfaulting it is possible to see by setting LD_DEBUG=libs that the loader looks for libcublas.so:

find library=libcublas.so [0]; searching
 search path=/home/straversaro-iit.local/jaxws/jaxsim/.pixi/envs/tasks-gpu/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../../..		(RPATH from file /home/straversaro-iit.local/jaxws/jaxsim/.pixi/envs/tasks-gpu/lib/python3.12/site-packages/jax_plugins/xla_cuda12/xla_cuda_plugin.so)
  trying file=/home/straversaro-iit.local/jaxws/jaxsim/.pixi/envs/tasks-gpu/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../../../libcublas.so
 search path=/home/straversaro-iit.local/jaxws/jaxsim/.pixi/envs/tasks-gpu/bin/../lib		(RPATH from file python)
  trying file=/home/straversaro-iit.local/jaxws/jaxsim/.pixi/envs/tasks-gpu/bin/../lib/libcublas.so
 search cache=/etc/ld.so.cache
 search path=/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/lib:/usr/lib		(system search path)
  trying file=/lib/x86_64-linux-gnu/libcublas.so
  trying file=/usr/lib/x86_64-linux-gnu/libcublas.so
  trying file=/lib/libcublas.so
  trying file=/usr/lib/libcublas.so

Interestingly, for some reason when jax is installed via pip, LD_DEBUG=libs shows that libcublas.so.12 is searched for some reason:

find library=libcublas.so.12 [0]; searching
 search path=/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cuda_cupti/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/nccl/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cuda_runtime/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cudnn/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cufft/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cusolver/lib:/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cusparse/lib		(RPATH from file /opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/xla_cuda_plugin.so)
  trying file=/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cuda_cupti/lib/libcublas.so.12
  trying file=/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib/libcublas.so.12

find library=libcublasLt.so.12 [0]; searching
 search path=/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib		(RPATH from file /opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/xla_cuda_plugin.so)
  trying file=/opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib/libcublasLt.so.12


calling init: /opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib/libcublasLt.so.12


calling init: /opt/conda/envs/jaxcudapip/lib/python3.12/site-packages/jax_plugins/xla_cuda12/../../nvidia/cublas/lib/libcublas.so.12

@traversaro
Copy link
Contributor Author

A bit of update on my weekends findings/theories, as I am not sure when I will come back to this: I think the issue on the fact that conda's build of jaxlib looks for libcublas.so instead if libcublas.so.12 is related to the tsl::internal::GetCublasVersion function (and all the other similar functions for CUDA libraries, but the crash is specific to cublas) return an empty string in conda builds, while "12" on pypi builds.

This depends on the value of the TF_CUBLAS_VERSION macro, that is defined in the bazel-generated header third_party/gpus/cuda/cuda_config.h that is generated by the bazel code in :

Note that github search filters results in third_party folders, so it is easy to miss relevant code if searching TF_CUBLAS_VERSION on GitHub search (see https://github.com/orgs/community/discussions/11176).

@njzjz
Copy link
Member

njzjz commented Dec 2, 2024

This depends on the value of the TF_CUBLAS_VERSION macro, that is defined in the bazel-generated header third_party/gpus/cuda/cuda_config.h that is generated by the bazel code in :

When building locally, before the build directory is cleaned, cuda_config.h can be found in the following path:

find -name 'cuda_config.h'
./build_artifacts/jaxlib_1731957330152/_build_env/share/bazel/a6978338d085f2f71b32b3d4d50f2908/external/local_config_cuda/cuda/cuda/cuda_config.h

and yes, only TF_CUDA_VERSION, TF_CUDART_VERSION, TF_CUDA_COMPUTE_CAPABILITIES are defined. Others are empty.

#ifndef CUDA_CUDA_CONFIG_H_
#define CUDA_CUDA_CONFIG_H_

#define TF_CUDA_VERSION "12.0"
#define TF_CUDART_VERSION "12"
#define TF_CUPTI_VERSION ""
#define TF_CUBLAS_VERSION ""
#define TF_CUSOLVER_VERSION ""
#define TF_CURAND_VERSION ""
#define TF_CUFFT_VERSION ""
#define TF_CUSPARSE_VERSION ""
#define TF_CUDNN_VERSION ""

#define TF_CUDA_TOOLKIT_PATH ""

#define TF_CUDA_COMPUTE_CAPABILITIES 60, 70, 75, 80, 86, 89, 90, 90

#endif  // CUDA_CUDA_CONFIG_H_

(this file is generated before the CUDA version is bumped to 12.6)

In the same directory, cuda_config.py gives

config = {"cuda_version": "12.0", "cudnn_version": "", "cuda_compute_capabilities": ["sm_60", "sm_70", "sm_75", "sm_80", "sm_86", "sm_89", "sm_9    0", "compute_90"], "cpu_compiler": ""}

@njzjz
Copy link
Member

njzjz commented Dec 2, 2024

It reads the version from version.txt generated from https://github.com/tensorflow/tensorflow/blob/e54466b98aaa887bd78232c8bb518a60c748beed/third_party/gpus/cuda/hermetic/cuda_redist_init_repositories.bzl#L360

and the detected version is from the filenames.

I check the cublas directory

ll ./build_artifacts/jaxlib_1731957330152/_build_env/share/bazel/a6978338d085f2f71b32b3d4d50f2908/external/cuda_cublas/
total 24
lrwxrwxrwx. 1 jz748 hugetlbfs   99 Nov 18 14:16 bin -> /home/conda/feedstock_root/build_artifacts/jaxlib_1731957330152/_build_env/targets/x86_64-linux/bin
-rwxr-xr-x. 1 jz748 hugetlbfs 1005 Nov 18 14:16 BUILD
lrwxrwxrwx. 1 jz748 hugetlbfs  103 Nov 18 14:16 include -> /home/conda/feedstock_root/build_artifacts/jaxlib_1731957330152/_build_env/targets/x86_64-linux/include
lrwxrwxrwx. 1 jz748 hugetlbfs   99 Nov 18 14:16 lib -> /home/conda/feedstock_root/build_artifacts/jaxlib_1731957330152/_build_env/targets/x86_64-linux/lib
lrwxrwxrwx. 1 jz748 hugetlbfs  100 Nov 18 14:16 nvvm -> /home/conda/feedstock_root/build_artifacts/jaxlib_1731957330152/_build_env/targets/x86_64-linux/nvvm
-rwxr-xr-x. 1 jz748 hugetlbfs    0 Nov 18 14:16 version.txt
-rw-r--r--. 1 jz748 hugetlbfs  105 Nov 18 14:16 WORKSPACE

and I don't find libcublas.so in that directory?

ll ./build_artifacts/jaxlib_1731957330152/_build_env/targets/x86_64-linux/lib/
total 40880
drwxr-xr-x. 5 jz748 hugetlbfs     4096 Nov 18 14:16 cmake
-rw-r--r--. 5 jz748 hugetlbfs  1605682 Dec 13  2023 libcudadevrt.a
lrwxrwxrwx. 1 jz748 hugetlbfs       21 Nov 18 14:16 libcudart.so -> libcudart.so.12.0.107
lrwxrwxrwx. 1 jz748 hugetlbfs       21 Nov 18 14:16 libcudart.so.12 -> libcudart.so.12.0.107
-rwxr-xr-x. 5 jz748 hugetlbfs   691481 Dec 13  2023 libcudart.so.12.0.107
-rw-r--r--. 5 jz748 hugetlbfs  1176068 Dec 13  2023 libcudart_static.a
-rw-r--r--. 5 jz748 hugetlbfs    30922 Dec 13  2023 libculibos.a
-rw-r--r--. 3 jz748 hugetlbfs 38333916 Oct 24  2023 libnvptxcompiler_static.a
drwxr-xr-x. 2 jz748 hugetlbfs     4096 Nov 18 14:16 stubs

@njzjz
Copy link
Member

njzjz commented Dec 2, 2024

and I don't find libcublas.so in that directory?

Oh, it's in ${PREFIX}/targets/x86_64-linux, but bazel makes a symlink to ${BUILD_PREFIX}/targets/x86_64-linux.

@njzjz
Copy link
Member

njzjz commented Dec 2, 2024

bazel makes a symlink to ${BUILD_PREFIX}/targets/x86_64-linux

This is set by LOCAL_CUDA_PATH which can only be set to one path.

https://github.com/tensorflow/tensorflow/blob/f8beae8c7182e3e3ac2c5d3051e92e6ff394b0f1/third_party/gpus/cuda/hermetic/cuda_redist_init_repositories.bzl#L362-L365

export LOCAL_CUDA_PATH="${BUILD_PREFIX}/targets/x86_64-linux"

@traversaro
Copy link
Contributor Author

Good catch! Either we need to fix/patch that part somehow, or add libcusparse-dev libcufft-dev cuda-cupti-dev libcublas-dev libcusolver-dev to run dependencies of jaxlib when enabling cuda.

@njzjz
Copy link
Member

njzjz commented Dec 2, 2024

Here, the include directory is copied, but not lib directory where the version is found

rsync -a ${PREFIX}/targets/x86_64-linux/include/ ${BUILD_PREFIX}/targets/x86_64-linux/include/

Note that cuDNN has the same issue - only the header file is copied

mkdir -p ${BUILD_PREFIX}/targets/x86_64-linux/include/third_party/gpus/cudnn
cp ${PREFIX}/include/cudnn*.h ${BUILD_PREFIX}/targets/x86_64-linux/include/third_party/gpus/cudnn/

export LOCAL_CUDNN_PATH="${PREFIX}/targets/x86_64-linux"

@ericmjl
Copy link
Contributor

ericmjl commented Dec 2, 2024

I’ve been following this issue from afar. Just wanted to say I appreciate the work that you guys are doing! Thank you for the time and effort put in!

@h-vetinari
Copy link
Member

or add libcusparse-dev libcufft-dev cuda-cupti-dev libcublas-dev libcusolver-dev to run dependencies of jaxlib when enabling cuda.

That sounds like the easiest solution by far? 🤔

@traversaro
Copy link
Contributor Author

traversaro commented Dec 8, 2024

or add libcusparse-dev libcufft-dev cuda-cupti-dev libcublas-dev libcusolver-dev to run dependencies of jaxlib when enabling cuda.

That sounds like the easiest solution by far? 🤔

Definitely! I pushed a commit in 8c12eaf that adds those as dependencies, and also patches XLA to be able to find the cuda libraries as installed by conda cuda packages without the need to set the env variable export XLA_FLAGS=--xla_gpu_cuda_data_dir=$CONDA_PREFIX. The last version of the PR works fine for me with CUDA support even in a vanilla Docker image with no CUDA libraries installed in the system, so it is ready for review for me, thanks @conda-forge/jax @conda-forge/jaxlib !

@traversaro
Copy link
Contributor Author

@njzjz I was not able to look into your findings, so if you have any alternative solution feel free to propose, thanks!

@njzjz
Copy link
Member

njzjz commented Dec 8, 2024

@njzjz I was not able to look into your findings, so if you have any alternative solution feel free to propose, thanks!

It looks good to me! I think this PR can be merged and other improvements can be done in the future PRs.

@traversaro traversaro changed the title Generate also jax-cuda-plugin and jax-cuda-pjrt in cuda builds and bump CUDA used at built time to 12.6 Generate also jax-cuda-plugin and jax-cuda-pjrt in cuda builds and bump CUDA used at built time to 12.6 and add fixes for CUDA Dec 9, 2024
@xhochy xhochy merged commit 25f5103 into conda-forge:main Dec 9, 2024
24 checks passed
@traversaro
Copy link
Contributor Author

Thanks a lot for the merge @xhochy !

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.

jaxlib installed with CUDA build fails to find GPU
6 participants