NVIDIA / TensorRT

NVIDIA® TensorRT™ is an SDK for high-performance deep learning inference on NVIDIA GPUs. This repository contains the open source components of TensorRT.
https://developer.nvidia.com/tensorrt
Apache License 2.0
10.68k stars 2.12k forks source link

install.sh failure of tools/experimental/trt-engine-explorer using Container TensorRT-24.02-py3 #3711

Closed bernardrb closed 5 months ago

bernardrb commented 7 months ago

Description

The installation script for trt-engine-explorer does not work in the TensorRT 24.02-py3 container. There seems be an issue with the package dependences, causing an error when Cython is compiling scikit-learn files.

  Traceback (most recent call last):
    File "/usr/lib/python3.10/multiprocessing/pool.py", line 125, in worker
      result = (True, func(*args, **kwds))
    File "/usr/lib/python3.10/multiprocessing/pool.py", line 48, in mapstar
      return list(map(*args))
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/Cython/Build/Dependencies.py", line 1345, in cythonize_one_helper
      return cythonize_one(*m)
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/Cython/Build/Dependencies.py", line 1321, in cythonize_one
      raise CompileError(None, pyx_file)
  Cython.Compiler.Errors.CompileError: sklearn/ensemble/_hist_gradient_boosting/splitting.pyx
  """

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

  Traceback (most recent call last):
    File "/workspace/TensorRT/tools/experimental/trt-engine-explorer/env_trex/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
  [ 1/53] Cythonizing sklearn/__check_build/_check_build.pyx
  [ 2/53] Cythonizing sklearn/_isotonic.pyx
  [ 3/53] Cythonizing sklearn/cluster/_dbscan_inner.pyx
  [ 4/53] Cythonizing sklearn/cluster/_hierarchical_fast.pyx
  [ 5/53] Cythonizing sklearn/cluster/_k_means_elkan.pyx
  [ 6/53] Cythonizing sklearn/cluster/_k_means_fast.pyx
  [ 7/53] Cythonizing sklearn/cluster/_k_means_lloyd.pyx
  [ 8/53] Cythonizing sklearn/datasets/_svmlight_format_fast.pyx
  [ 9/53] Cythonizing sklearn/decomposition/_cdnmf_fast.pyx
  [10/53] Cythonizing sklearn/decomposition/_online_lda_fast.pyx
  [11/53] Cythonizing sklearn/ensemble/_gradient_boosting.pyx
  [12/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/_binning.pyx
  [13/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/_bitset.pyx
  [14/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/_gradient_boosting.pyx
  [15/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/_loss.pyx
  [16/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/_predictor.pyx
  [17/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/common.pyx
  [18/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/histogram.pyx
  [19/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/splitting.pyx
  [20/53] Cythonizing sklearn/ensemble/_hist_gradient_boosting/utils.pyx
  [21/53] Cythonizing sklearn/feature_extraction/_hashing_fast.pyx
  [22/53] Cythonizing sklearn/linear_model/_cd_fast.pyx
  [23/53] Cythonizing sklearn/linear_model/_sag_fast.pyx
  [24/53] Cythonizing sklearn/linear_model/_sgd_fast.pyx
  [25/53] Cythonizing sklearn/manifold/_barnes_hut_tsne.pyx
  [26/53] Cythonizing sklearn/manifold/_utils.pyx
  [27/53] Cythonizing sklearn/metrics/_pairwise_fast.pyx
  [28/53] Cythonizing sklearn/metrics/cluster/_expected_mutual_info_fast.pyx
  [29/53] Cythonizing sklearn/neighbors/_ball_tree.pyx
  [30/53] Cythonizing sklearn/neighbors/_dist_metrics.pyx
  [31/53] Cythonizing sklearn/neighbors/_kd_tree.pyx
  [32/53] Cythonizing sklearn/neighbors/_quad_tree.pyx
  [33/53] Cythonizing sklearn/neighbors/_typedefs.pyx
  [34/53] Cythonizing sklearn/preprocessing/_csr_polynomial_expansion.pyx
  [35/53] Cythonizing sklearn/svm/_liblinear.pyx
  [36/53] Cythonizing sklearn/svm/_libsvm.pyx
  [37/53] Cythonizing sklearn/svm/_libsvm_sparse.pyx
  [38/53] Cythonizing sklearn/svm/_newrand.pyx
  [39/53] Cythonizing sklearn/tree/_criterion.pyx
  [40/53] Cythonizing sklearn/tree/_splitter.pyx
  [41/53] Cythonizing sklearn/tree/_tree.pyx
  [42/53] Cythonizing sklearn/tree/_utils.pyx
  [43/53] Cythonizing sklearn/utils/_cython_blas.pyx
  [44/53] Cythonizing sklearn/utils/_fast_dict.pyx
  [45/53] Cythonizing sklearn/utils/_logistic_sigmoid.pyx
  [46/53] Cythonizing sklearn/utils/_openmp_helpers.pyx
  [47/53] Cythonizing sklearn/utils/_random.pyx
  [48/53] Cythonizing sklearn/utils/_seq_dataset.pyx
  [49/53] Cythonizing sklearn/utils/_weight_vector.pyx
  [50/53] Cythonizing sklearn/utils/arrayfuncs.pyx
  [51/53] Cythonizing sklearn/utils/graph_shortest_path.pyx
  [52/53] Cythonizing sklearn/utils/murmurhash.pyx
  [53/53] Cythonizing sklearn/utils/sparsefuncs_fast.pyx
      main()
    File "/workspace/TensorRT/tools/experimental/trt-engine-explorer/env_trex/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/workspace/TensorRT/tools/experimental/trt-engine-explorer/env_trex/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
      return hook(metadata_directory, config_settings)
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 366, in prepare_metadata_for_build_wheel
      self.run_setup()
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 487, in run_setup
      super().run_setup(setup_script=setup_script)
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 311, in run_setup
      exec(code, locals())
    File "<string>", line 301, in <module>
    File "<string>", line 297, in setup_package
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/numpy/distutils/core.py", line 136, in setup
      config = configuration()
    File "<string>", line 188, in configuration
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/numpy/distutils/misc_util.py", line 1050, in add_subpackage
      config_list = self.get_subpackage(subpackage_name, subpackage_path,
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/numpy/distutils/misc_util.py", line 1016, in get_subpackage
      config = self._get_configuration_from_setup_py(
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/numpy/distutils/misc_util.py", line 958, in _get_configuration_from_setup_py
      config = setup_module.configuration(*args)
    File "/tmp/pip-install-53_ac_i1/scikit-learn_a00eb28618544730b79d1b1d79a76988/sklearn/setup.py", line 83, in configuration
      cythonize_extensions(top_path, config)
    File "/tmp/pip-install-53_ac_i1/scikit-learn_a00eb28618544730b79d1b1d79a76988/sklearn/_build_utils/__init__.py", line 70, in cythonize_extensions
      config.ext_modules = cythonize(
    File "/tmp/pip-build-env-_s8wktmx/overlay/lib/python3.10/site-packages/Cython/Build/Dependencies.py", line 1145, in cythonize
      result.get(99999)  # seconds
    File "/usr/lib/python3.10/multiprocessing/pool.py", line 774, in get
      raise self._value
  Cython.Compiler.Errors.CompileError: sklearn/ensemble/_hist_gradient_boosting/splitting.pyx
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed

× Encountered error while generating package metadata. ╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.

Environment

TensorRT Version: 8.6.3

NVIDIA GPU: RTX 3090

Operating System:

Baremetal or Container (if so, version): 24.02-py3

Steps To Reproduce

Run TensorRT 24.02 Docker Container, and mount tensorRT. Navigate to tools/experimental/trt-engine-explorer Run source install.sh

Reproduced in google colab, causing the same issue.

zerollzeng commented 7 months ago

Filed internal bug 4565159 for this.

zerollzeng commented 5 months ago

Sorry for forgetting update here: issue is fixed in TRT 10.