Intel na trhu grafických karet pro PC skončil

30. 9. 2024

Sdílet

Autor: Intel
Svět dedikovaných grafických karet je už světem Nvidie.

Intel je sice stále dominantním hráčem v oblasti počítačových her, protože prodává většinu všech počítačových procesorů (s integrovanou grafikou), pokud však jde o jeho přítomnost v oblasti dedikované grafiky, jeho čas se zřejmě naplnil.

Podle analytické společnosti Jon Peddie Research vzrostly dodávky grafických karet pro PC ve druhém čtvrtletí roku 2024 na 9,5 milionu kusů (o 9 % oproti prvnímu čtvrtletí). Je to překvapivé zjištění, protože desetiletý průměr vykazuje ve druhém čtvrtletí pokles o 7,1 %. Společnost JPR tento nárůst přičítá uvedení nových karet na trh v prvním čtvrtletí.

Podcast magazínu Computertrends

V podcastu se bavíme s lidmi, kteří znají svět ITC a mají o něm co říct. Podcast najdete na všech obvyklých podcastových aplikacích: Spotify, Apple Podcasts, Seznam Podcasty nebo Podbean.

Zajímavějším příběhem však nadále zůstává pokračující válka mezi společnostmi AMD, Nvidia a Intel na trhu dedikovaných grafických karet. A v této válce byla jedna společnost vytlačena, přičemž Intel nyní ovládá přesně nula procent trhu s grafickými kartami pro PC. (K tomuto poklesu skutečně došlo zhruba na začátku roku, uvádí JPR, poté co před rokem klesl z nepatrných 2 %).

Trh s grafickými kartami pro PC se tak stává závodem dvou koní. Tedy téměř. Nvidia má na trhu tak velký podíl – 88 % – že v podstatě zcela ovládá trh. Před rokem měla Nvidia 80% podíl a zbytek přenechala společnostem AMD a Intel. Dnes 12 % trhu s grafickými kartami pro osobní počítače, které Nvidia neovládá, připadá pouze společnosti AMD.

Jak vypnout reklamní nabídky ve Start menu Windows 11 Přečtěte si také:

Jak vypnout reklamní nabídky ve Start menu Windows 11

„Trh s dedikovanými kartami stále překvapuje a udivuje pozorovatele, kteří mu již desítky let předpovídají zánik,“ uvedl v prohlášení Jon Peddie, prezident společnosti JPR. „S jedním malým poklesem v prvním čtvrtletí (což je sezónně normální) jsme zaznamenali čtyři čtvrtletí růstu. Celkové dodávky však ve srovnání s obdobím před dvěma lety poklesly, takže to není povzbudivé. Zůstáváme však optimističtí ohledně budoucnosti a fantastických her, které se chystají a které budou vyžadovat veškerý výkon, který můžou dedikované karty nabídnout.“

Je v tom trochu ironie, vzhledem k tomu, že Intel právě vydal svůj mobilní procesor Lunar Lake pro notebooky. Uvnitř Lunar Lake se nachází nové grafické jádro Xe2, které Intel plánuje uvést na trh jako (potenciálně) dedikované GPU známé jako Battlemage. Battlemage má však už teď zpoždění (původně ho chtěl Intel uvést už loni). 

zabbix_tip

Mezitím je netrpělivě očekávána chystaná řada GeForce 5000 („Blackwell“) společnosti Nvidia, která se snad na trhu objeví co nevidět.

Video ke kávě

Máte čas na rychlé a informativní video?

Dobrou zprávou podle analytika JPR C. Roberta Dowa je, že ceny grafických karet pro PC by měly zůstat stejné, dokud Nvidia a AMD nevydají své grafické procesory nové generace. Zdá se však, že k tomu, aby se Intelu podařilo získat zpět vůbec nějaký podíl na trhu a zároveň konkurovat těmto čipům, by bylo zapotřebí něco blízkého zázraku.

 

Computertrends si můžete objednat i jako klasický časopis. Je jediným odborným magazínem na českém a slovenském trhu zaměreným na profesionály v oblasti informačních a komunikačních technologií (ICT). Díky silnému zázemí přináší aktuální zpravodajství, analýzy, komentáře a přehledy nejnovejších technologií dříve a na vyšší odborné úrovni, než ostatní periodika na tuzemském trhu.

Obsah Computertrends je určen odborníkům a manažerům z firem a institucí, kteří se podílejí na rozhodovacím procesu při nákupu ICT technologií. Jednotlivá čísla si můžete objednat i v digitální podobě.

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }