Protected PCIE Verifier SDK CPP
Project description
Protected PCIE Verifier (Version 2.x)
Note: PPCIE Verifier 2.x requires the CPP Attestation SDK and does NOT work with the Python Attestation SDK. See Prerequisites for installation instructions.
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
- NVIDIA Attestation CLI (
nvattest) must be installed — follow the NVIDIA Attestation CLI documentation (also installs the Attestation CPP SDK).
Installation
-
Before installing PPCIE Verifier, verify
nvattestis installed and on your PATH:nvattest version -
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 pip3 install nv-ppcie-verifier
Usage and Examples
- For advanced options and usage details, see the PPCIE Quick Start Guide.
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-2.0.0-py3-none-any.whl.
File metadata
- Download URL: nv_ppcie_verifier-2.0.0-py3-none-any.whl
- Upload date:
- Size: 68.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfe171cd862b034d78588231f31cea25138dfa150b1183b74e92a1b304419e02
|
|
| MD5 |
d9ad3a7171915c503a52d5d4964d3b8d
|
|
| BLAKE2b-256 |
7130db8f3636cd3225e95a17b2acaecee35bcc171cb0278d280c6a08e2ce38d2
|