Форуми

Игра на M1

the8thark

Оригинален плакат
18 април 2011 г
  • 23 април 2021 г
Първо бих искал да споделя няколко видеоклипа от youtube, където един човек тества няколко игри на M1 (Macbook Pro). Така че Mini трябва да получи подобна производителност, а iMac - малко по-добра производителност (предполагам).

Първото видео има 25 тествани игри, които са набор от 64-битови Metal 2 и OpenGL игри, приложения за iPhone и iPad на Mac и 32-битови игри.

спойлер:щракнете тук, за да видите списъка с повечето от 25-те игри във видеото Borderlands 3
Half Life 2
World of Warcraft
Сянката на Tomb Raider
Minecraft
DOTA 2
Bioshock 2: Ремастериран
Сред нас
F1 Мобилни състезания
Stardew Valley (iOS)
Мъртъв тригер 2
Soul Knight
Долината на паметниците
Stardew Valley (Steam)
DiRT Rally
Borderlands 2
Counter-Strike: Global Offensive
Cuphead
Средната земя: Сянката на Мордор
Умираща светлина
Хадес
Безпътният
Deus Ex: Човечеството разделено
Батман: Аркъм Сити
The Sims 4

Второто видео има 33 тествани игри, които са набор от игри arm64, Parallels 16, Rosetta 2 и CrossOver.

спойлер:щракнете тук, за да видите списъка с повечето от 33-те игри във видеото Изолация на извънземни
Приказка за чума: Невинност
BioShock Remastered
The Bard’s Tale IV: DC
CS GO
SteamVR
GTA IV
The Elder Scrolls онлайн
СУПЕРГОРЕЩО: MCD
DARK SOULS: РЕМАСТЕРИРАН
крадец
Крале на кръстоносците III
мърша
LEGO: The Incredibles
Отрицателно въздействие 4
Факторио
F1 2016 г
Pathfinder: Kingmaker - EPE
Мото състезател 4
превключвател
Арагами
Outlast
The Sims 2
ДЕН НА ПЛАЩАТА 2
Юка-Лейли
Дългият мрак
Скул: Убиецът на герои

Третото видео видео има 32 тествани игри

спойлер:щракнете тук, за да видите списъка с повечето от 32-те игри във видеото Метро Изход
Пътя на изгнанието
Космическа база Стартопия
NBA 2K21 аркадно издание
Якудза 0
GWENT: The Witcher Card Game
Транспортна треска 2
Gzdoom
Фест на развалините
Ори и сляпата гора: окончателно издание
Ори и волята на светлинките
Нереален турнир
Frostpunk
Отвъд синьото
Последният лагерен огън
ПРЕДАНИЕ
Принципът на Талос
Hellblade: Жертвата на Сенуа
Стопад
Влезте в Gungeon
Валхайм
Натрапник
Assassin's Creed IV: Черно знаме
Disco Elysium: The Final Cut
превръзки
Градове: Skylines
Слоевете на страха 2
Нарита момче
Малки кошмари

Нито една от тези игри не е кървяща или крайна графика на 2021 г., но двата видеоклипа тук трябва да ви дадат добър преглед на това колко способен е M1 за игри. Много по-способен е, отколкото си мислех отначало.
Реакции:AdamInKent, Джордж Доус, matrix07 и още 1 човек

Lowhangers

26 ноември 2017 г


  • 23 април 2021 г
Единствената игра, която играя на моя Mac mini, е World of Warcraft. И работи доста добре, добавете уважавана разделителна способност при 60 кадъра в секунда на моя M1 Mac mini. Нямам никакви оплаквания, за цената, която платих за мини.

Apple свърши фантастична работа с M1 и мога само да си представя колко по-добър ще стане с годините, докато го подобряват. Не мога да си представя къде ще бъде уеб в четири или пет поколения от тези процесори.
Реакции:LeeW, George Dawes и Retrostarscream

харалдс

