Protected PCIE Verifier (1.x version)
Project description
Protected PCIE Verifier (Version 1.x)
Note: PPCIE Verifier version 1.x is deprecated and only supports the Python SDK. For the latest version 2.x with enhanced features, see PPCIE Verifier SDK CPP.
Introduction
In a multi-GPU confidential computing (CC) setup, NVLink interconnects and NVSwitches are used for GPU to GPU data traffic. NVLink interconnects and NVSwitches are outside the trust boundary and thus should not allow access to plain-text data. All data that flows over NVLink must be encrypted prior to transfer and decrypted at the destination GPU. On the GPU encryption and decryption is performed by the GPU copy engine (CE).
Bouncing through a CE adds constraints and latency to the data path which may result in performance drops for some workloads. To minimize performance impact, NVIDIA's 'PPCIE' mode adjusts the security model to trust NVLink data, enabling plain-text traffic without CEs while preserving a Confidential Virtual Machine.
Note: There are only two supported GPU usage configurations:
- ALL GPUs are in CC mode. Each GPU can be assigned to one Confidential VM. In this scenario, use the CC verifier.
- ALL GPUs are in PPCIe mode. All GPUs must be assigned one Confidential VM. In this scenario, use the PPCIE verifier
Quick Start Guide
Prerequisites
- HGX system with 8 GPUs and 4 switches assigned to the single tenant
- python >= 3.9
- git installed
- Nvidia GPU driver installed
- Nvidia Switch driver installed
- Nvidia Fabric Manager installed
Installation
-
Please elevate to Root User Privileges before installing the packages: (Note: This is necessary to set the GPU ready state)
sudo -i -
Create a new virtual environment and install PPCIE Verifier from PyPi repository
python3 -m venv venv source venv/bin/activate # This installs version 1.x pip3 install "nv-ppcie-verifier>=1.0,<2.0"
Usage and Examples
- For advanced options and usage details, see the PPCIE Quick Start Guide.
- For a complete end-to-end PPCIE attestation example, see the Hopper Multi-GPU (PPCIE) Attestation Example.
License
This repository is licensed under Apache License v2.0 except where otherwise noted.
Support
- For issues or questions, please file a bug.
- For additional support, contact us at attestation-support@nvidia.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nv_ppcie_verifier-1.7.0-py3-none-any.whl.
File metadata
- Download URL: nv_ppcie_verifier-1.7.0-py3-none-any.whl
- Upload date:
- Size: 44.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08104acbb05a30e56a5ba1bf3c52d1f8a5a67d3abfab1bfa205c8c7b6ff9514e
|
|
| MD5 |
56290ac34c502f09ce8f1407eb74c4f3
|
|
| BLAKE2b-256 |
5dd0e350eac0339ee66b74f83e68f8e107570b4a92cb450558992a2343f41f83
|