Skip to content

Release 2.39.0 corresponding to NGC container 23.10

Compare
Choose a tag to compare
@mc-nv mc-nv released this 27 Oct 15:48
· 2 commits to r23.10 since this release
011b9a5

Triton Inference Server

The Triton Inference Server provides a cloud inferencing solution optimized for both CPUs and GPUs. The server provides an inference service via an HTTP or GRPC endpoint, allowing remote clients to request inferencing for any model being managed by the server. For edge deployments, Triton Server is also available as a shared library with an API that allows the full functionality of the server to be included directly in an application.

New Features and Improvements

  • Triton now supports the TensorRT-LLM backend. This backend uses the Nvidia TensorRT-LLM, which replaces the Fastertransformer backend. A new container with TensorRT-LLM backend is available on NGC for 23.10.

  • Added support for handling client-side request cancellation in Triton server and backends. (server docs, client docs).

  • Triton can deploy supported models on the vLLM engine using the new vLLM backend. A new container with vLLM backend is available on NGC for 23.10.

  • Added Generate extension (beta) which provides better REST APIs for inference on Large Language Models.

  • New tutorials with respect to how to run vLLM with the new REST API, how to run Llama2 with TensorRT-LLM backend, and how to run with HuggingFace models in the tutorial repo.

  • Support Scalar I/O in ONNXRuntime backend.

  • Added support for writing custom backends in python, a.k.a. Python-based backends.

  • Refer to the 23.10 column of the Frameworks Support Matrix for container image versions on which the 23.10 inference server container is based.

Known Issues

  • For its initial release, the TensorRT-LLM backend provides limited support of Triton extensions and features.

  • The TensorRT-LLM backend may core dump on server shutdown. This impacts server teardown only and will not impact inferencing.

  • When a model uses a backend which is not found, Triton would reference the missing backend as `backend_name /model.py” in the error message. This is already fixed for future releases.

  • When using decoupled models, there is a possibility that response order as sent from the backend may not match with the order in which these responses are received by the streaming gRPC client. Note that this only applies to responses from different requests. Any responses corresponding to the same request will still be received in their expected order, relative to each other.

  • The FasterTransformer backend is only officially supported for 22.12, though it can be built for Triton container versions up to 23.07.

  • The Java CAPI is known to have intermittent segfaults we’re looking for a root cause.

  • Some systems which implement malloc() may not release memory back to the operating system right away causing a false memory leak. This can be mitigated by using a different malloc implementation. Tcmalloc and jemalloc are installed in the Triton container and can be used by specifying the library in LD_PRELOAD. We recommend experimenting with both tcmalloc and jemalloc to determine which one works better for your use case.

  • Auto-complete may cause an increase in server start time. To avoid a start time increase, users can provide the full model configuration and launch the server with --disable-auto-complete-config.

  • Auto-complete does not support PyTorch models due to lack of metadata in the model. It can only verify that the number of inputs and the input names matches what is specified in the model configuration. There is no model metadata about the number of outputs and datatypes. Related PyTorch bug: pytorch/pytorch#38273

  • Triton Client PIP wheels for ARM SBSA are not available from PyPI and pip will install an incorrect Jetson version of Triton Client library for Arm SBSA. The correct client wheel file can be pulled directly from the Arm SBSA SDK image and manually installed.

  • Traced models in PyTorch seem to create overflows when int8 tensor values are transformed to int32 on the GPU. Refer to pytorch/pytorch#66930 for more information.

  • Triton cannot retrieve GPU metrics with MIG-enabled GPU devices (A100 and A30).

  • Triton metrics might not work if the host machine is running a separate DCGM agent on bare-metal or in a container.

  • When cloud storage (AWS, GCS, AZURE) is used as a model repository and a model has multiple versions, Triton creates an extra local copy of the cloud model’s folder in the temporary directory, which is deleted upon server’s shutdown.

Client Libraries and Examples

Ubuntu 22.04 builds of the client libraries and examples are included in this release in the attached v2.39.0_ubuntu22.04.clients.tar.gz file. The SDK is also available for as an Ubuntu 22.04 based NGC Container. The SDK container includes the client libraries and examples, Performance Analyzer and Model Analyzer. Some components are also available in the tritonclient pip package. See Getting the Client Libraries for more information on each of these options.

For Windows, the client libraries and some examples are available in the attached tritonserver2.39.0-sdk-win.zip file.

Windows Support

Note
There is no Windows release for 23.10, the latest release is 23.09.

Jetson Jetpack Support

Note
There is no Jetpack release for 23.08, the latest release is 23.06.