3 януари 2014 г
Силиконовата долина, Калифорния
  • 25 април 2021 г
Производителността на играта е изненадващо добра дори за Windows игри, работещи под Windows 10 хипервизор и x86 емулация.
Реакции:the8thark, Джордж Доус и thedocbwarren

Джордж Доус

17 юли 2014 г
=VH=
  • 29 април 2021 г
Представете си appletv с чипа m1!

Тогава те наистина биха могли да нарекат Apple Arcade, аркадно/конзолно ниво..
Реакции:AdamInKent, SigEp265 и the8thark THE

leman

14 октомври 2008 г
  • 29 април 2021 г
dmccloud каза: Използвайки „конвенционална“ логика, графичната производителност на M1 не би трябвало да е толкова добра, колкото е.

Ако под конвенционалната логика имате предвид популярното схващане „iGPU са бавни“. Това е същото като „ARM е бавен“ — само защото парадигмата традиционно се използва за евтини, нископроизводителни устройства, това не означава, че не може да се използва за изграждане на високопроизводително устройство.

M1 има отличен потенциал за производителност на игри, особено ако игрите използват неговите уникални характеристики. TBDR на Apple позволява радикално да се опрости и рационализира използването на кода и ресурсите за много съвременни подходи за изобразяване. Традиционните графични процесори изискват да скачате през неочевидни обръчи, когато правите някои неща, с устройствата на Apple вместо това може да се разхождате в парка.

dmccloud каза: Това обаче се основава на гледане на нещата през парадигмата на x86 (Intel), където iGPU са горещ боклук в най-добрия случай, напълно неизползваеми иначе. UMA играе голяма роля в това, тъй като и CPU, и GPU могат да имат достъп до едни и същи данни едновременно, вместо да се налага да копират данните както в системния, така и в iGPU дяла, след което съгласуват промените, направени в двете копия.

UMA е много по-малко важен за игрите (отколкото да кажем, за софтуера за създаване на съдържание), тъй като много рядко игри изискват достъп както на CPU, така и на GPU до данните. Преобладаващото мнозинство от игрите използват процесора като промежуточна зона за настройка на ресурси, които след това се копират и използват на графичния процесор. Това е.

И още няколко бележки:

- Само фактът, че имате UMA, не означава, че не трябва да копирате данните. Функционалността за нулево копиране изисква изрично използване на специализирани API и изисква да настроите данните си по много специфичен начин. Игрите просто не се занимават с това. Така че все още трябва да копирате данните, просто самото копиране е много по-бързо (получавате пълна честотна лента 68+GBps вместо 15GBps на PCI-e 3.0 16x, използван в графични процесори за игри от висок клас)

- Intel (и AMD) iGPUs използват UMA от години. Тяхната топология на паметта е практически идентична с тази на Apple (памет за достъп до CPU и GPU чрез споделен кеш на последно ниво). Apple просто има много по-способни контролери на паметта (а също и размери на кеша на графичния процесор на настолно ниво) — те оптимизират за производителност и ефективност тук и не струват като други доставчици.
Реакции:thekev, falainber, JMacHack и още 1 човек С

вретено

5 октомври 2020 г
  • 29 април 2021 г
leman каза: - iGPU на Intel (и AMD) използват UMA от години. Тяхната топология на паметта е практически идентична с тази на Apple (памет за достъп до CPU и GPU чрез споделен кеш на последно ниво). Apple просто има много по-способни контролери на паметта (а също и размери на кеша на графичния процесор на настолно ниво) — те оптимизират за производителност и ефективност тук и не струват като други доставчици.
Никакви iGPU на Intel и amd изобщо не използват UMA.

Intel и AMD iGPU секции на част от системната RAM памет, която да се използва като vRAM, останалата част от системата няма достъп до тази част от RAM изобщо, само GPU може.

Това не е така с UMA, с UMA цялата система има достъп до цялата RAM по всяко време.

