Skip to content

Commit 5e49fa6

Browse files
authored
Merge branch 'main' into jwyman/tri-836-update-tritonclients-gprc-package-dependency-version
2 parents 6d41d33 + 8cb2b77 commit 5e49fa6

59 files changed

Lines changed: 2573 additions & 865 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,6 @@ images.
134134
- [Install Triton Inference Server without Docker containers](docs/customization_guide/build.md#building-without-docker)
135135
- [Build a custom Triton Inference Server Docker container](docs/customization_guide/compose.md)
136136
- [Build Triton Inference Server from source](docs/customization_guide/build.md#building-on-unsupported-platforms)
137-
- [Build Triton Inference Server for Windows 10](docs/customization_guide/build.md#building-for-windows-10)
138137
- Examples for deploying Triton Inference Server with Kubernetes and Helm on [GCP](deploy/gcp/README.md),
139138
[AWS](deploy/aws/README.md), and [NVIDIA FleetCommand](deploy/fleetcommand/README.md)
140139
- [Secure Deployment Considerations](docs/customization_guide/deploy.md)

TRITON_VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.69.0dev
1+
2.70.0dev

build.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@
7171
#
7272

7373
DEFAULT_TRITON_VERSION_MAP = {
74-
"release_version": "2.69.0dev",
75-
"triton_container_version": "26.05dev",
74+
"release_version": "2.70.0dev",
75+
"triton_container_version": "26.06dev",
7676
"upstream_container_version": "26.04",
7777
"ort_version": "1.24.4",
7878
"ort_openvino_version": "2026.1.0",
@@ -972,6 +972,13 @@ def create_dockerfile_buildbase_rhel(ddir, dockerfile_name, argmap):
972972
xz-devel \\
973973
zlib-devel
974974
"""
975+
if argmap["NVIDIA_BUILD_ID"] is not None:
976+
df += """
977+
ENV BUILD_NUMBER={}
978+
""".format(
979+
argmap["NVIDIA_BUILD_ID"]
980+
)
981+
975982
if os.getenv("CCACHE_REMOTE_ONLY") and os.getenv("CCACHE_REMOTE_STORAGE"):
976983
df += """
977984
RUN curl -k -s -L https://github.com/ccache/ccache/archive/refs/tags/v4.10.2.tar.gz -o /tmp/ccache.tar.gz \\
@@ -1049,6 +1056,12 @@ def create_dockerfile_buildbase(ddir, dockerfile_name, argmap):
10491056
ARG TRITON_CONTAINER_VERSION
10501057
ENV PIP_BREAK_SYSTEM_PACKAGES=1 CMAKE_POLICY_VERSION_MINIMUM=3.5
10511058
"""
1059+
if argmap["NVIDIA_BUILD_ID"] is not None:
1060+
df += """
1061+
ENV BUILD_NUMBER={}
1062+
""".format(
1063+
argmap["NVIDIA_BUILD_ID"]
1064+
)
10521065
# Install the windows- or linux-specific buildbase dependencies
10531066
if target_platform() == "windows":
10541067
df += """

docs/client_guide/in_process.rst

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
..
2-
.. Copyright 2024-2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
.. Copyright 2024-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
33
..
44
.. Redistribution and use in source and binary forms, with or without
55
.. modification, are permitted provided that the following conditions
@@ -35,11 +35,10 @@ allows Triton to be linked directly into a C/C++/java/python application. This A
3535
is called the "Triton Server API" or just "Server API" for short. The
3636
API is implemented in the Triton shared library which is built from
3737
source contained in the `core
38-
repository <https://github.com/triton-inference-server/core>`__. On Linux
39-
this library is libtritonserver.so and on Windows it is
40-
tritonserver.dll. In the Triton Docker image the shared library is
41-
found in /opt/tritonserver/lib. The header file that defines and
42-
documents the Server API is
38+
repository <https://github.com/triton-inference-server/core>`__. On Linux this
39+
library is libtritonserver.so. In the Triton Docker image the shared library is
40+
found in /opt/tritonserver/lib. The header file that defines and documents the
41+
Server API is
4342
`tritonserver.h <https://github.com/triton-inference-server/core/blob/main/include/triton/core/tritonserver.h>`__.
4443
`Java bindings for In-Process Triton Server API <../customization_guide/inprocess_java_api.html#java-bindings-for-in-process-triton-server-api>`__
4544
are built on top of `tritonserver.h` and can be used for Java applications that

docs/customization_guide/build.md

Lines changed: 11 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,6 @@ to build Triton on a platform that is not listed here.
5959

6060
* [Ubuntu 22.04, x86-64](#building-for-ubuntu-2204)
6161

62-
* [Windows 10, x86-64](#building-for-windows-10)
63-
6462
If you are developing or debugging Triton, see [Development and
6563
Incremental Builds](#development-and-incremental-builds) for information
6664
on how to perform incremental build.
@@ -261,90 +259,6 @@ For a given version of Triton you can attempt to build with
261259
non-supported versions of TensorRT but you may have build or execution
262260
issues since non-supported versions are not tested.
263261

264-
## Building for Windows 10
265-
266-
For Windows 10, build.py supports both a Docker build and a non-Docker
267-
build in a similar way as described for [Ubuntu](#building-for-ubuntu-2204). The primary
268-
difference is that the minimal/base image used as the base of
269-
Dockerfile.buildbase image can be built from the provided
270-
[Dockerfile.win10.min](https://github.com/triton-inference-server/server/blob/main/Dockerfile.win10.min)
271-
file as described in [Windows 10 "Min" Image](#windows-10-min-image). When running build.py
272-
use the --image flag to specify the tag that you assigned to this
273-
image. For example, --image=base,win10-py3-min.
274-
275-
### Windows and Docker
276-
277-
Depending on your version of Windows 10 and your version of Docker you
278-
may need to perform these additional steps before any of the following
279-
step.
280-
281-
* Set your Docker to work with "Windows containers". Right click on
282-
the whale icon in the lower-right status area and select "Switch to
283-
Windows containers".
284-
285-
### Windows 10 "Min" Image
286-
287-
The "min" container describes the base dependencies needed to perform
288-
the Windows build. The Windows min container is
289-
[Dockerfile.win10.min](https://github.com/triton-inference-server/server/blob/main/Dockerfile.win10.min).
290-
291-
Before building the min container you must download the appropriate
292-
cuDNN and TensorRT versions and place them in the same directory as
293-
Dockerfile.win10.min.
294-
295-
* For cuDNN the CUDNN_VERSION and CUDNN_ZIP arguments defined in
296-
Dockerfile.win10.min indicate the version of cuDNN that your should
297-
download from https://developer.nvidia.com/rdp/cudnn-download.
298-
299-
* For TensorRT the TENSORRT_VERSION and TENSORRT_ZIP arguments defined
300-
in Dockerfile.win10.min indicate the version of TensorRT that your
301-
should download from
302-
https://developer.nvidia.com/nvidia-tensorrt-download.
303-
304-
After downloading the zip files for cuDNN and TensorRT, you build the
305-
min container using the following command.
306-
307-
```bash
308-
$ docker build -t win10-py3-min -f Dockerfile.win10.min .
309-
```
310-
311-
### Build Triton Server
312-
313-
Triton is built using the build.py script. The build system must have
314-
Docker, Python3 (plus pip installed *docker* module) and git installed
315-
so that it can execute build.py and perform a docker build. By
316-
default, build.py does not enable any of Triton's optional features
317-
and so you must enable them explicitly. The following build.py
318-
invocation builds all features and backends available on windows.
319-
320-
```bash
321-
python build.py --cmake-dir=<path/to/repo>/build --build-dir=/tmp/citritonbuild --no-container-pull --image=base,win10-py3-min --enable-logging --enable-stats --enable-tracing --enable-gpu --endpoint=grpc --endpoint=http --repo-tag=common:<container tag> --repo-tag=core:<container tag> --repo-tag=backend:<container tag> --repo-tag=thirdparty:<container tag> --backend=ensemble --backend=tensorrt:<container tag> --backend=onnxruntime:<container tag> --backend=openvino:<container tag> --backend=python:<container tag>
322-
```
323-
324-
If you are building on *main* branch then `<container tag>` will
325-
default to "main". If you are building on a release branch then
326-
`<container tag>` will default to the branch name. For example, if you
327-
are building on the r24.12 branch, `<container tag>` will default to
328-
r24.12. Therefore, you typically do not need to provide `<container
329-
tag>` at all (nor the preceding colon). You can use a different
330-
`<container tag>` for a component to instead use the corresponding
331-
branch/tag in the build. For example, if you have a branch called
332-
"mybranch" in the
333-
[onnxruntime_backend](https://github.com/triton-inference-server/onnxruntime_backend)
334-
repo that you want to use in the build, you would specify
335-
--backend=onnxruntime:mybranch.
336-
337-
### Extract Build Artifacts
338-
339-
When build.py completes, a Docker image called *tritonserver* will
340-
contain the built Triton Server executable, libraries and other
341-
artifacts. Windows containers do not support GPU access so you likely
342-
want to extract the necessary files from the tritonserver image and
343-
run them directly on your host system. All the Triton artifacts can be
344-
found in /opt/tritonserver directory of the tritonserver image. Your
345-
host system will need to install the CUDA, cuDNN, TensorRT and other
346-
dependencies that were used for the build.
347-
348262
## Building on Unsupported Platforms
349263

350264
Building for an unsupported OS and/or hardware platform is
@@ -409,8 +323,8 @@ and cmake_build or the equivalent commands to perform a build.
409323

410324
If you are [building without Docker](#building-without-docker) use the
411325
CMake invocation steps in cmake_build to invoke CMake to set-up a
412-
build environment where you can invoke make/msbuild.exe to incremental
413-
build the Triton core, a backend, or a repository agent.
326+
build environment where you can invoke make to incremental build the Triton
327+
core, a backend, or a repository agent.
414328

415329
### Development Builds With Docker
416330

@@ -423,8 +337,7 @@ agents.
423337

424338
To perform an incremental build within the *tritonserver_buildbase*
425339
container, map your source into the container and then run the
426-
appropriate CMake and `make` (or `msbuild.exe`) steps from cmake_build
427-
within the container.
340+
appropriate CMake and `make` steps from cmake_build within the container.
428341

429342
#### Development Build of Triton Core
430343

@@ -450,10 +363,9 @@ CMakeLists.txt file and source:
450363
$ cmake <options> /server
451364
```
452365

453-
Then you can change directory into the build directory and run `make`
454-
(or `msbuild.exe`) as shown in cmake_build. As you make changes to the
455-
source on your host system, you can perform incremental builds by
456-
re-running `make` (or `msbuild.exe`).
366+
Then you can change directory into the build directory and run `make` as shown
367+
in cmake_build. As you make changes to the source on your host system, you can
368+
perform incremental builds by re-running `make`.
457369

458370
#### Development Build of Backend or Repository Agent
459371

@@ -467,10 +379,8 @@ incremental builds to test those changes. Your source code is in
467379
/home/me/tritonserver_backend. Run the *tritonserver_buildbase*
468380
container and map your TensorRT backend source directory into the
469381
container at /tensorrt_backend. Note that some backends will use
470-
Docker as part of their build, and so the host's Docker registry must
471-
be made available within the *tritonserver_buildbase* by mounting
472-
docker.sock (on Windows use
473-
-v\\.\pipe\docker_engine:\\.\pipe\docker_engine).
382+
Docker as part of their build, and so the host's Docker registry must be made
383+
available within the *tritonserver_buildbase* by mounting docker.sock.
474384

475385
```
476386
$ docker run -it --rm -v/var/run/docker.sock:/var/run/docker.sock -v/home/me/tensorrt_backend:/tensorrt_backend tritonserver_buildbase bash
@@ -487,10 +397,9 @@ CMakeLists.txt file and source:
487397
$ cmake <options> /tensorrt_backend
488398
```
489399

490-
Then you can change directory into the build directory and run `make`
491-
(or `msbuild.exe`) as shown in cmake_build. As you make changes to the
492-
source on your host system, you can perform incremental builds by
493-
re-running `make` (or `msbuild.exe`).
400+
Then you can change directory into the build directory and run `make` as shown
401+
in cmake_build. As you make changes to the source on your host system, you can
402+
perform incremental builds by re-running `make`.
494403

495404
### Building with Debug Symbols
496405

docs/customization_guide/deploy.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -279,18 +279,6 @@ Directory where cache shared libraries are found.
279279
> must be access controlled. Adding untrusted files
280280
> can lead to arbitrarty code execution.
281281
282-
##### `backend-config=<backend>,additional-dependency-dirs=<string>`
283-
284-
This is an optional Windows feature that enables Triton to search custom
285-
dependency directories when loading a specific backend. The user can input
286-
these directories as a string of semicolon-separated paths (including a
287-
trailing semicolon). These directories are programmatically prepended to
288-
the process's PATH and are removed when the backend is loaded successfully.
289-
Windows will search PATH last in its search sequence, so be cautious that
290-
no untrusted files of same name exist in a location of higher search priority
291-
(e.g., System32). It is still recommended to add backend-specific dependencies
292-
to their corresponding backend folder when possible.
293-
294282
# GRPC server options
295283
Triton Inference Server's gRPC inference handlers internally use states to manage inference requests and response queues. Each state consists of one inference request and one response queue. The response queue within a state can hold multiple response objects. These states remain allocated for reuse to optimize performance by minimizing dynamic allocations.
296284

docs/protocol/extension_parameters.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,12 @@ The following parameters are reserved for Triton's usage and should not be
4242
used as custom parameters:
4343

4444
- sequence_id
45-
- priority
46-
- timeout
4745
- sequence_start
4846
- sequence_end
47+
- priority
48+
- timeout
4949
- headers
50+
- binary_data_output
5051
- All the keys that start with `"triton_"` prefix. Some examples used today:
5152
- `"triton_enable_empty_final_response"` request parameter
5253
- `"triton_final_response"` response parameter

docs/protocol/extension_shared_memory.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ given Triton will return an error.
6464
6565
> [!NOTE]
6666
>
67-
> Shared memory is not supported on Windows. On Jetson, only system shared
68-
> memory is supported (CUDA shared memory is not).
67+
> On Jetson, only system shared memory is supported (CUDA shared memory is
68+
> not).
6969
7070
## HTTP/REST
7171

docs/user_guide/request_cancellation.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@
2828

2929
# Request Cancellation
3030

31-
Starting from r23.10, Triton supports handling request cancellation received
32-
from the gRPC client or a C API user. Long running inference requests such
33-
as for auto generative large language models may run for an indeterminate
34-
amount of time or indeterminate number of steps. Additionally clients may
35-
enqueue a large number of requests as part of a sequence or request stream
36-
and later determine the results are no longer needed. Continuing to process
37-
requests whose results are no longer required can significantly impact server
38-
resources.
31+
Triton supports handling request cancellation received from the gRPC Python
32+
client or a C API user (since r23.10), and C++ client (since r26.05).
33+
Long running inference requests such as for auto generative large language
34+
models may run for an indeterminate amount of time or indeterminate number of
35+
steps. Additionally clients may enqueue a large number of requests as part of
36+
a sequence or request stream and later determine the results are no longer
37+
needed. Continuing to process requests whose results are no longer required can
38+
significantly impact server resources.
3939

4040
## Issuing Request Cancellation
4141

@@ -51,8 +51,7 @@ about the APIs in [tritonserver.h](https://github.com/triton-inference-server/co
5151

5252
In addition, [gRPC endpoint](../customization_guide/inference_protocols.md#httprest-and-grpc-protocols) can
5353
now detect cancellation from the client and attempt to terminate request.
54-
At present, only gRPC python client supports issuing request cancellation
55-
to the server endpoint. See [request-cancellation](https://github.com/triton-inference-server/client#request-cancellation)
54+
See [request-cancellation](https://github.com/triton-inference-server/client#request-cancellation)
5655
for more details on how to issue requests from the client-side.
5756
See gRPC guide on RPC [cancellation](https://grpc.io/docs/guides/cancellation/) for
5857
finer details.

docs/user_guide/trace.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -641,8 +641,6 @@ spans are properly ended.
641641

642642
### Limitations
643643

644-
- OpenTelemetry trace mode is not supported on Windows systems.
645-
646644
- Triton supports only
647645
[OTLP/HTTP Exporter](https://opentelemetry.io/docs/specs/otlp/#otlphttp)
648646
and allows specification of only url for this exporter through

0 commit comments

Comments
 (0)