S3053- See the Big Picture Doug Traill, NVIDIA dtraill@nvidia.com
Scalable Visualization Solutions (SVS)
Scalable Visualization Solutions (SVS) MOSAIC Quadro Sync
Three things I want you to learn MOSAIC with Sync NVIDIA Quadro K5000 + Quadro Sync NV-WMI How to control NVIDIA control panel remotely Quadro Sync in a cluster
Quadro Features for Display Walls Custom Resolutions MOSAIC Stereo 10bit Color ManageEDID GTF, DMT, CVT, CVT-RB + Custom Timings Seamless Desktop across multiple GPUs Active Stereo support OpenGL/DirectX Passive or Dual Pipe Stereo Support for High Dynamic range displays Capture + Read EDID from file Premium MOSAIC Overlap Support to match projector edge-blending Stereo support Warp + Blend Ultra High resolution Desktop 16K by 16K HDMI 1.4a 4K resolution support Stereo support 3D Vision Pro Active stereo glasses GPU Direct for Video Picture in Picture External or Internal Sync Quadro Sync supports: Genlock TTL sync Internal sync Warp + Intensity API NV-WARP Auto-calibration Vertical Sync Syncs graphics swap-buffer to Projector refresh NVAPI + NV-WMI Programmatic Interface to NVIDIA driver
Windows on its own Independent Desktops
Windows on its own Independent Desktops
Windows on its own Independent Desktops
With MOSAIC One large Desktop
With MOSAIC One large Desktop
Mosaic Features Scale with Quadro and NVS Solutions Key Features Easy Configuration Unified Desktop (up to 8 display devices*) Application Spanning Taskbar Spanning Bezel Correction Windows 7/8 + Linux Support * All displays require matching timings and resolution
MOSAIC with Sync (Premium Mosaic) Featuresith Additional Premium Features Unified Desktop (Up to 16 Displays*) Seamless Display Projector Overlap Stereo Support Quadro Sync Support Linux and Windows Vista, XP and 7/8 Support API Support for Warp + Intensity Correction Quadro K5000 with Quadro Sync Single or SLI: Quadro K5000, 5000, 6000
NV-WARP Warp + Intensity API Image courtesy of Joachim Tesch - Max Planck Institute for Biological Cybernetics SDK Available to Registered Developers 3rd party applications Full Auto-calibration system Premium MOSAIC support Win 7 only Sample SDK Three function calls NVAPI Win7/8 + Linuxnew
Mosaic with Sync - Compatible cards Number of Synchronized displays/projectors from a single system with MOSAIC GPU Options Up to 2 Up to 4 Up to 8 Up to 12 Up to 16 K5000 1 GPU 1 GPU SLI (2GPUs) or 2GPUs + Quadro Sync Q5000 1 GPU SLI (2GPUs) 3GPUs + Quadro Sync 4GPUs + Quadro Sync Q6000 1 GPU SLI (2GPUs) Quadro Plex 7000 1 System 1 System 2 Systems + DHIC Seamless, Tear-Free Displays Projector Overlap Warp & Blend Engine Active and Passive Stereo Support Windows 7 & Linux XP support limited to 2 displays per GPU
Certified Platforms for Dual QUADRO K5000/5000/6000 Premium MOSAIC Z800 Dual Quadro5000/6000 Z820 / Z620 Dual Quadro K5000 T7500 Dual Quadro5000/6000 T7600/T5600/T3600 Dual Quadro K5000 D20/C20 Dual Quadro5000/6000 D30/C30 Dual Quadro K5000 Fujitsu R670/R570 Dual Quadro5000/6000 R920 Dual Quadro K5000 http://www.nvidia.com/object/quadro_sli_compatible_systems.html
Quadro Sync Synchronize up to 4 Quadro Kepler GPUs and up to 16 displays or projectors per system Enable Advanced Quadro Mosaic on up to 16 displays or projectors in any system Windows Management Instrumentation (WMI) configuration and management for Windows based visualization clusters* *R319 Display Driver required
Systems that Support 4 K5000s + Sync Cubix Expander Elite Four Quadro K5000 + Sync in Expansion chassis 3DBoxx - 8950 Four Quadro K5000 + Sync 7047GR-TPRF Four Quadro K5000 + Sync Spectrum TXR410-512R Four Quadro K5000 + Sync Workstartion ProViz W60 Four Quadro K5000 + Sync
Synchronization - Focus on the image and not the artifacts
Why Sync is important Bezel s hide sync issues!!! Image from gizmodo.com
Differences between Premium Mosaic + Mosaic Frame Synchronization Vertical Sync to a common timing - without a physical connection between cards there is no method for having a common sync Effect is tearing Stereo Without frame sync there is no method for sync left/right eye between GPUS Overlap Without frame sync tearing would be most noticeable in a blend region. We disable this feature so tearing is not shown.
No Frame Sync t0 t0 t0+t1 t0+t1 GPU 0 - Display 0 GPU - Display 1 GPU 0 - Display 0 GPU - Display 1 t0 t0 + t1 Vertical Sync is the pulse that indicates the start of the display refresh. To avoid tearing on a single screen the application swap buffers are synced to vertical sync. Although all four displays may have the same refresh rate vertical sync start between 2 GPUs will be different. This can result in tearing between displays.
Frame Sync on Mosaic with Sync t0 t0 t0 t0 GPU 0 - Display 0 GPU - Display 1 GPU 0 - Display 0 GPU - Display 1 t0 t0 Framelock provides a common sync signal between graphics cards to insure the vertical sync pulse starts at a common start. This is commonly referred to as Frame Synchronization On SLI workstation - Framelock signal is provided across the SLI Bridge. Between Dual Quadro Plex s framelock signal is provided over the CAT5 cable On K5000 with Quadro Sync framelock signal is provided by the Quadro Sync
Frame Sync on Mosaic with Sync t0 t0 t0 t0 GPU 0 - Display 0 GPU - Display 1 GPU 0 - Display 0 GPU - Display 1 t0 t0 Framelock provides a common sync signal between graphics cards to insure the vertical sync pulse starts at a common start. This is commonly referred to as Frame Synchronization On SLI workstation - Framelock signal is provided across the SLI Bridge. All 3 examples there is a physical connection between the GPUs. Between Dual Quadro Plex s framelock signal is provided over the CAT5 cable On K5000 with Quadro Sync framelock signal is provided by the Quadro Sync
Let the OS manage multiple displays GPU 0 GPU 1 GPU 2 GPU 3 App
Let the OS manage multiple displays GPU 0 GPU 1 GPU 2 GPU 3 App All rendering occurs on one GPU 0
Let the OS manage multiple displays GPU 0 GPU 1 GPU 2 GPU 3 App Pixels are copied across PCIe bus All rendering occurs on one GPU 0
Application with GPU Affinity Displays GPU GPU Quadro Sync Quadro Sync needed for framelock GPU Affinity GPU Affinity Needs be programmed using GPU Affinity (nvidia extensions) for Max performance Application needs to be multi-threaded (4 Draw threads) App Application should use NV swap groups to sync swap buffer between GPUs
MOSAIC hides the complexity Logical GPU App
What does Sync do Synchronize Multiple Displays Co-ordinate Buffer Swaps Align the scan out of multiple displays, GPU s, and systems Maintain Stereo alignment between multiple systems HW based swap synchronization within a node or between clusters Prevent tearing and image misalignment Synchronize to an internal or external timing source
MOSAIC - Setup and configuration
Setting up MOSAIC Control Panel Configuremosaic NVWMI NVAPI Best for up to 4 displays Large display walls Setup from a remote machine Powershell scripts Program directly Incorporate MOSAIC setup into your own application Driver Install Download from NVIDIA driver section Install with Driver under advanced options Registered Developer for NDA access NVAPI
4K Displays + MOSAIC Prosumer Professional LG 4K 84 TV (Single HDMI input) Christie 4K 84 panel (four HDMI input) Sony 4K SXRD VPL GT-100 (Dual DP inputs) 24Hz/30Hz 60Hz
What is 4K? 4096 3840 4K 2160 Ultra High Def 2160 (UHD) Video Bandwidth ~567MHz @ 60Hz Video Bandwidth ~533MHz @ 60Hz Video Connection Bandwidth SL-DVI = 165MHz DL-DVI = 330MHz DP1.1 ~330MHz HDMI* ~340 MHz DP1.2** (K5000) ~540MHz * HDMI 1.4 supports 4k/UHDTV at 24 & 30 Hz for single cable ** DP1.2 can drive 4K but implementation will vary per Graphics card.
Driving 4K single connection Scale Resolution Single input at 1920x1080 @60Hz Scaled to 3840x2160@60Hz Scale Refresh rate HDMI 1.4a 3840x2160@30Hz Display will scale to 60Hz or 120 Hz refresh Disadvantage for Computer graphics is latency/lag There are no DP1.2 capable 4K displays yet!! Each image is repeated 4 times
Driving 4K multiple connections Quadrants 4 DVI or HDMI/DP Each input is 4K 2048 x 1080@60Hz UHD 1920x1080@60Hz Stripes 4 DVI or HDMI/DP Each input is 4k - 1024x2160@60Hz UHD 960x2160@60Hz Side by side 2 DL-DVI/DP Each input is 4k 2048x2160@60Hz UHD -1920x2160@60Hz Display Port can support higher color depth desktop
Quadro K5000 Display Out 4 Display Connectors 4 Displays* 2 DVI-DL, 2 DP 1.2 Only one VGA output on DVI DP 1.2 support High Bit Rate 2 (HBR2) and Multi-Stream Total of 4 independent heads High Bit Rate 2 -> 3840x2160 30bit @ 60Hz on a single connector Stereo through an optional Stereo Bracket same as Quadro 4000 * Win XP limited to 2 displays
K5000 Supported Outputs DP to DVI dongle DP to DVI dongle DP to HDMI dongle DP to HDMI dongle DP DP DP to VGA dongle DP to VGA dongle Native DVI DVI to HDMI DVI-I Native DVI DVI to HDMI Native DVI Up to 4 Single link or Dual Link* DVI 4 HDMI DVI to HDMI adaptor 2 Display Port displays or 4 Display Ports using MST**. 3 VGA ports DP to HDMI adaptor Dual link requires active dongle for DP connectors **MST allows for DP to be daisy-chained. Support 4 displays per card
NVIDIA Control Panel Order in which commands are applied can matter (1) Manage 3D Settings Profile Stereo Vsync etc (2) Set Resolution (3) Set MOSAIC and/or Synchronization
New MOSAIC interface Beta Preview -R313 Select Number of displays Select Topology Set Rotation Bypass Wizard and apply MOSAIC (Broken in R313 will be fixed in R319) For next page
New MOSAIC interface Beta Preview -R313 1. Select the Displays you want to use 2. Select the resolution 3. Select the refresh rate Note: Refresh rate will change if you change the resolution
New MOSAIC interface Beta Preview -R313 Drag displays into topology window Match On Screen Identifier with display (OSDs are currently arbitrary) Next if you want to set Overlap or Bezel
New MOSAIC interface Beta Preview -R313 Select which edge you want Select Bezel or Overlap
New MOSAIC interface Beta Preview -R313 Beta - works best for single GPUs setups i.e 4 Displays OSD is currently arbitrary creates some weird layouts for large topologies Currently in Beta we are looking for feedback - quadrosvs@nvidia.com
Configure Mosaic
Understanding Topologies MOSAIC uses Grid Topology Grid is numbered by TOP ROW left to right 1 columns 5 2 3 4 6 7 8 1 2 rows 9 columns 13 10 11 12 14 15 16 3 4 columns columns
Port numbers QuadroPlex 7000 GPU 1 1 0 GPU 0 1 0 Amber LED appears at POST GPU 0 1 0 GPU 1 1 0 Amber LED indicates the primary GPU (0) Right hand port = is the primary port (0) We can describe each port by (GPU,Port) number
Relating Ports to Grid 1,1 0,1 1,0 0,0 1 2 0,0 0,1 1,0 1,1 3 4 configuremosaic.exe set rows=2 cols=2 configuremosaic.exe set rows=2 cols=2 out=0,0 out=0,1 out=1,0 out=1,1 1 2 3 4
Relating Ports to Grid single GPU configuremosaic.exe set rows=2 cols=2 configuremosaic.exe set rows=2 cols=2 out=0,0 out=0,1 out=0,2 out=0,3
Relating Ports to Grid 1 2 3 4 0,0 0,1 0,2 0,3 configuremosaic.exe set rows=1 cols=4 res=1024,2160,60 configuremosaic.exe set rows=1 cols=4 out=0,0 out=0,1 out=0,2 out=0,3
Relating Ports to Grid 1 2 0,0 0,1 Note: Ports are dynamically number if only using DVI ports will be as shown configuremosaic.exe set rows=1 cols=2 res=2048,2160,60 configuremosaic.exe set rows=1 cols=2 out=0,0 out=0,1 1 2
Reordering displays 0,3 1 2 Input 4 Input 2 0,1 3 4 Input 3 0,2 Input 1 0,0 Some 4K displays will only work if its primary input is active Primary input may be bottom left. 1 2 3 4 configuremosaic.exe set rows=2 cols=2 out=0,3 out=0,1 out=0,2 out=0,0
3x3 Layout 3 K5000s with Quadro Sync
Boxx Technologies 8950 Workstation Example workstation 4 PCIe Gen 3 slots Supports 4 K5000s with Quadro Sync
3 K5000 configuration PCIe bus order will determine GPU numbering VESA stereo header connected to VESA bracket Slot 2 Slot 4 Slot 6 GPU 0 GPU 1 GPU 2 Quadro Sync card power Slot 8 Quadro Sync card Up to 4 GPUs sync cables
PCIe bus enumeration CPU1 PE2 Slot 8 GPU2 CPU1 PE3 Slot 6 GPU1 CPU0 PE3 Slot 4 CPU0 PE2 Slot 2 GPU0 3 GPU Example Quadro Sync card slot is not important.
PCIe bus enumeration GPU2 GPU3 CPU1 PE2 Slot 8 CPU1 PE3 Slot 6 GPU1 CPU0 PE3 Slot 4 CPU0 PE2 Slot 2 GPU0 4 GPU Example note GPU # doesn t follow slot number Quadro Sync card slot is not important. Layout will vary based on motherboard
Rear panel GPU 0 Slot 2 GPU 1 Slot 4 GPU 2 Slot 6 Slot 8 VESA Stereo Bracket Quadro Sync
Port Numbering GPU 0 GPU 1 GPU 2 VESA Stereo Bracket C C C B B B D A D A D A Ports auto enumerate depending what is attached i.e. A + D are attached A = 0,0 D = 0,1 A + B + D are attached A = 1,0 B = 1,1 D = 1,2 A + B + C + D are attached A = 2,0 B = 2,1 C = 2,2 D = 2,3 Quadro Sync
Relating Ports to Grid 0,0 0,1 0,2 1 2 3 1,0 1,1 1,2 4 5 6 2,0 2,1 2,2 7 8 9 configuremosaic.exe set rows=3 cols=3 configuremosaic.exe set rows=3 cols=3 out=0,0 out=0,1 out=0,2 out=1,0 out=1,1 out=1,2 out=2,0 out=2,1 out=2,2 1 2 3 4 5 6 7 8 9
4 GPU Example GPU 0 C B D A GPU 1 C B D A GPU 3 C B D A GPU 2 C B D A VESA Stereo Bracket Quadro Sync
4 GPU Example GPU 0 C B D A GPU 1 C B D A GPU 3 C B D A GPU 2 C B D A VESA Stereo Bracket Quadro Sync Windows Display Properties can only identify 10 unique displays
4 GPU Example GPU 0 C B D A A B C D GPU 1 GPU 3 C C B B D A D A A B C D GPU 2 VESA Stereo Bracket C B D A A B C D Quadro Sync A B C D Windows Display Properties can only identify 10 unique displays
University of South Florida - Tampa
MOSAIC limits Max horizontal or vertical pixels - 16384 (16k) 1 row 8 cols 1920 Total resolution = 15360x1080 9 cols 1 row 1920 Total resolution = 17280x1080 exceeds mosaic limit.
Right Eye Left Eye Passive Stereo L R L 3D Settings 1 2 Left Eye Right Eye 1 1 1 2 0,0 0,1 0,0 0,3 0,3 0,2 1x2 Grid configuremosaic.exe set rows=1 cols=2 passivestereo 2 0,1 2 0,2 2x1 Grid configuremosaic.exe set rows=2 cols=1 passivestereo
MOSAIC + 1 Single GPU (R319) MOSAIC Group +1 Control Monitor Spare ports are only available for +1 when MOSAIC does not cross GPUs
MOSAIC + 1 Single GPU (R319) MOSAIC Group +1 Control Monitor Spare ports are only available for +1 when MOSAIC does not cross GPUs
MOSAIC across multiple GPUs + 1 MOSAIC Group K600 X X X
MOSAIC across multiple GPUs + 1 MOSAIC Group K600 X X X
2 Channel Overlap 180 pixel overlap configuremosaic.exe set rows=1 cols=2 overlap=180,0
Blending 4K Projectors 0 pixel overlap 180 pixel overlap 0 pixel overlap configuremosaic.exe set rows=2 cols=4 overlapcol=0,180,0
Portrait Mode Win 7/8 only 1 2 3 4 0,0 0,1 0,2 0,4 Valid Rotate values 90 180 270 configuremosaic set rows=1 cols=4 rotate=90
WMI Windows Management Infrastructure Install under Custom (Advanced) in installer
Where to start Programmers guide - http://msdn.microsoft.com/en-us/library/aa393964%28v=vs.85%29.aspx
Connecting to WMI on remote Computer Enables remote control of NVIDIA driver Includes MOSAIC + Quadro Sync http://msdn.microsoft.com/en-us/library/aa389290(v=vs.85).aspx
wmic command line wmic /user:username /password:passwd /node:10.0.1.131 /namespace:nv path Display get ordinal,id,uname remote access commands Nvidia driver Getting properties associated With the display Gives this result id ordinal uname -2147086206 1 Alienware2310 (1 of 4) -2113531774 2 Alienware2310 (2 of 4) -2079977342 3 Alienware2310 (3 of 4) -2046422910 4 Alienware2310 (4 of 4) 1 2-2147086206 - 2113531774-2079977342 - 2046422910 3 4 Display id - 4 monitors attached
Enable MOSAIC wmic /user:username /password:passwd /node:10.0.1.131 /namespace:nv path DisplayManager call createdisplaygridbyid cols=2 rows=2 displayids=(-2147086206,-2113531774,-2079977342, -2046422910) 1 2 3 4 Class Creating a 2x2 grid Display ids we are passing to be part of the grid 1 2-2147086206 - 2113531774-2079977342 - 2046422910 3 4
Change Resolution wmic /user:username /password:passwd /node:10.0.1.131 /namespace:nv path DisplayGrid where id=0 call setdisplaymode width=1280 height=1024 refreshrate=60 depth 32 Class I only have one grid setup id=0 Setting 1280x1024@60Hz to each display in the Grid
Set Overlap wmic /user:username /password:passwd /node:10.0.1.131 /namespace:nv path DisplayGrid where id=0 call setoverlaps index=1 overlaprow=100 OverlapCol=280 Setting an overlap values and applying to Grid 0
MOSAIC Performance Enhancements Multi-GPUs (does not work on single GPU) Pixel Fill limited apps MOSAIC uses a lot of fill 30 Pixel Fill = Screen size larger screen more fill 60 #mosaic If you shrink the window and performance improves the app is fill limited
MOSAIC Performance Enhancements Scissor clip function Best for full screen apps If you drag windows around you will see distortion. To enable enable_mosaic_clip_to_subdev.exe To disable disable_mosaic_clip_to_subdev.exe Improves fill performance on MOSAIC Performance Gain will vary by Application email: QuadroSVS@nvidia.com R295 Refresh 1
Video Display Controllers Features Dual link DVI or DP input 2 or more DVI outputs 330 MHz video bandwidth Each output up to 165 MHz Examples CYVIZ XPO.3 DataPath X4 Pixell VP-4xx Planar Quad Controller Black Diamond Video DVI splitter Matrox Triple head to Go Etc 1:1 pixel mapping of input to output
Video Controller versus DP Multi-Stream hub Video Controller Splits a high resolution video signal across multiple displays Single K5000 could have 4 controllers each splitting 4 ways to give a total of 16 displays Display Port Multi-Stream hub Video signal for 4 monitors is carried by one Display Port cable Multi-Stream hub routes signal to 4 separate displays Max displays from a single K5000 using MST is 4!!
16 BARCO Projection cubes 4x4 BARCO Projection cubes Dual Quadro Plex 7000 Linux running Premium MOASIC Each output runs two cubes 1920x2160@60Hz CUBE splits signal across two displays at 1920x1080 For Stereo 3D input is frame doubled to 120Hz Image courtesy of AVI-SPL
16 BARCO Projection cubes 4x4 BARCO Projection cubes Dual Quadro Plex 7000 Linux running Premium MOASIC Each output runs two cubes 1920x2160@60Hz CUBE splits signal across two displays at 1920x1080 For Stereo 3D input is frame doubled to 120Hz 1 2 3 4 5 6 7 8 Image courtesy of AVI-SPL
16 BARCO Projection cubes 4x4 BARCO Projection cubes Dual Quadro Plex 7000 Linux running Premium MOASIC Each output runs two cubes 1920x2160@60Hz CUBE splits signal across two displays at 1920x1080 For Stereo 3D input is frame doubled to 120Hz 1 2 3 4 5 6 7 8 Image courtesy of AVI-SPL
4x4 1920x1080@60Hz 1920x2160@60Hz 7680 6480 16 1366x768@60 Displays configuremosaic set rows=2 cols=4 res=1920,2160,60
Using Linux #Configure MOSAIC layout nvidia-xconfig --sli=mosaic --metamodes= "GPU-0.DFP-0: 1920x2160+0+0, GPU-0.DFP-1: 1920x2160+1920+0, GPU-1.DFP-0: 1920x2160+3840+0, GPU-1.DFP-1: 1920x2160+5760+0, GPU-2.DFP-0: 1920x2160+0+2160, GPU-2.DFP-1: 1920x2160+1920+2160, GPU-3.DFP-0: 1920x2160+3840+2160, GPU-3.DFP-1: 1920x2160+5760+2160 #Turn off composite Desktop - this affects stereo + gsync. nvidia-xconfig -no-composite #Set stereo mode. On board DIN =3; nvidia-xconfig -stereo=3 #Turn off twinview xinerman info - this creates a large desktop. nvidia-xconfig --no-twinview-xinerama-info
Immersive VR versus MOSAIC MOSAIC 1 Field of VIEW (FOV) Immersive VR Up to 6 FOV each offset by an angle Stereo + tracking creates immersive effect
Quadro Sync/GSync II Hardware + Software Sync Hardware RJ45 Framelock for synchronization of multiple displays to a common internal sync BNC/Genlock - Framelock for synchronization of multiple displays to a common external house sync Software Requires application to be written with extensions Swap Group and Swap Barrier are OpenGL & DirectX Extensions that provide enhanced synchronization of the graphics swap buffer. Quadro Sync G-Sync II
Vertical Sync t0 t0 + t1 t0 + t2 Display 1 Display 2 Display 3 t0 t0 + t1 t0 + t2 Vertical Sync is the pulse that indicates the start of the display refresh. To avoid tearing on a single screen the application swap buffers are synced to vertical sync. Although all three displays may have the same refresh rate vertical sync start may be different. This can result in tearing between displays.
Framelock/Genlock t0 t0 t0 Display 1 Display 2 Display 3 Framelock/Genlock provides a common sync signal between graphics cards to insure the vertical sync pulse starts at a common start. This is commonly referred to as Frame Synchronization Framelock Synchronization is generated from a master node. All other nodes would be sync to this. Genlock synchronization is from an external sync generator (house sync). Each node attached to the genlock signal is synced from that signal. Framelock & Genlock can be mixed in the cluster. With the master node being synchronized from the genlock pulse
Swapbuffers Mono OpenGL applications have two buffers Back Front The application will render into one buffer while the pixels are read to the screen from the other buffer. Once the render process is complete the buffers swap. i.e Front render Back read to screen swap Back render Front - read to screen.
Swapbuffers Swap between the two buffers will occur: On the first vertical sync after the Render process completes For example at 60Hz refresh rate we have 16.67 ms to complete the render of a frame If render time = 10ms frame rate will be 60 fps (we swap on vertical sync) If render time = 17 ms frame rate will be 30 fps (we swap on the next vertical sync).
Swapbuffers in a cluster Node 1 Node 2 Node 3 Node 4 Each node is now rendering a scene with different complexity i.e from least to highest we get: 1. node 3 ~ 16ms = 60fps 2. node 4 ~ 36ms = 30fps 3. node 2 ~ 53ms = 15fps 4. node 1 ~ 99ms = 10fps With each node running at a different rate the user would perceive tearing on the screen. We need a mechanism to ensure that each node will swap at the same time.
Swap Group and Swap Barrier Nvidia Extensions to OpenGL /DirectX (via NVAPI) Swap Group provides synchronization multiple GPUs in a single host Swap Barrier provides synchronization of GPUs across multiple nodes. Use RJ45 (framelock) connection on Quadro Sync so faster than sync over a network Node 1 Node 2 Node 3 Node 4 With Swap Barrier each node will wait until all nodes have completed their render 1. node 3 ~ 16ms = 10fps 2. node 4 ~ 36ms = 10fps 3. node 2 ~ 53ms = 10fps 4. node 1 ~ 99ms = 10fps
New Quadro Sync features Increased Swap Barrier Support Up to 25 Quadro Sync cards in single chain. 50 Quadro Sync cards in a cluster 4 GPUs per Quadro Sync 200 GPUs with Swap Barrier Support Sync Delay and Skew settings Ability to adjust sync delay per Quadro card. Control via NVAPI R313 public developer version Example code on how to control Quadro Sync (works with GSyncII) Control via NVSMI (R319) Will allow remote access control across a cluster
Card LEDs while booting
Wiring Connect the nodes with quality CAT 5 cables, no longer than they need to be Put the timing server in the middle This system should have the stereo connector for active stereo if needed
External Sync 3 Formats of Sync Sources TTL: 3.3V, 50% duty cycle, high impedance Bi-Level Composite (NTSC/PAL): 75Ω, ±300mV Tri-Level Composite (HDTV): 75Ω, ±300mV Grass Valley ADVC G4 (bi/tri level) <= 60Hz TTL Bi-Level Tri-Level Agilent 3350B (TTL, bi/tri level) variable
Checking Sync Status LEDs on the board Frame Lock Sync & Stereo Phase per GPU (not display) House/External Sync Solid Green Present Frame Lock connectors Amber Output Green Input Control Panel System Topology Viewer provides per display sync information
MOSAIC works best If you have multiple Projectors per wall run MOSAIC per wall 4 outputs Center Wall
Multiple MOSAICs in development Left Wall Center Wall Right Wall Floor One GPU per wall running MOSAIC with Quadro Sync.
Three things I want you to learn MOSAIC with Sync NVIDIA Quadro K5000 + Quadro Sync NV-WMI How to control NVIDIA control panel remotely Quadro Sync in a cluster
To learn more or if you have questions contact us at: QuadroSVS@nvidia.com