А що се отнася до игрите, които „не използват UMA“, това няма нищо общо с игрите и всичко свързано с графичните драйвери. Играта просто се обажда чрез API към графичния драйвер, след което драйверът сортира обработката на паметта.
Реакции:cal6n и dmccloud THE

leman

14 октомври 2008 г
  • 29 април 2021 г
Спиндел каза: Никакви iGPU на Intel и amd изобщо не използват UMA.

Intel и AMD iGPU секции на част от системната RAM памет, която да се използва като vRAM, останалата част от системата няма достъп до тази част от RAM изобщо, само GPU може.

Това просто е погрешно. Документацията на Intel ясно посочва, че техните iGPU, започващи най-малко от Sandy Bridge (ако си спомням правилно), използват UMA и те излагат разширения за данни на CPU/GPU с нулево копие към OpenCL, които работят идентично с функционалността с нулево копиране на Apple Metal.

Спиндел каза: А що се отнася до игрите, които „не използват UMA“, това няма нищо общо с игрите и всичко свързано с графичните драйвери. Играта просто се обажда чрез API към графичния драйвер, след което драйверът сортира обработката на паметта.

Това отново е грешно (поне по отношение на темата). Графичните приложни програмни интерфейси (API) изискват ръчно да копирате данните (или чрез предоставяне на указател на данни предварително, или чрез използване на API за копиране/картографиране). Така че UMA или не UMA, ако използвате нещо като MTLBuffer.contents() или MTLTexture.replace(), вие винаги правите копие на паметта от паметта, разпределена от вашето приложение, в паметта, разпределена от драйвера. Трябва да използвате MTLDevice.makeBuffer(bytesNoCopy: ), ако искате поведение с нулево копиране.

За да обобщим: само защото вашата система има UMA, това не означава, че всички копия на данни могат да бъдат магически елиминирани.
Реакции:Кревник

dmccloud

7 септември 2009 г
Анкоридж, АК
  • 29 април 2021 г
Леман каза: Това просто е погрешно. Документацията на Intel ясно посочва, че техните iGPU, започващи най-малко от Sandy Bridge (ако си спомням правилно), използват UMA и те излагат разширения за данни на CPU/GPU с нулево копие към OpenCL, които работят идентично с функционалността с нулево копиране на Apple Metal.



Това отново е грешно (поне по отношение на темата). Графичните приложни програмни интерфейси (API) изискват ръчно да копирате данните (или чрез предоставяне на указател на данни предварително, или чрез използване на API за копиране/картографиране). Така че UMA или не UMA, ако използвате нещо като MTLBuffer.contents() или MTLTexture.replace(), вие винаги правите копие на паметта от паметта, разпределена от вашето приложение, в паметта, разпределена от драйвера. Трябва да използвате MTLDevice.makeBuffer(bytesNoCopy: ), ако искате поведение с нулево копиране.

За да обобщим: само защото вашата система има UMA, това не означава, че всички копия на данни могат да бъдат магически елиминирани.

Независимо от това как Intel го нарича, това все още не е истинско UMA. Отидете в Best Buy и разгледайте някой от лаптопите на дисплея само с интегрирана графика. Ще видите, че те ще кажат нещо като „8GB RAM (6,03 GB налични). Това е така, защото те все още разделят физическата RAM на виртуални CPU/iGPU дялове. Intel обича да подвежда или дори да лъже в своите маркетингови и понякога технически материали. Когато обявиха своите процесори от 11-то поколение, те сравниха само своя iGPU (който всъщност беше просто ребрандиране на графиката на „UMA“, използвана в частите от 9-то и 10-то поколение) с AMDs Vega 4 и nVidia MX250 (които вече бяха заменени от MX350) в опит да докажат, че тяхната графика е по-добра. Група от нас гледаха тази презентация на работа и разкъсаха Intel на парчета за количеството подвеждащи твърдения, които натъпкаха в 47-минутна предварително записана презентация.
Реакции:dahlblom х

