언리얼 엔진에서 SMPTE 2110 구성하기
이 페이지에는 언리얼 엔진에서 Nvidia Rivermax를 사용하여 SMPTE 2110을 구성하고 디플로이하기 위해 알아야 할 모든 내용이 나와 있습니다. 이 가이드는 방송 및 영화 산업을 포함하여, 고대역폭 SMPTE 2110 함수 기능이 필요한 사용자를 대상으로 합니다.
전제 조건
다음은 NVidia Rivermax를 사용하여 SMPTE 2110을 통합하기 위한 하드웨어 및 라이선스 요구 사항입니다.
하드웨어
Rivermax는 NVIDIA에서 개발한 SDK로, Mellanox Connect-X 네트워크 카드와 함께 작동합니다.
다른 2110 제작사도 있지만, 퍼블리시 시점의 언리얼 엔진 5.4 SMPTE 2110 기능을 사용하려면 특별히 NVIDIA Rivermax가 필요합니다.
지원되는 네트워크 카드
LED 월을 구동하려면 정밀 시간 프로토콜(Precision Time Protocol, PTP) 정확도를 제공하는 Bluefield가 필요합니다. 아래 목록에 언리얼 엔진에서 현재 지원되는 네트워크 카드(NIC)에 대한 설명이 나와 있습니다.
| 네트워크 카드(NIC) | 정보 |
|---|---|
Connect-X 6 BlueField-2 | Windows 시스템에서 PTP(정밀 시간 프로토콜) 정확도를 제공하므로 이 지원 NIC 제품군을 권장합니다. LED 월을 구동하는 경우 PTP가 필요합니다. |
Connect-X 6 | 이 NIC 제품군은 지원되지만 Windows 시스템에서 PTP 정확도를 제공하지 않기 때문에 제한적으로 사용됩니다. |
Connect-X 5 | 이 NIC 제품군은 Rivermax SDK에서 지원되지만 신규 설치에는 권장하지 않습니다. |
자세한 내용은 NVIDIA 웹사이트를 참조하세요. 이 사이트를 보려면 NVIDIA 계정이 필요합니다.
GPUDirect 기능은 4000 클래스 이상의 전문가용 GPU에서만 지원되며, Ampere 아키텍처 또는 향후 아키텍처 세대(예: RTX 6000 Ada, RTX 5000 Ada, RTX 4500 Ada 또는 RTX 4000 Ada)가 필요합니다. GPUDirect를 지원하는 전체 GPU 목록은 NVIDIA 웹사이트를 참조하세요.
또한 크기조절 가능한 바 옵션을 지원하는 마더보드가 필요하며, 이를 위해서는 BIOS 펌웨어 업데이트가 필요할 수 있습니다.
소프트웨어
언리얼 엔진에서 Rivermax를 사용하려면 NVIDIA Rivermax 웹사이트에 있는 디플로이 가이드, Windows DPU 배포(Windows DPU Deployment)(버전 2.51)의 지침을 따르시기 바랍니다.
Bluefield-2 카드는 2025년 8월 기준으로 점진적으로 사용이 중단되고 있으며, 곧 서비스가 종료될 예정입니다.
Bluefield3 카드는 Rivermax 버전 1.41.11 및 1.60.6(UE 5.5 및 5.6부터 시작)에서 작동합니다. 그러나 다른 버전의 DPU 배포 스크립트가 필요하며, 새 펌웨어는 Bluefield Bootstream(BFB) 파일을 사용하여 DPU 스크립트와 함께 자동으로 설치됩니다.
Bluefield 2
| 언리얼 엔진 버전 | Rivermax SDK 버전 | WinOF-2 버전 | DPU 버전 | BlueField-2 펌웨어 버전 |
|---|---|---|---|---|
5.3 | 1.20.10 | 3.10.52010 | 2.21 | 24.35.1012 |
5.4 | 1.41.11 | 24.1.50000 | 2.51 | 24.40.1000 |
5.5 | 1.41.11 | 24.1.50000 | 2.51 | 24.40.1000 |
Bluefield 3
| 언리얼 엔진 버전 | Rivermax SDK 버전 | WinOF-2 버전 | DPU 스크립트 버전 |
|---|---|---|---|
5.5 | 1.41.11 | 25.4.50020 | 3.0.0 |
Rivermax SDK 설치 경로
RIvermax SDK의 디폴트 설치 경로는 'C:\Program Files\Mellanox\Rivermax\lib'입니다.
언리얼 엔진 5.4 이상에서는 디폴트 경로를 사용하는 것 외에도 환경 변수 $RIVERMAX_PATH를 사용하여 Rivermax SDK의 설치 경로를 지정할 수 있습니다.
라이선스
언리얼 엔진에서 NVIDIA의 Rivermax SDK를 사용하려면 라이선스가 필요합니다. 라이선스를 받으려면 NVIDIA에 문의하세요.
기본적으로 시스템에서 예상하는 라이선스의 위치는 DLL 옆입니다. 환경 변수 $RIVERMAX_LICENSE_PATH를 사용하여 라이선스를 찾을 다른 위치(예: 네트워크 드라이브)를 지정할 수 있습니다.
디플로이 단계
다음 디플로이 단계는 공식 NVIDIA 문서에 따른 것입니다.
NIC 옵션
Connect-X 6
Connect-X 6 디플로이를 위해서는 다음 단계로 넘어가기 전에 WinOF2 드라이버 및 NVIDIA의 펌웨어 툴을 설치해야 합니다.
운영 체제에 맞는 Mellanox MLNX WinOF2 드라이버를 설치합니다.
NVIDIA의 펌웨어 툴을 설치하여 NIC의 펌웨어를 업데이트합니다.
시스템을 리부팅합니다.
Connect-X 6 BlueField-2
Connext-X 6 네트워크 카드와 마찬가지로, BlueField-2 NIC를 디플로이하려면 WinOF2 드라이버 및 NVIDIA의 펌웨어 툴을 설치해야 합니다. 또한 PuTTY, Python, 그리고 NIC의 DPU에 설치할 디플로이 패키지도 필요합니다.
PuTTY 설치
디플로이 스크립트는 PLINK를 사용하므로 PuTTY가 필요합니다.
Python 3.10.1 설치
PATH에 Python을 추가합니다.
Mellanox MLNX WinOF-2 드라이버를 설치합니다.
NVIDIA의 펌웨어 툴을 설치합니다.
MFT 버전은 WinOF-2 다운로드 페이지의 WinOF-2 출시 노트에 명시되어 있습니다.
시스템을 리부팅합니다.
BlueField-2 카드의 관리 포트가 인터넷에 연결되어 있는지 확인합니다. 디플로이 중에 연결되어 있어야 합니다.
Rivermax BlueField-2(DPU) 패키지를 다운로드합니다.
Rivermax 시작하기로 이동하여 로그인합니다.
아카이브(Archive) 섹션으로 이동합니다.
권장되는 Rivermax SDK 버전을 찾습니다.
DPU.zip을 다운로드합니다.C:\DPU에 압축을 풉니다.
BlueField-2 BFB 이미지를 다운로드합니다. NVIDIA의 디플로이 가이드에 다운로드 링크가 나와 있습니다.
BFB 이미지를 다운로드하여
C:\DPU\BFB에 저장합니다.이러한 경로는 디플로이 스크립트에 하드 코딩되어 있습니다.
디플로이 중에 사용되는 환경설정 파일을 구성합니다.
이 파일은
C:\DPU\configuration_file.txt에 있습니다.PTP를 사용하려는 경우 PTP IP 옵션을 환경설정해야 합니다.
DPU 디플로이를 실행합니다.
관리자 명령줄에서 다음 파일을 실행합니다.
C:\DPU\DPU_Install.bat
컴퓨터의 전원을 껐다가 다시 켭니다. 리부팅만 해서는 안 됩니다.
DPU를 환경설정합니다.
관리자 명령줄에서 다음 파일을 실행합니다.
C:\DPU\configure_dpu_setting.bat
Mellanox 펌웨어 업데이트
Mellanox의 펌웨어를 최신 버전으로 업데이트합니다.
관리자 권한으로 명령 프롬프트 창을 엽니다.
mlxfwmanager.exe -u online을 실행합니다.
펌웨어 업데이트가 필요하다면 업데이트 완료 후 컴퓨터 전원을 껐다가 다시 켭니다.
BF2 카드용 PTP 구성
SSH를 통해 BF2 카드의 관리 포트에 연결해야 합니다. BF2 디플로이 중에 사용한 사용자 이름과 비밀번호가 있어야 합니다.
PTP가 작동하려면 케이블을 카드 중앙의 QSFP에 해당하는 p0 인터페이스에 연결해야 합니다.
BF2 PTP 구성의 예상 도메인은 127입니다.
명령줄 창을 사용하여 다음을 입력합니다.
명령줄
putty -ssh root@Your_BlueField_2_Managment_IP 22 -pw Your_BlueField-2_PasswordDOCA 컨테이너를 구성합니다.
명령줄 창에 다음 명령을 입력합니다.
./create_container.sh함수 기능의 유효성을 검사하려면 다음을 실행합니다.
tail -f /var/log/doca/firefly/ptp4l.log | grep -E 'ptp|phc'PTP가 발견되면 출력은 다음 이미지와 비슷하게 표시되고 사용 중인 그랜드마스터(GrandMaster)의 클럭 ID가 표시됩니다. PTP를 찾을 수 없으면 출력에 로컬 클럭을 사용 중이라는 메시지가 표시됩니다.
루트의 홈 디렉터리에서
firefly_monitor.sh를 실행하여 PTP가 예상 그랜드마스터(GrandMaster, GM)에 고정되어 있는지 확인할 수도 있습니다.firefly_monitor.sh의 출력입니다.
Rivermax 구성
Mellanox 드라이버에서 다이내믹 RTP 헤더에 대한 지원을 활성화합니다.
관리자 권한으로 명령줄에서 다음을 실행하여 환경설정하려는 디바이스를 찾습니다.
mlxconfig.exe query출력에서 다음 줄을 찾습니다.
Device: (MST_DEVICE)관리자 권한으로 명령줄에서 다음 명령을 실행하여 이 디바이스에 대한 다이내믹 헤더 지원을 활성화합니다.
mlxconfig.exe -d (MST_DEVICE) set FLEX_PARSER_PROFILE_ENABLE=4 PROG_PARSE_GRAPH=1명령을 실행하여 디바이스의 다이내믹 헤더 지원을 활성화합니다.
시스템의 전원을 껐다가 다시 켭니다.
다음과 같이 Rivermax 라이선스를 구성합니다.
기본적으로 Rivermax는 설치 디렉터리에서 라이선스 파일을 찾습니다.
예:
C:\Program Files\Mellanox\Rivermax\lib\Rivermax.lic
라이선스 파일을 가리키는 환경 변수를 사용하여 설치 디렉터리를 변경할 수 있습니다.
RIVERMAX_LICENSE_PATH
선택 사항: GPUDirect 구성
BIOS에서 크기조절 가능한 바 옵션을 활성화합니다.
최적의 퍼포먼스를 위해 네트워크 카드와 GPU를 동일한 루트 컴플렉스에 배치해야 합니다.
BAR1 가용 메모리 유효성 검사를 합니다.
Nvidia 제어 패널 - 시스템 정보를 사용하여 활성화되어 있는지 유효성 검사를 합니다.
Rivermax에서 CUDA를 사용하기 위한 새 환경 변수를 생성합니다.
RIVERMAX_ENABLE_CUDA값을 1로 설정합니다.
초기화 중에 시스템이 호환되는 GPUDirect 디바이스를 찾으면 이 지원으로 라이브러리를 초기화합니다. 그렇지 않으면 시스템 메모리 경로로 예비 전환합니다.