Skip to main content

Protected PCIE Verifier (Version 3.x)

Note: PPCIE Verifier 3.x requires NVIDIA Attestation CLI (nvattest) 2.0 and the corresponding C++ Attestation SDK. It 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

  1. HGX system with 8 GPUs and 4 switches assigned to the single tenant
  2. python >= 3.9
  3. git installed
  4. Nvidia GPU driver installed
  5. Nvidia Switch driver installed
  6. Nvidia Fabric Manager installed
  7. NVIDIA Attestation CLI (nvattest) 2.0 must be installed — follow the NVIDIA Attestation CLI documentation (also installs the Attestation CPP SDK).

Installation

  1. Before installing PPCIE Verifier, verify nvattest is installed and on your PATH:

    nvattest version
    

    The reported version must be 2.x.x.

  2. Please elevate to Root User Privileges before installing the packages: (Note: This is necessary to set the GPU ready state)

    sudo -i
    
  3. 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

License

This repository is licensed under Apache License v2.0 except where otherwise noted.

Support

Metadata

Release files for nv-ppcie-verifier 3.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for nv-ppcie-verifier 3.0.0
File Interpreter ABI Platform
nv_ppcie_verifier-3.0.0-py3-none-any.whl Python 3 none any Details

Release files / nv_ppcie_verifier-3.0.0-py3-none-any.whl

Download URL nv_ppcie_verifier-3.0.0-py3-none-any.whl
Size 45.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
741e8d61bcf8bf10555458d2bbcf26c3f2510923302d1c23675fc6c54f3c44f4
BLAKE2b-256 checksum
How to use checksums
8837dd8508f6bdd100e7df46bddfe29bc27350c7741534288b553147d440aadf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release history Release notifications | RSS feed

This release

3.0.0 This release

1 release file

2.0.0

1 release file

1.7.3

1 release file

1.7.2

1 release file

1.7.0

1 release file

1.6.6

1 release file

1.6.5

1 release file

1.6.4

1 release file

1.6.3

1 release file

1.6.2

1 release file

1.6.1

1 release file

1.6.0

1 release file

1.5.0

1 release file

1.4.0

1 release file

1.3.0

1 release file

1.1.3

1 release file

1.1.2

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page