xWhiplash

Сътрудник
21 октомври 2009 г
  • 29 април 2021 г
M1 побеждава или се конкурира с GTX 1050 Ti, който все още е №2 в хардуерното проучване на Steam.

Проучване на хардуера и софтуера на Steam
Наистина се надявам, когато стигнем до голямото момче Mac Pro, че графичният процесор е доста конкурентен. Опитът да вземете дори RTX 3060 е невъзможен. х

xWhiplash

Сътрудник
21 октомври 2009 г
  • 29 април 2021 г
Леман каза: Това просто е погрешно. Документацията на Intel ясно посочва, че техните iGPU, започващи най-малко от Sandy Bridge (ако си спомням правилно), използват UMA и те излагат разширения за данни на CPU/GPU с нулево копие към OpenCL, които работят идентично с функционалността с нулево копиране на Apple Metal.
Ако прочетете документа, това трябва да е промяна в програмирането. Колко софтуера имат тази промяна?

software.intel.com

Извличане на максимума от OpenCL™ 1.2: Как да повишите производителността чрез...

Изтегляния Изтеглете Извличане на максимума от OpenCL™ 1.2: Как да повишите производителността чрез минимизиране на буферните копия на Intel® Proce software.intel.com
За да създадете нулеви буфери за копиране, направете едно от следните неща:

Използвайте CL_MEM_ALLOC_HOST_PTR и оставете времето за изпълнение да се справи със създаването на буфер за разпределение на нулево копие за вас

Ако вече имате данните и искате да заредите данните в OpenCL буферен обект, тогава използвайте CL_MEM_USE_HOST_PTR с буфер, разпределен на граница от 4096 байта (подравнен към границата на страница и кеш линия) и общ размер, кратен на 64 байтове (размер на кеш ред).

Когато четете или записвате данни в тези буфери от хоста, използвайте clEnqueueMapBuffer(), работете с буфера, след което извикайте clEnqueueUnmapMemObject(). Този документ съдържа примерни кодове за демонстриране на най-добрите познати практики на платформите Intel®.
Дж

JouniS

22 ноември 2020 г
  • 29 април 2021 г
Очаквам, че M1 ще остане добър през следващите година-две. Докато дефицитът на компоненти приключи, много хора ще имат конзоли и графични процесори от текущо поколение, а новите игри ще бъдат проектирани да се възползват от по-бързия хардуер. Тогава 16-ядрен M1 GPU ще бъде нисък клас, а 32 ядра ще бъдат среден клас.

Винаги има умишлен скок в хардуерните изисквания известно време след пускането на ново поколение конзоли. Ако старите конзоли все още бяха подходящи за нови игри, нямаше да има малка причина да купувате нови модели. От друга страна, тъй като времето между поколенията на конзолите е ~7 години, всеки хардуер, който е добър след скока, ще остане добър в продължение на много години. THE

leman

14 октомври 2008 г
  • 30 април 2021 г
dmccloud каза: Независимо от това как Intel го нарича, това все още не е истинско UMA. Отидете в Best Buy и разгледайте някой от лаптопите на дисплея само с интегрирана графика. Ще видите, че те ще кажат нещо като „8GB RAM (6,03 GB налични). Това е така, защото те все още разделят физическата RAM на виртуални CPU/iGPU дялове.

Точно така работи моделът на драйвера. Очевидно известна памет е запазена за целите на GPU. Не е толкова различно с M1: можете да потърсите количеството налична памет на GPU и числото, което получавате, не е общата системна RAM. Това е само въпрос за отчитане/„счетоводство“ и няма много общо със самата UMA. Обединената памет означава, че графичният процесор и процесорът могат да имат физически (и логически) достъп до една и съща памет по съгласуван с кеш начин и всеки разумен модел Intel iGPU има тази възможност.

dmccloud каза: Intel обича да подвежда или дори да лъже в маркетинга си...

