CINXE.COM

DOCA Software Framework | NVIDIA Developer

<!DOCTYPE html> <html lang='en' class='h-100'> <head> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="W4kYogILGDY1c3IrjuGNwYkXsKNQXdTnWiWfxuUucmswu9ig6b6E-rDNTwZz-qhxNkcBLYsn1YBm43qjVlCHKw" /> <meta name="csp-nonce" /> <title>DOCA Software Framework | NVIDIA Developer</title> <meta name="description" content="Create applications and services on top of NVIDIA BlueField DPUs to program future data center infrastructure."> <meta name="keywords" content="doca, doca sdk, doca software framework, dpu, data processing unit, nvidia"> <link rel="canonical" href="https://developer.nvidia.com/networking/doca"> <link rel="alternate" href="https://developer.nvidia.com/networking/doca" hreflang="x-default"> <link rel="alternate" href="https://developer.nvidia.com/networking/doca" hreflang="en-us"> <link rel="alternate" href="https://developer.nvidia.cn/networking/doca" hreflang="zh-cn"> <meta property="og:site_name" content="NVIDIA Developer"> <meta property="og:title" content="DOCA Software Framework"> <meta property="og:description" content="Accelerate application development for the NVIDIA BlueField DPU."> <meta property="og:type" content="website"> <meta property="og:image" content="https://developer.download.nvidia.com/images/doca-sdk-og-1200x630.jpg"> <meta property="og:url" content="https://developer.nvidia.com/networking/doca"> <meta name="twitter:title" content="NVIDIA DOCA Software Framework"> <meta name="twitter:description" content="With DOCA, developers can create applications and services on top of NVIDIA BlueField data processing units (DPUs) to program future data center infrastructure."> <meta name="twitter:image" content="https://developer.download.nvidia.com/images/doca-sdk-og-1200x630.jpg"> <meta name="twitter:site" content="@NVIDIA"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:creator" content="@NVIDIANetworking"> <meta property="interest" content="Networking / Communications"> <link rel="stylesheet" href="https://dirms4qsy6412.cloudfront.net/assets/application-1e91adb0e814253f53c7a621169b6daa7cc975f97befa1c8f1a2ffe493719eb1.css" media="all" /> <link rel="stylesheet" href="https://dirms4qsy6412.cloudfront.net/assets/one-trust-bea625cf16a072ce5fdb0707a19f2645daf63c05eb1a016db72773eba008fc07.css" /> <script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-document-language="true" type="text/javascript" charset="UTF-8" data-domain-script="3e2b62ff-7ae7-4ac5-87c8-d5949ecafff5"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/onetrust-overrides-v2-9d7d1399c432d702a5bf32a31067737e10c123fdbe5ffef8ae83a34cf2d680ee.js"></script> <script> function OptanonWrapper() { let event = new Event('bannerLoaded'); window.dispatchEvent(event); if (window.OnetrustActiveGroups && window.OnetrustActiveGroups.includes("C0002")) { window.DD_RUM && window.DD_RUM.init({ clientToken: 'pub0430c74fae5d2b467bcb8d48b13e5b32', applicationId: '9fc963c7-14e6-403d-bdec-ee671550bb7f', site: 'datadoghq.com', service: 'devzone', env: 'production', version: '', sessionSampleRate: 10, sessionReplaySampleRate: 5, trackUserInteractions: true, trackResources: true, trackLongTasks: true, defaultPrivacyLevel: 'mask-user-input', }); } } </script> <script> (function() { var didInit = false; function initMunchkin() { if(didInit === false) { didInit = true; Munchkin.init('156-OFN-742'); } } var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = '//munchkin.marketo.net/munchkin.js'; s.onreadystatechange = function() { if (this.readyState == 'complete' || this.readyState == 'loaded') { initMunchkin(); } }; s.onload = initMunchkin; document.getElementsByTagName('head')[0].appendChild(s); })(); </script> <meta name='typesense-host' content='typesense.svc.nvidia.com'> <meta name='typesense-key' content='uFs9XGl9BWS7af7eAIbKNQ49sJnjEfQk'> <script src="https://developer.download.nvidia.com/scripts/typesense.js"></script> <script src="https://assets.adobedtm.com/5d4962a43b79/c1061d2c5e7b/launch-191c2462b890.min.js" data-ot-ignore="true"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js" integrity="sha512-STof4xm1wgkfm7heWqFJVn58Hm3EtS31XFaagaa8VMReCXAkQnJZ+jEy8PCC/iT18dFy95WcExNHFTqLyp72eQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/bootstrap/5.1.3/bootstrap.bundle.min-51ad1d8cab4ebd9873a0429f5e67ca717a71fd96daf8025bc04a88848e5b375c.js"></script> <link rel="icon" type="image/x-icon" href="https://dirms4qsy6412.cloudfront.net/assets/favicon-81bff16cada05fcff11e5711f7e6212bdc2e0a32ee57cd640a8cf66c87a6cbe6.ico" /> </head> <body class='d-flex flex-column h-100'> <div id='header'></div> <div id='page-mobile-nav-container'></div> <div class='page'> <div class="product-page"><div class="container breadcrumb-container"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="/" id="iqr9">Home</a></li><div id="ijhkmw" class="breadcrumb-item"><a href="/networking" id="ia9yq5">Networking</a></div><div id="iyw7xk" class="breadcrumb-item active">NVIDIA DOCA</div></ol></div><div class="container page"><div class="row"><div class="col-xl-9 col-lg-9 col-md-12 col-sm-12 col-main-content"><main class="page__content"><section class="page__section page__first-section"><div class="separator separator--no-scale separator--60 d-md-block d-lg-none"></div><h1 title="Introduction" class="h--large section__heading toc-item mb-0">NVIDIA DOCA Software Framework<br></h1><h1 id="if9xw5" class="h--smallest">Accelerate application development for NVIDIA BlueField and ConnectX networking devices.</h1><div class="separator separator--45"></div><p class="p--large text-color-gray mb-0">NVIDIA DOCA™ unlocks the potential of the NVIDIA® BlueField® networking platform. By harnessing the power of BlueField DPUs and SuperNICs, DOCA enables the rapid creation of applications and services that offload, accelerate, and isolate data center workloads. It lets developers create software-defined, cloud-native, DPU- and SuperNIC-accelerated services with zero-trust protection, addressing the performance and security demands of modern data centers. DOCA-Host includes all needed host drivers and tools for your NVIDIA BlueField and ConnectX® devices. </p><div class="separator separator--45"></div><p id="isgvi"><a href="http://developer.nvidia.com/doca-downloads" target="" title="Github Repo" class="btn btn-cta me-2 mt-2">Download DOCA</a><a href="https://developer.nvidia.com/networking/doca/getting-started" target="" title="Download Workflows" class="btn btn-cta--light btn-cta me-2 mt-2">Get Started</a></p></section><div class="separator separator--60"></div><p class="mb-0"><img alt="NVIDIA DOCA software framework diagram" src="https://developer.download.nvidia.com/images/doca/doca-software(2).jpg" class="img-fluid"></p><div class="separator separator--no-scale separator--60"></div><p id="ibpppg">Together, DOCA and the BlueField networking platform enable the development of applications that deliver breakthrough networking, security, and storage performance. BlueField isolates the infrastructure service domain from the workload domain to offer significant improvements in application and server performance, security, and efficiency, giving developers all the tools they need to realize optimal, secure, accelerated data centers and AI clouds.<br><br>DOCA software consists of an SDK and a runtime environment. The DOCA runtime, included by default with the BlueField networking platform, has tools for provisioning, deploying, and orchestrating containerized services on hundreds or thousands of DPUs and SuperNICs across the data center. The DOCA SDK provides industry-standard open APIs and software frameworks. The SDK supports a range of operating systems and distributions and includes drivers, libraries, tools, documentation, and example applications. <br><br>DOCA-Host is the DOCA package for host installation and includes several installation profiles to best fit your data center workflows. DOCA-Host provides the needed interfaces for NVIDIA networking platforms, including both BlueField and ConnectX devices.<br></p><a id="i9iy0g" href="https://docs.nvidia.com/doca/sdk/" target="_blank" class="link-cta text-transform-unset fw-bold">Read the DOCA User Manual</a><hr class="separator separator--md"><section class="page__section page__second-section pb-0 pt-0"><h2 title="Deployments" class="h--medium section__heading toc-item">Platform and Host Deployments</h2><div class="row cards-grid--60"><div class="grid-col col-6"><img src="https://developer.download.nvidia.com/images/doca/doca-blue-field-networking-platform.jpg" id="i1yrf8" alt="NVIDIA DOCA software applications running on NVIDIA BlueField DPU" class="img-fluid"><h3 class="h--smaller mb-0 mt-2">DOCA on the BlueField Networking Platform</h3><div class="separator separator--30"></div><p class="mb-0">The NVIDIA BlueField networking platform, powered by the DOCA software framework, is an advanced computing platform for data center infrastructure, delivering accelerated software-defined networking, storage, security, and management services at massive scale.<br></p><div class="separator separator--30"></div><a href="https://www.nvidia.com/en-us/networking/products/data-processing-unit/" target="_blank" class="link-cta text-transform-unset fw-bold">Learn About BlueField</a></div><div class="grid-col col-6"><img src="https://developer.download.nvidia.com/images/doca/doca-host.jpg" alt="NVIDIA DOCA software applications running on a host server box" id="iya0ih" class="img-fluid"><h3 class="h--smaller mb-0 mt-2">DOCA on the Host</h3><div class="separator separator--30"></div><p class="mb-0">NVIDIA BlueField and NVIDIA Connect-X are paired with DOCA to deliver Ethernet and InfiniBand connectivity solutions at speeds up to 800 gigabits per second (Gb/s). Built on an open foundation, the DOCA-host package includes essential drivers and tools to enhance networking performance and enable advanced functionality. DOCA software is available on every leading operating system as a standalone package (without a bundled OS) for Arm® and x86 architectures.</p><div class="separator separator--30"></div><a href="https://docs.nvidia.com/doca/sdk/nvidia+doca+profiles/index.html" target="_blank" class="link-cta text-transform-unset fw-bold">Learn About DOCA-Host Installation and Profiles</a></div></div><section class="page__section pt-0 pb-0"><hr class="separator separator--md"><h2 title="Unpack the Stack" class="h--medium section__heading toc-item tablet-45">Unpack the Stack</h2><div class="row cards__list"><div id="ix128i" class="col-lg-6 col-md-12 col-sm-12 col-xs-12"><h1 id="i5tj0g" class="h--smaller">BlueField Software Bundle </h1><ul id="i5ueia" class="nv-list"><li id="i86zih"><div><p class="mb-0">The BlueField software bundle includes the bootloader, OS kernel, necessary network interface card (NIC) firmware, NVIDIA drivers, sample filesystem, and toolchain—all certified as part of the NVIDIA NGC™ catalog.</p></div></li><li id="i675kh"><div><p class="mb-0">The BlueField bundle includes Ubuntu 22.04 as a commercial-grade Linux distribution with continuous OS and security updates.</p></div></li></ul><div class="separator separator--30"></div></div><div id="idg8s6" class="col-lg-6 col-md-12 col-sm-12 col-xs-12"><a id="irm9b9" href="https://d29g4g2dyqv443.cloudfront.net/sites/default/files/akamai/deepstream/embedded-deepstream-sdk3.jpg"></a><img src="https://developer.download.nvidia.com/images/doca/blue-field-software-bundle.jpg" id="iledb9" alt="A stack diagram of NVIDIA DOCA software apps running on Arm core of NVIDIA BlueField DPU" class="img-fluid"><div class="separator separator--30"></div></div></div><div class="row cards__list"><div class="col-lg-6 col-md-12 col-sm-12 col-xs-12"><a id="iejcv3" href="https://developer.download.nvidia.com/images/deepstream/end-to-end-vision-ai-development-ari.jpg"></a><img src="https://developer.download.nvidia.com/images/doca/sdk-key-components.jpg" id="icf37q" alt=" A stack diagram of NVIDIA DOCA business apps isolated from NVIDIA DOCA on infrastructure services domain" class="img-fluid"></div><div class="col-lg-6 col-md-12 col-sm-12 col-xs-12"><h1 id="i1dxdw" class="h--smaller">SDK Key Components<br></h1><ul id="iyh3g2" class="nv-list"><li id="i3rdvy"><div><p class="mb-0">DOCA RDMA (Remote direct-memory access) acceleration SDK: unified communications and collaboration (UCC) and Unified Communication X (UCX), RDMA verbs, GPUDirect®</p></div></li><li id="irjvof"><div><p class="mb-0">Network acceleration SDK: NVIDIA Accelerated Switching and Packet Processing (ASAP2)™ software-defined networking (SDN), emulated VirtIO, P4, 5T for 5G technology, Firefly time synchronization</p></div></li><li id="iklemg"><div><p class="mb-0">Security acceleration SDK: inline cryptography, App Shield runtime security </p></div></li><li id="i5p28n"><div><p class="mb-0">Storage acceleration SDK: storage emulation and virtualization, crypto and compression</p></div></li><li id="inepfh"><div><p class="mb-0">Data path acceleration (DPA) SDK: accelerate workloads requiring high-performance access to NIC engines</p></div></li><li id="ijrizj"><div><p class="mb-0">Management SDK: deployment, provisioning, service orchestration</p></div></li><li id="iuk5ca"><div><p class="mb-0">Industry-standard APIs: DPDK, SPDK, P4, Linux Netlink</p></div></li><li id="irjzdp"><div><p class="mb-0">User space and kernel</p></div></li></ul><div class="separator separator--30"></div></div></div><div class="row cards-grid--60"><div class="col-lg-4 col-sm-12 grid-col col-md-6"><img src="https://d29g4g2dyqv443.cloudfront.net/sites/default/files/akamai/devzone-networking-doca-sdk-icon-infrastrucure.svg" id="i1iq9p" alt="A decorative image showing an interapplication workflow on a monitor" class="img-fluid mw-6-rem"><h3 class="h--smaller mb-0">Forward and Backward Compatibility</h3><div class="separator separator--30"></div><p class="mb-0">DOCA provides multi-generational support to ensure that applications developed today will consistently run with added performance benefits on all future generations of BlueField.</p><div class="separator separator--30"></div></div><div class="col-lg-4 col-sm-12 grid-col col-md-6"><img src="https://d29g4g2dyqv443.cloudfront.net/sites/default/files/akamai/devzone-networking-doca-sdk-icon-doca.svg" id="iw48u5" alt="A decorative image of a cloud networking telemetry" class="img-fluid mw-6-rem"><h3 class="h--smaller mb-0">Offload, Accelerate, Isolate Infrastructure<br></h3><div class="separator separator--30"></div><p class="mb-0">Network, storage, and security services are offloaded, accelerated, and isolated on BlueField while data is securely delivered to workloads at wire speed.</p><div class="separator separator--30"></div></div><div class="col-lg-4 col-sm-12 grid-col col-md-6"><img src="https://d29g4g2dyqv443.cloudfront.net/sites/default/files/akamai/devzone-networking-doca-sdk-icon-sol.svg" id="ia9peg" alt="A decorative image of a neural network" class="img-fluid mw-6-rem"><h3 class="h--smaller mb-0">Open Ecosystem</h3><div class="separator separator--30"></div><p class="mb-0">DOCA offers a software application framework to accelerate ecosystem development.</p><div class="separator separator--30"></div></div></div></section></section><hr class="separator separator--md"><section class="page__section pt-0 pb-0"><h2 title="Rersources" class="h--medium section__heading toc-item tablet-45">DOCA Developer Resources<br></h2><div data-react-class="FeedAggregator" data-react-props="{&quot;sources&quot;:{&quot;wp&quot;:[{&quot;host&quot;:&quot;https://developer.nvidia.com/blog&quot;,&quot;count&quot;:3,&quot;categoryIds&quot;:&quot;&quot;,&quot;tagIds&quot;:&quot;1461&quot;,&quot;type&quot;:&quot;wp-api&quot;}]},&quot;layout&quot;:&quot;3-cols&quot;,&quot;id&quot;:&quot;i463sk&quot;,&quot;items_to_display&quot;:&quot;3&quot;,&quot;show_date&quot;:false,&quot;show_excerpt&quot;:false}" data-react-cache-id="FeedAggregator-i463sk"></div></section><div class="separator separator--60"></div><section class="page__section page__section--light-gray page__last-section page__cta-section"><h1 id="ie70wk" title="Downloads" class="h--medium text-center section__heading toc-item tablet-45">DOCA-Host and BlueField Bundle Runtime Downloads</h1><p class="p--large lead text-center text-color-gray mb-0">Download DOCA-Host and the BlueField DPU and SuperNIC runtime image.</p><div class="separator separator--60"></div><p id="ig4jk8" class="text-center"><a href="http://developer.nvidia.com/doca-downloads" target="" title="Github Repo" class="btn btn-cta me-2 mt-2">Download DOCA</a><a href="https://developer.nvidia.com/networking/doca/getting-started" target="" title="Download Workflows" class="btn btn-cta--light btn-cta me-2 mt-2">Get Started</a></p></section></main></div><div class="col-xl-1 col-separator"></div><div class="col-xl-2 col-lg-3 col-md-12 col-sm-12 col-sidebar"><aside class="page__sidebar with-sticky-nav"><div class="page-navigation-container"><div class="page-quick-links"><p class="p--small page-quick-links__header">Quick Links</p><ul><li><a href="http://developer.nvidia.com/doca-downloads" class="link-cta page-quick-links__link">Download DOCA</a></li><li><a href="https://developer.nvidia.com/networking/doca/getting-started" class="link-cta page-quick-links__link">Getting Started</a></li><li><a href="https://docs.nvidia.com/doca/sdk/" target="_blank" class="link-cta page-quick-links__link">DOCA Documentation</a><a href="https://docs.nvidia.com/networking/dpu-doca/index.html#dpu-hw" target="_blank" class="link-cta page-quick-links__link">BlueField Hardware Manual </a><a href="https://docs.nvidia.com/networking/dpu-doca/index.html#dpu-os" target="_blank" class="link-cta page-quick-links__link">BlueField Platform Software Manuals </a></li></ul></div><hr><div data-react-class="PageNavigation" data-react-props="{&quot;draggable&quot;:&quot;true&quot;,&quot;editable&quot;:&quot;true&quot;}" data-react-cache-id="PageNavigation-iwt6qk"></div></div></aside></div></div></div><div class="separator separator--90 phone-0"></div></div> </div> <div id='footer' class='mt-auto'></div> <script type="text/javascript"> (() => { const handleQuotesBlock = (quotesBlock, idx) => { const blockquotes = quotesBlock.querySelectorAll('blockquote'); if (blockquotes.length < 1) { return; } const navContainer = document.createElement('ul'); navContainer.classList.add('quotes-list-navigation'); for (let i = 0; i < blockquotes.length; i++) { let navItem = document.createElement('li'); let btn = document.createElement('button'); btn.type = 'button'; btn.dataset['group'] = idx.toString(); btn.dataset['length'] = blockquotes.length.toString(); btn.value = i.toString(); btn.addEventListener('click', (e) => { const group = e.target.dataset['group']; const groupActiveButtons = document.querySelectorAll(`button[data-group="${group}"].active`); groupActiveButtons.forEach((activeButton) => { activeButton.classList.remove('active'); }); e.target.classList.add('active'); const viewPortWidth = quotesBlock.getBoundingClientRect().width; const clickedSlide = parseInt(e.target.value); quotesBlock.querySelector('.quotes-list').style.transform = `translate(-${viewPortWidth * clickedSlide}px)`; }); navItem.appendChild(btn); navContainer.appendChild(navItem); if (i === 0) { btn.click(); } } quotesBlock.appendChild(navContainer); }; const refreshQuotesBlock = () => { document.querySelectorAll('.quotes-list-navigation button.active').forEach((b) => { const currentItem = parseInt(b.value); const maxItem = parseInt(b.dataset['length']); const group = parseInt(b.dataset['group']); const next = currentItem + 1; if (next < maxItem) { document.querySelectorAll(`button[data-group="${group}"]`)[next].click(); } else { document.querySelectorAll(`button[data-group="${group}"]`)[0].click(); } }); }; const refreshInterval = 4000; const quotesBlocks = document.querySelectorAll('.quotes-list-viewport'); if (quotesBlocks.length) { quotesBlocks.forEach(handleQuotesBlock); setInterval(refreshQuotesBlock, refreshInterval); } })(); </script> <script type="text/javascript" charset="utf-8"> (() => { const doInit = (accordionRoot, idx) => { const baseID = `page-accordion-${idx}`; accordionRoot.id = baseID; const headings = accordionRoot.querySelectorAll('.accordion-header'); if (!headings.length) { return; } const collapseElements = accordionRoot.querySelectorAll('.accordion-collapse'); headings.forEach((headingElement, idx) => { const headingID = `${baseID}-heading-${idx}`; const targetID = `${baseID}-target-${idx}`; headingElement.id = headingID; const headingButton = headingElement.querySelector('.accordion-button'); if (!headingButton) { return; } headingButton.type = 'button'; headingButton.dataset['bsToggle'] = 'collapse'; headingButton.dataset['bsTarget'] = `#${targetID}`; headingButton.setAttribute('aria-expanded', true); headingButton.setAttribute('aria-controls', targetID); headingButton.setAttribute('role', 'button'); if (!collapseElements[idx].classList.contains('show')) { headingButton.classList.add('collapsed'); } collapseElements[idx].id = targetID; collapseElements[idx].setAttribute('aria-labelledby', headingID); }); new bootstrap.Collapse(accordionRoot); }; const initAccordions = () => { const accordions = document.querySelectorAll('section.page__section div.accordion'); if (!accordions.length) { return; } let accordionIndex = 0; accordions.forEach((accordion) => { doInit(accordion, accordionIndex); accordionIndex += 1; }); }; document.addEventListener('DOMContentLoaded', initAccordions) })(); </script> <script src="https://dirms4qsy6412.cloudfront.net/assets/grapesjs-tabs-f0b094476ecf56695b765f533e437303138b1e0824d993c50ff672e16dcccd8f.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/legacy-chart/d3.v4.min-41cfecdf7c41476e805de7afacf4aacdd1a4be6947fbecf95217e947ebc2faf5.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/legacy-chart/visualize-d-06443fdef48364af6635f0d1d3535da26910671f6f6a680c531eff0e54ed595f.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/momentjs/moment-b955adb4137f92dd932ff2c3179ce60cb5e1daed5fcc4423f95cf17df02b4d68.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/momentjs/moment-timezone-with-data-10-year-range-dd05517070a46fa0052f9e706803d57a4fc38c1a223137ab480369e6308ba8d4.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/calendar-256ba38a1da92b24c057388ff6623eddd4cf1498f51d1a389cc4dfac501ab87c.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/nv-developer-menu-09b6a95e79b8d8d44b0f1ac794e39d5adac82391d128f6d4d39715826a860020.js"></script> <script> let menuLocale = 'en'; if (menuLocale == 'en') { menuLocale = 'en-US'; } function mountHeader(data = false) { let options = { baseURL: window.location.origin, signedIn: false, locale: menuLocale }; if (data) { options.secondaryMenu = data; } options.showMembershipCardLink = true; new NVDeveloperHeader({ target: document.getElementById('header'), props: options }); } function mountFooter(data = false) { let options = { menu: data, locale: menuLocale }; new NVDeveloperFooter({ target: document.getElementById('footer'), props: options }); } let url = 'd29g4g2dyqv443.cloudfront.net'; let headerMenuURL = "https://d29g4g2dyqv443.cloudfront.net/menu/en-US/header-secondary.json"; fetch(headerMenuURL) .then(response => response.json()) .then(data => { mountHeader(data); }) .catch((error) => { mountHeader(); window.nv.tracing.addError('menu', error); }); fetch(`https://${url}/menu/${menuLocale}/footer.json`) .then(response => response.json()) .then(data => { mountFooter(data); }) .catch((error) => { mountFooter(); window.nv.tracing.addError('menu', error); }); </script> <script src="https://www.datadoghq-browser-agent.com/us1/v5/datadog-rum.js"></script> <script> let silentAuthHost = 'www.nvidia.com'; let crossOriginPageUrl = `https://${silentAuthHost}/auth/hints/`; function readHint() { return new Promise((resolve) => { const { origin: targetOrigin } = new URL(crossOriginPageUrl); const iframe = document.createElement('iframe'); iframe.hidden = true; iframe.src = crossOriginPageUrl; function responseHandler(event) { if (event.origin === targetOrigin) { iframe.parentNode.removeChild(iframe); return resolve(event.data); } } window.addEventListener('message', responseHandler, { once: true }); iframe.onload = () => { iframe.contentWindow.postMessage({ type: 'read' }, targetOrigin); } document.body.appendChild(iframe); }); } function writeHint(login_hint, idp_id, timestamp, sub) { const { origin: targetOrigin } = new URL(crossOriginPageUrl); const iframe = document.createElement('iframe'); iframe.hidden = true; iframe.src = crossOriginPageUrl; iframe.onload = () => { const message = { type: 'write', login_hint, idp_id, timestamp, sub }; iframe.contentWindow.postMessage(message, targetOrigin); } document.body.appendChild(iframe); } function deleteHint() { const { origin: targetOrigin } = new URL(crossOriginPageUrl); const iframe = document.createElement('iframe'); iframe.hidden = true; iframe.src = crossOriginPageUrl; iframe.onload = () => { iframe.contentWindow.postMessage({ type: 'delete' }, targetOrigin); } document.body.appendChild(iframe); } </script> <script>_satellite.pageBottom();</script> <script src="https://api-prod.nvidia.com/search/nvidia-gallery-widget.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/assets/nv-gallery-widget-3773782f8ce6c8c8a941c2b9081c011da255a54832177fb8bd2e6c7967d37182.js"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/runtime-503119e3bfeec75056bc.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/692-70104789368a40f2d231.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/341-3761d2892158034dde54.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/798-8f26177f1189c7399fb3.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/866-f9c34b19d1b60b883caf.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/311-033b6299b51897e65419.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/252-f83b27d9f72fef366bc7.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/367-0b2e82a8016bebbc82b5.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/900-34f3bf570904cbfb5a16.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/application-54bf18784eb1ee5cdece.js" defer="defer"></script> <script src="https://dirms4qsy6412.cloudfront.net/packs/js/ls_track-4ba11c63b23b3f4ff0d5.js" defer="defer"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10