О, това абсолютно можем да се съгласим. Маркетингът на Intel обича да бъде, как да го кажа... „оптимист“. Но от техническа гледна точка, графичните процесори на Intel са доста интересни и не са сложни устройства. Те имат много гъвкави изчислителни възможности.

xWhiplash каза: Ако прочетете документа, това трябва да е промяна в програмирането. Колко софтуера имат тази промяна?

Абсолютно същото нещо за Apple Silicon. Ако искате поведение с нулево копиране, трябва да използвате специфичен API и да се уверите, че разпределяте паметта си по определен начин.
Реакции:thekev

LeeW

5 февруари 2017 г
Над хълма и далече
  • 30 април 2021 г
Lowhanger каза: Единствената игра, която играя на моя Mac mini, е World of Warcraft. И работи доста добре, добавете уважавана разделителна способност при 60 кадъра в секунда на моя M1 Mac mini. Нямам никакви оплаквания, за цената, която платих за мини.

Apple свърши фантастична работа с M1 и мога само да си представя колко по-добър ще стане с годините, докато го подобряват. Не мога да си представя къде ще бъде уеб в четири или пет поколения от тези процесори.

Това също съм аз, играя WoW само небрежно и влизам и излизам от Retail/Classic, когато времето позволява. Играе се от 2006 г., но не нападайте повече, просто се насладете на куестове и скитане по света.

Работи невероятно на M1 Mac Mini, в сравнение с предишните ми устройства от 2014 и 2018 г. 45-60 FPS при 3440x1440 @ максимални настройки с лека корекция на сенките, едва загрява и се справя отлично. х

xWhiplash

Сътрудник
21 октомври 2009 г
  • 30 април 2021 г
leman каза: Точно същото нещо за Apple Silicon. Ако искате поведение с нулево копиране, трябва да използвате специфичен API и да се уверите, че разпределяте паметта си по определен начин.
Не става така. Apple Silicon има достъп до всички 16 GB RAM. Няма отделна VRAM, но все пак има за Intel iGPU.
Реакции:dmccloud

Хесел89

27 септември 2017 г
Холандия
  • 30 април 2021 г
Само въз основа на резултатите от geekbench очаквах подобна производителност на AMD RX 560.
Изглежда, че това е точно така в повечето игри, с единствената разлика, че мога да настроя разстоянието за рисуване на абсолютния максимум на M1. (благодарение на 16GB унифицирана RAM)

С игрите с активиран Metal 2 това е съвсем различна игра с топка!
Мога да играя X-plane 11 при 2560 x 1440 с всичко настроено на Ultra / High и все още получавам солидни 30 до 40 кадъра в секунда.
Това всъщност е по-добре от това, което един мой приятел получава със своя RTX 2060. През цялото време остава напълно тих!

Не би трябвало да е толкова мощен, но някак си е...
Реакции:Homy THE

leman

14 октомври 2008 г
  • 30 април 2021 г
xWhiplash каза: Това не работи така. Apple Silicon има достъп до всички 16 GB RAM. Няма отделна VRAM, но все пак има за Intel iGPU.

Не са ми известни ограничения за адресиране на паметта на Intel iGPU. И двете устройства на Intel и Apple имат достъп до системната памет чрез същия кеш на последно ниво и един и същ контролер на паметта. Цялата памет на графичния процесор на Intel е видима и кохерентна на кеша с процесора и обратно. Както Intel, така и Apple GPU устройства имат директен достъп до разпределението на системната памет (нулево копие) с помощта на API за избор.

Всички отчети за размер на VRAM и т.н., които може да видите, са специфични за драйвера или ОС ограничения. Доколкото знам, драйверът на Intel GPU може да регулира тези списъци динамично, Apple Silicon използва много високи естествени граници от самото начало. И двете запазват определено количество RAM за целите на GPU. С

вретено

5 октомври 2020 г
  • 30 април 2021 г
leman каза: Не съм запознат с ограничения за адресиране на паметта на Intel iGPU. И двете устройства на Intel и Apple имат достъп до системната памет чрез същия кеш на последно ниво и един и същ контролер на паметта. Цялата памет на графичния процесор на Intel е видима и кохерентна на кеша с процесора и обратно. Както Intel, така и Apple GPU устройства имат директен достъп до разпределението на системната памет (нулево копие) с помощта на API за избор.

Всички отчети за размер на VRAM и т.н., които може да видите, са специфични за драйвера или ОС ограничения. Доколкото знам, драйверът на Intel GPU може да регулира тези списъци динамично, Apple Silicon използва много високи естествени граници от самото начало. И двете запазват определено количество RAM за целите на GPU.
Да, вярно е, че размерът на vram може да се регулира динамично с intel igpus.
Но не разбирате смисъла, разпределеният vram все още не може да бъде достъпен от останалата част от системата. Така че, ако имате графичен обект, който се нуждае от позициониране (извършено от CPU), този обект трябва да се намира както във vram, така и в системния ram. Тъй като процесорът трябва да направи своите изчисления върху него и тъй като не може да получи достъп до vram, се нуждае от копие в системната RAM (всичко това грубо опростено)

с UMA и процесорът, и графичният процесор могат да имат достъп до един и същ адрес на паметта. THE

leman

14 октомври 2008 г
  • 30 април 2021 г
Спиндел каза: Но вие не разбирате смисъла, разпределеният vram все още не може да бъде достъпен от останалата част от системата. Така че, ако имате графичен обект, който се нуждае от позициониране (извършено от CPU), този обект трябва да се намира както във vram, така и в системния ram. Тъй като процесорът трябва да направи своите изчисления върху него и тъй като не може да получи достъп до vram, се нуждае от копие в системната RAM (всичко това грубо опростено)

Това е просто неправилно. Няма „VRAM“ с модерните iGPU на Intel или AMD. Процесорът и графичният процесор имат достъп до една и съща физическа памет. Както писах преди, CPU и GPU споделят кеша и контролерите на паметта.

Ако не ми вярвате, вижте наличните пулове памет Vulkan за тези устройства (чрез vkGetPhysicalDeviceMemoryProperties). Те само пуловете памет, които предлагат, са достъпни както от устройството (GPU), така и от хоста (CPU).

Спиндел каза: с UMA и процесорът, и графичният процесор могат да имат достъп до един и същ адрес на паметта.

Точно. Ето защо съм озадачен, че ще твърдите, че Intel не е UMA. Точно така работят iGPU на Intel.

dmccloud

7 септември 2009 г
Анкоридж, АК
  • 30 април 2021 г
leman каза: Това е просто неправилно. Няма „VRAM“ с модерните iGPU на Intel или AMD. Процесорът и графичният процесор имат достъп до една и съща физическа памет. Както писах преди, CPU и GPU споделят кеша и контролерите на паметта.

Ако не ми вярвате, вижте наличните пулове памет Vulkan за тези устройства (чрез vkGetPhysicalDeviceMemoryProperties). Те само пуловете памет, които предлагат, са достъпни както от устройството (GPU), така и от хоста (CPU).



Точно. Ето защо съм озадачен, че ще твърдите, че Intel не е UMA. Точно така работят iGPU на Intel.

При iGPU на Intel RAM паметта е разделена на два виртуални дяла: единият, който се използва като системна RAM, другият е посветен на iGPU. Така че лаптоп на HP или Dell, който се доставя с 8 GB RAM, ще има само между 6 и 7,5 GB RAM на разположение за програми, тъй като останалата част е разпределена единствено на iGPU. Освен това, данните, записани в системния дял, могат да бъдат достъпни само от CPU, а данните, записани в GPU дяла, са достъпни само от iGPU. Ето защо използването на термина „UMA“ от Intel в най-добрия случай е подвеждащо. С M1 Apple предостави пълен достъп до цялото адресно пространство на паметта както на CPU, така и на GPU ядра. За приложения, в които се използват както GPU, така и CPU (много MMO, включително World of Warcraft отговарят на този критерий), данните трябва да бъдат копирани и в двата дяла от страна на Windows, след което промените се съгласуват, преди да се извърши какъвто и да е изход. С M1 както процесорните, така и графичните ядра могат да имат достъп и да променят данните едновременно . Това ускорява цялостната производителност, тъй като стъпката на съгласуване вече не е необходима. THE

leman

14 октомври 2008 г
  • 30 април 2021 г
dmccloud каза: С iGPU на Intel RAM паметта е разделена на два виртуални дяла: единият, който се използва като системна RAM, другият е посветен на iGPU. Така че лаптоп на HP или Dell, който се доставя с 8 GB RAM, ще има само между 6 и 7,5 GB RAM на разположение за програми, тъй като останалата част е разпределена единствено на iGPU. Освен това, данните, записани в системния дял, могат да бъдат достъпни само от CPU, а данните, записани в GPU дяла, са достъпни само от iGPU. Ето защо използването на термина „UMA“ от Intel в най-добрия случай е подвеждащо.

Откъде имаш тази информация? Това противоречи на цялата техническа документация и поведението на API, което ми е известно. Що се отнася до „виртуалния дял“ — това е само RAM паметта, запазена за използването на GPU. Системите на Apple също правят това. х

xWhiplash

Сътрудник
21 октомври 2009 г
  • 1 май 2021 г
leman каза: Откъде имаш тази информация? Това противоречи на цялата техническа документация и поведението на API, което ми е известно. Що се отнася до „виртуалния дял“ — това е само RAM паметта, запазена за използване на графичния процесор. Системите на Apple също правят това.
Отново това е промяна в програмирането. Стартирането на стара игра от 2005 г. на модерен Intel iGPU все пак ще трябва да извърши копие в паметта на iGPU. Всъщност трябва да посочите в кода, че искате нулев буфер на паметта.

Тъй като Apple няма специална iGPU VRAM, този проблем не възниква. То няма това разделение.

Моля, покажете къде системите на Apple показват специални секции на RAM САМО за GPU. Тук имам Mac mini M1 и не мога да намеря къде пише само 1 или 2 GB налична VRAM. THE

leman

14 октомври 2008 г
  • 1 май 2021 г
xWhiplash каза: Отново, това е промяна в програмирането. Стартирането на стара игра от 2005 г. на модерен Intel iGPU все пак ще трябва да извърши копие в паметта на iGPU. Всъщност трябва да посочите в кода, че искате нулев буфер на паметта.

И отново, същото нещо е, когато използвате Metal или друг GPU API. Наистина съм объркан от това, което се опитвате да кажете.

Моля, не го приемайте по грешен начин, но просто трябва да попитам в този момент: какъв е вашият опит с програмирането на GPU? Не ми звучи така, сякаш сте твърде запознат с графичните API.

xWhiplash каза: Тъй като Apple няма специална iGPU VRAM, този проблем не възниква. То няма това разделение.

Разбира се, че е така. Моля, вижте документацията за метал. Всички основни API предполагат, че копирате данни в буфери на паметта, разпределени от драйвера. Ако искате да постигнете функционалност с нулево копиране, трябва да използвате специализирани API (както казвате, това е промяна в програмирането). Мисля, че го споменавам за пети път. Става малко разочароващо.

xWhiplash каза: Моля, покажете къде системите на Apple показват специални секции на RAM САМО за GPU. Тук имам Mac mini M1 и не мога да намеря къде пише само 1 или 2 GB налична VRAM.

Наличната VRAM е само информация, която драйверът/ОС ви дава. Intel iGPU няма VRAM. Те имат системна памет, управлявана от драйвера на графичния процесор. Точно като Apple. Останалото е просто поведение на шофьора. Драйвер на Intel в Windows може да ограничи максималното ви използване на GPU RAM до 4GB или така (честно казано, не знам), Apple е по-гъвкав. х

xWhiplash

Сътрудник
21 октомври 2009 г
  • 1 май 2021 г
leman каза: Моля, не го приемайте по грешен начин, но просто трябва да попитам в този момент: какъв е вашият опит с програмирането на GPU? Не ми звучи така, сякаш сте твърде запознат с графичните API.
Създавам видео игри, работя с пикселни и върхови шейдъри в Direct X, XNA, MonoGame, Unity, Unreal и др. Имам опит, поради което няколко души, които са публикували, че Intel няма този проблем, НЕ знаят, че това е промяна в програмирането - и много хора дори не осъзнават, че това е промяна в програмирането. Не успях да намеря пример, че продължавате да твърдите, че M1 на Apple все още страда от този проблем, и аз търсих дни наред. Не мога да намеря флаговете, необходими за нулев буфер на паметта, както правите за Intel. Така че, моля, насочете ме в правилната посока, вместо просто да го казвате 5 пъти. Ако имате доказателство, определено бих искал да го прочета. НЕ видях НИКАКВО доказателство, че M1 все още има собствено специално разпределение на GPU памет. ВСИЧКО, което прочетох и ВСЯКАТА документация, която видях, гласи, че M1 GPU има достъп до ВСЕКИ и ВСИЧКИ от 8GB или 16GB от Unified Memory.

Виждал съм десетки дискусии за разработчици и мнения на програмисти като това:

Защо чипът Apple M1 е толкова бърз - разработчик обяснява | Експерт по производство

Може би сте се чудили защо Apple M1 Chip е толкова бърз? В тази статия научаваме от разработчик какво прави, дори тези Mac от начално ниво, толкова бързи. www.pro-tools-expert.com
С M1 това също е част от SoC. Паметта в M1 е това, което се описва като „унифицирана архитектура на паметта“ (UMA), която позволява на CPU, GPU и други ядра да обменят информация помежду си, а с унифицирана памет CPU и GPU могат да имат достъп до памет едновременно, а не. отколкото копиране на данни между една област и друга.

Опитах се да разгледам металната документация и НЕ виждам къде се изисква промяна в програмирането, както е за Intel iGPU. Отново, ако имате конкретна част от документа, моля, насочете ме към нея. Но всички тези акаунти от разработчици и нищо, което съм виждал досега, ме насочва към същия проблем, който има Intel IGPU.

И знаете, че когато казваме VRAM по отношение на Intel iGPU, всъщност имаме предвид „сегментирана памет, разпределена на GPU от драйвера“. VRAM е кратка и лесна и все пак осъществява разговора. Последна редакция: 1 май 2021 г THE

leman

14 октомври 2008 г
  • 1 май 2021 г
xWhiplash каза: Създавам видео игри, работя с пикселни и върхови шейдъри в Direct X, XNA, MonoGame, Unity, Unreal и др.

А, това е страхотно, така че можем да обсъдим това на техническо ниво.

Редактиране: съжалявам, форумът автоматично вмъква емоджи в URL адресите :/

xWhiplash каза: Имам своя опит, поради което няколко души, които са публикували, че Intel няма този проблем, НЕ знаят, че това е промяна в програмирането - и много хора дори не осъзнават, че това е промяна в програмирането. Не успях да намеря пример, че продължавате да твърдите, че M1 на Apple все още страда от този проблем, и аз търсих дни наред. Не мога да намеря флаговете, необходими за нулев буфер на паметта, както правите за Intel.

Ако искате да имате поведение с нулево копиране, тоест да използвате собственото си разпределение на паметта като GPU буфер, който трябва изрично да използвате makeBuffer(bytesNoCopy:дължина Реакции:Кревник и xWhiplashСледващия

Отиди на страница

ОтивамСледващия Последно