Fòrums

Jocs a la M1

el 8Tark

Cartell original
18 d'abril de 2011
  • 23 d'abril de 2021
En primer lloc, m'agradaria compartir uns quants vídeos de youtube on un noi va provar diversos jocs a M1 (Macbook Pro). Així que el Mini hauria d'aconseguir un rendiment similar i l'iMac, un rendiment lleugerament millor (suposo).

El primer vídeo té 25 jocs provats, que són una gamma de jocs Metal 2 i OpenGL de 64 bits, aplicacions per a iPhone i iPad a Mac i jocs de 32 bits.

Spoiler:feu clic aquí per veure la llista de la majoria dels 25 jocs del vídeo Fronteres 3
Mitja vida 2
World of Warcraft
Shadow of the Tomb Raider
Minecraft
DOTA 2
Bioshock 2: Remasteritzat
Entre nosaltres
F1 Mobile Racing
Stardew Valley (iOS)
Dead Trigger 2
Cavaller de l'ànima
Monument Valley
Stardew Valley (vapor)
Ral·li DiRT
Fronteres 2
Counter-Strike: ofensiva global
Cuphead
La Terra Mitjana: L'ombra de Mordor
Llum moribunda
Hades
El sense camí
Deus Ex: la humanitat dividida
Batman: Arkham City
Els Sims 4

El segon vídeo té 33 jocs provats que són una gamma de jocs arm64, Parallels 16, Rosetta 2 i CrossOver.

Spoiler:feu clic aquí per veure la llista de la majoria dels 33 jocs del vídeo Aïllament alienígena
A Plague Tale: Innocence
BioShock Remastered
The Bard's Tale IV: DC
CS GO
SteamVR
GTA IV
The Elder Scrolls Online
SUPERHOST: MCD
DARK SOULS: REMASTERED
Lladre
Crusader Kings III
CARRIÓ
LEGO: Els increïbles
Fallout 4
Factori
F1 2016
Pathfinder: Kingmaker - EPE
Moto Racer 4
interruptor
Aragami
Perdurar
Els Sims 2
DIA DE PAGAMENT 2
Yooka-Laylee
La llarga foscor
Skul: The Hero Slayer

El tercer vídeo té 32 jocs provats

Spoiler:feu clic aquí per veure la llista de la majoria dels 32 jocs del vídeo Metro Exodus
Camí de l'exili
Spacebase Startopia
Edició Arcade NBA 2K21
Yakuza 0
GWENT: The Witcher Card Game
Febre del transport 2
Gzdoom
Festa de naufragi
Ori i el bosc cec: edició definitiva
Ori i la voluntat dels Wips
Torneig irreal
Frostpunk
Més enllà del blau
L'última foguera
DEVOCIÓ
El principi de Talos
Hellblade: el sacrifici de Senua
Autoestopista
Entra al Gungeon
Valheim
Intrús
Assassin's Creed IV: Black Flag
Disco Elysium: The Final Cut
apòsits
Ciutats: Skylines
Capes de por 2
Nen Narita
Petits malsons

Cap d'aquests jocs és gràfic d'avantguarda o final de 2021, però els dos vídeos aquí us haurien de donar una bona visió general de la capacitat de l'M1 per als jocs. És molt més capaç del que em pensava al principi.
Reaccions:AdamInKent, George Dawes, matrix07 i 1 persona més

Baixos

26 de novembre de 2017


  • 23 d'abril de 2021
L'únic joc que jugo al meu Mac mini és World of Warcraft. I funciona bastant bé, afegeix una resolució respectable a 60 fotogrames per segon al meu M1 Mac mini. No tinc cap queixa pel preu que vaig pagar pel mini.

Apple ha fet un treball fantàstic amb l'M1, i només puc imaginar-me com anirà millor amb els anys a mesura que el millorin. No puc imaginar on estarà la web en quatre o cinc generacions d'aquests processadors.
Reaccions:LeeW, George Dawes i Retrostarscream

haralds

3 de gener de 2014
Silicon Valley, CA
  • 25 d'abril de 2021
El rendiment del joc és sorprenentment bo fins i tot per als jocs de Windows que s'executen amb l'hipervisor de Windows 10 i l'emulació x86.
Reaccions:the8thark, George Dawes i thedocbwarren

George Dawes

Jul 17, 2014
=VH=
  • 29 d'abril de 2021
Imagineu un appletv amb el xip m1!

Llavors realment podrien anomenar Apple Arcade, nivell arcade/consola.
Reaccions:AdamInKent, SigEp265 i the8thark EL

llemà

Oct 14, 2008
  • 29 d'abril de 2021
dmccloud va dir: Utilitzant la lògica 'convencional', el rendiment gràfic de l'M1 no hauria de ser tan bo com és.

Si per lògica convencional et refereixes a la creença popular 'les iGPU són lentes'. És el mateix que 'ARM és lent': només perquè un paradigma s'ha utilitzat tradicionalment per a dispositius de baix cost i baix rendiment, no vol dir que no es pugui utilitzar per construir un dispositiu d'alt rendiment.

M1 té un potencial excel·lent per al rendiment dels jocs, sobretot si els jocs utilitzin les seves característiques úniques. El TBDR d'Apple permet simplificar i racionalitzar radicalment l'ús de codi i recursos per a molts enfocaments de representació moderns. Les GPU tradicionals requereixen que salteu per cèrcols no evidents quan feu algunes coses, amb els dispositius d'Apple es pot fer un passeig pel parc.

dmccloud va dir: No obstant això, això es basa en veure les coses a través del paradigma x86 (Intel), on les iGPU són, en el millor dels casos, una brossa calenta, completament inutilitzables en cas contrari. UMA té un paper important en això, ja que tant la CPU com la GPU poden accedir a les mateixes dades simultàniament en lloc d'haver de copiar les dades tant al sistema com a les particions iGPU i conciliar els canvis fets en ambdues còpies.

UMA és molt menys important per als jocs (que, per exemple, per al programari de creació de contingut), perquè és molt rar que els jocs requereixin accés a les dades tant de la CPU com de la GPU. La gran majoria dels jocs utilitzen la CPU com a àrea de preparació per configurar recursos que després es copien i s'utilitzen a la GPU. Això és.

I algunes notes més:

- Només el fet de tenir UMA no vol dir que no hagis de copiar les dades. La funcionalitat de còpia zero requereix l'ús explícit d'API especialitzades i necessita que configureu les vostres dades d'una manera molt particular. Els jocs simplement no es molesten amb això. Així que encara heu de copiar les dades, és que la còpia en si és molt més ràpida (obtéu una amplada de banda completa de 68 + GBps en lloc de 15 GBps de PCI-e 3.0 16x que s'utilitza a les GPU de jocs de gamma alta)

- Les iGPU Intel (i AMD) fa anys que utilitzen UMA. La seva topologia de memòria és pràcticament idèntica a la d'Apple (la memòria d'accés a la CPU i la GPU a través d'una memòria cau d'últim nivell compartida). Apple simplement té controladors de memòria molt més capaços (i també mides de memòria cau de GPU a nivell d'escriptori): optimitzen el rendiment i l'eficiència aquí i no costen com altres proveïdors.
Reaccions:thekev, falainber, JMacHack i 1 persona més S

eix

Oct 5, 2020
  • 29 d'abril de 2021
leman va dir: - Les iGPU Intel (i AMD) fa anys que utilitzen UMA. La seva topologia de memòria és pràcticament idèntica a la d'Apple (la memòria d'accés a la CPU i la GPU a través d'una memòria cau d'últim nivell compartida). Apple simplement té controladors de memòria molt més capaços (i també mides de memòria cau de GPU a nivell d'escriptori): optimitzen el rendiment i l'eficiència aquí i no costen com altres proveïdors.
Les iGPU intel i amd no fan servir UMA en absolut.

Les seccions iGPU d'Intel i AMD d'una part de la memòria RAM del sistema que s'utilitzaran com a vRAM, la resta del sistema no pot accedir a aquesta part de la memòria RAM només la GPU pot accedir-hi.

Aquest no és el cas amb UMA, amb UMA tot el sistema té accés a tota la memòria RAM en tot moment.

I pel que fa als jocs que 'no fan ús d'UMA' no té res a veure amb els jocs i tot a veure amb els controladors gràfics. El joc només crida mitjançant l'API al controlador de gràfics, el controlador ordena el maneig de la memòria.
Reaccions:cal6n i dmccloud EL

llemà

Oct 14, 2008
  • 29 d'abril de 2021
Spindel va dir: cap intel i les iGPU amd no fan servir UMA en absolut.

Les seccions iGPU d'Intel i AMD d'una part de la memòria RAM del sistema que s'utilitzaran com a vRAM, la resta del sistema no pot accedir a aquesta part de la memòria RAM només la GPU pot accedir-hi.

Això és simplement incorrecte. La documentació d'Intel indica clarament que les seves iGPU que comencen almenys amb Sandy Bridge (si no recordo malament) utilitzen UMA i exposen extensions de dades de CPU/GPU de còpia zero a OpenCL que funcionen de manera idèntica a la funcionalitat de còpia zero d'Apple Metal.

Spindel va dir: I pel que fa als jocs que 'no fan ús d'UMA', no té res a veure amb els jocs i tot a veure amb els controladors gràfics. El joc només crida mitjançant l'API al controlador de gràfics, el controlador ordena el maneig de la memòria.

Això torna a estar equivocat (almenys pel que fa al tema). Les API gràfiques requereixen que copieu les dades manualment (ja sigui proporcionant un punter de dades per endavant o utilitzant API de còpia/mapeig). Així que UMA o no UMA, si utilitzeu alguna cosa com MTLBuffer.contents() o MTLTexture.replace() sempre esteu fent una còpia de memòria des de l'emmagatzematge assignat per la vostra aplicació a l'emmagatzematge assignat pel controlador. Heu d'utilitzar MTLDevice.makeBuffer(bytesNoCopy: ) si voleu un comportament de còpia zero.

En resum: només perquè el vostre sistema tingui UMA, no vol dir que totes les còpies de dades es puguin eliminar màgicament.
Reaccions:Krevnik

dmccloud

set 7, 2009
Anchorage, AK
  • 29 d'abril de 2021
Leman va dir: Això és simplement incorrecte. La documentació d'Intel indica clarament que les seves iGPU que comencen almenys amb Sandy Bridge (si no recordo malament) utilitzen UMA i exposen extensions de dades de CPU/GPU de còpia zero a OpenCL que funcionen de manera idèntica a la funcionalitat de còpia zero d'Apple Metal.



Això torna a estar equivocat (almenys pel que fa al tema). Les API gràfiques requereixen que copieu les dades manualment (ja sigui proporcionant un punter de dades per endavant o utilitzant API de còpia/mapeig). Així que UMA o no UMA, si utilitzeu alguna cosa com MTLBuffer.contents() o MTLTexture.replace() sempre esteu fent una còpia de memòria des de l'emmagatzematge assignat per la vostra aplicació a l'emmagatzematge assignat pel controlador. Heu d'utilitzar MTLDevice.makeBuffer(bytesNoCopy: ) si voleu un comportament de còpia zero.

En resum: només perquè el vostre sistema tingui UMA, no vol dir que totes les còpies de dades es puguin eliminar màgicament.

Independentment de com ho digui Intel, encara no és cert UMA. Aneu a Best Buy i mireu qualsevol dels ordinadors portàtils que es mostren només amb gràfics integrats. Veureu que diuen alguna cosa com '8 GB de RAM (6,03 GB disponibles). Això és perquè encara estan particionant la memòria RAM física en particions virtuals de CPU/iGPU. A Intel li agrada enganyar o fins i tot mentir en els seus materials de màrqueting i de vegades tècnics. Quan van anunciar les seves CPU d'11a generació, només van comparar la seva iGPU (que en realitat era només un canvi de marca dels gràfics 'UMA' utilitzats a les parts de 9a i 10a generació) amb els AMD Vega 4 i l'nVidia MX250 (que ja havia estat substituït per el MX350) en un intent de demostrar que els seus gràfics eren superiors. Un grup de nosaltres vam veure aquella presentació a la feina i vam fer trossos Intel per la quantitat de declaracions enganyoses que van agrupar en una presentació pregravada de 47 minuts.
Reaccions:dahlblom X

x Esquitxat

Col·laborador
Oct 21, 2009
  • 29 d'abril de 2021
L'M1 supera o competeix amb el GTX 1050 Ti que encara és el número 2 a l'enquesta de maquinari de Steam.

Enquesta de maquinari i programari de Steam
Realment espero que quan arribi al gran Mac Pro, que la GPU sigui bastant competitiva. Intentar aconseguir fins i tot un RTX 3060 és impossible. X

x Esquitxat

Col·laborador
Oct 21, 2009
  • 29 d'abril de 2021
Leman va dir: Això és simplement incorrecte. La documentació d'Intel indica clarament que les seves iGPU que comencen almenys amb Sandy Bridge (si no recordo malament) utilitzen UMA i exposen extensions de dades de CPU/GPU de còpia zero a OpenCL que funcionen de manera idèntica a la funcionalitat de còpia zero d'Apple Metal.
Si llegiu el document, ha de ser un canvi de programació. Quants programes tenen aquest canvi?

software.intel.com

Aconseguir el màxim profit d'OpenCL™ 1.2: com augmentar el rendiment mitjançant...

Descàrregues Descàrrega Aconseguint el màxim profit d'OpenCL™ 1.2: Com augmentar el rendiment minimitzant les còpies de memòria intermèdia a Intel® Proce software.intel.com
Per crear buffers de còpia zero, feu una de les accions següents:

Utilitzeu CL_MEM_ALLOC_HOST_PTR i deixeu que el temps d'execució gestioni la creació d'un buffer d'assignació de còpies zero per a vosaltres

Si ja teniu les dades i voleu carregar-les en un objecte de memòria intermèdia d'OpenCL, feu servir CL_MEM_USE_HOST_PTR amb una memòria intermèdia assignada a un límit de 4096 bytes (alineat amb un límit de línia de pàgina i memòria cau) i una mida total múltiple de 64 bytes (mida de línia de memòria cau).

Quan llegiu o escriviu dades a aquests buffers des de l'amfitrió, utilitzeu clEnqueueMapBuffer(), opereu a la memòria intermèdia i, a continuació, truqueu clEnqueueUnmapMemObject(). Aquest document conté mostres de codi per demostrar les pràctiques més conegudes a les plataformes Intel®.
J

JouniS

22 de novembre de 2020
  • 29 d'abril de 2021
Espero que la M1 segueixi sent bona durant els propers anys o dos. Quan acabi l'escassetat de components, molta gent disposarà de consoles i GPU de la generació actual, i es dissenyaran nous jocs per aprofitar el maquinari més ràpid. Aleshores, una GPU M1 de 16 nuclis seria de gamma baixa i 32 nuclis serien de gamma mitjana.

Sempre hi ha un salt intencionat en els requisits de maquinari un temps després del llançament d'una nova generació de consoles. Si les consoles antigues encara fossin adequades per a jocs nous, hi hauria poques raons per comprar nous models. D'altra banda, com que el temps entre generacions de consoles és d'aproximadament 7 anys, qualsevol maquinari que sigui bo després del salt es mantindrà durant molts anys. EL

llemà

Oct 14, 2008
  • 30 d'abril de 2021
dmccloud va dir: Independentment de com ho digui Intel, encara no és cert UMA. Aneu a Best Buy i mireu qualsevol dels ordinadors portàtils que es mostren només amb gràfics integrats. Veureu que diuen alguna cosa com '8 GB de RAM (6,03 GB disponibles). Això és perquè encara estan particionant la memòria RAM física en particions virtuals de CPU/iGPU.

Així és com funciona el model del conductor. Òbviament, una part de memòria està reservada per a propòsits de GPU. No és tan diferent amb M1: podeu consultar la quantitat de memòria GPU disponible i el nombre que obteniu no és la memòria RAM total del sistema. Això és només una qüestió d'informes/'comptabilitat' i té poc a veure amb la pròpia UMA. La memòria unificada significa que la GPU i la CPU poden accedir físicament (i lògicament) a la mateixa memòria d'una manera coherent amb la memòria cau, i qualsevol model raonable Intel iGPU té aquesta capacitat.

dmccloud va dir: A Intel li agrada enganyar o fins i tot mentir en el seu màrqueting...

Ah, en què podem estar absolutament d'acord. A Intel el màrqueting li agrada ser, com dir-ho... 'optimista'. Però des del punt de vista tècnic, les GPU Intel són dispositius força interessants i no poc sofisticats. Tenen capacitats de càlcul molt flexibles.

xWhiplash va dir: Si llegiu el document, ha de ser un canvi de programació. Quants programes tenen aquest canvi?

Exactament el mateix per a Apple Silicon. Si voleu un comportament de còpia zero, heu d'utilitzar una API específica i assegureu-vos que assigneu la memòria d'una manera determinada.
Reaccions:thekev

LeeW

Feb 5, 2017
Sobre el turó i lluny
  • 30 d'abril de 2021
Lowhangers va dir: L'únic joc que jugo al meu Mac mini és World of Warcraft. I funciona bastant bé, afegeix una resolució respectable a 60 fotogrames per segon al meu M1 Mac mini. No tinc cap queixa pel preu que vaig pagar pel mini.

Apple ha fet un treball fantàstic amb l'M1, i només puc imaginar-me com anirà millor amb els anys a mesura que el millorin. No puc imaginar on estarà la web en quatre o cinc generacions d'aquests processadors.

També sóc jo, només jugo a WoW casualment i entro i surt de Retail/Classic quan el temps ho permet. Es juga des de l'any 2006, però no feu més incursions, només gaudiu d'una mica de recerca i passejant pel món.

Funciona increïble a l'M1 Mac Mini, en comparació amb els meus dispositius anteriors de 2014 i 2018. 45-60 FPS en una configuració màxima de 3440 x 1440 @ amb un lleuger ajust a les ombres, amb prou feines s'escalfa i ho maneja bé. X

x Esquitxat

Col·laborador
Oct 21, 2009
  • 30 d'abril de 2021
Leman va dir: Exactament el mateix per a Apple Silicon. Si voleu un comportament de còpia zero, heu d'utilitzar una API específica i assegureu-vos que assigneu la memòria d'una manera determinada.
No és així com funciona. Apple Silicon té accés a tots els 16 GB de RAM. No hi ha VRAM separada, però encara n'hi ha per a Intel iGPU.
Reaccions:dmccloud

Hessel89

set 27, 2017
Països Baixos
  • 30 d'abril de 2021
Basant-me en les puntuacions de geekbench, esperava un rendiment similar a un AMD RX 560.
Sembla ser exactament el cas a la majoria de jocs, amb l'única diferència que puc establir la distància de dibuix al màxim absolut a l'M1. (gràcies als 16 GB de memòria RAM unificada)

Amb els jocs habilitats per a Metal 2, però, és un joc de pilota completament diferent!
Puc jugar a X-plane 11 a 2560 x 1440 amb tot configurat a Ultra/Alt i encara estic aconseguint un sòlid de 30 a 40 fps.
Això és realment millor que el que està obtenint un amic meu amb el seu RTX 2060. Tot i això, mantenint-se completament en silenci!

No hauria de ser tan potent, però d'alguna manera ho és...
Reaccions:Homy EL

llemà

Oct 14, 2008
  • 30 d'abril de 2021
xWhiplash va dir: Això no és com funciona. Apple Silicon té accés a tots els 16 GB de RAM. No hi ha VRAM separada, però encara n'hi ha per a Intel iGPU.

No conec cap limitació de memòria a les iGPU Intel. Tant els dispositius Intel com Apple accedeixen a la memòria del sistema mitjançant la mateixa memòria cau d'últim nivell i el mateix controlador de memòria. Tota la memòria Intel GPU és visible i coherent amb la memòria cau amb la CPU i viceversa. Tant els dispositius Intel com Apple GPU poden accedir directament a les assignacions de memòria del sistema (còpia zero) mitjançant API d'activació.

Qualsevol informe de 'mida de VRAM', etc. que pugueu veure són limitacions específiques del controlador o del sistema operatiu. Pel que sé, el controlador Intel GPU pot ajustar aquestes llistes de forma dinàmica, Apple Silicon utilitza límits naturals molt alts des del principi. Tots dos reserven una certa quantitat de RAM per a la GPU. S

eix

Oct 5, 2020
  • 30 d'abril de 2021
leman va dir: No conec cap limitació de memòria a les iGPU Intel. Tant els dispositius Intel com Apple accedeixen a la memòria del sistema mitjançant la mateixa memòria cau d'últim nivell i el mateix controlador de memòria. Tota la memòria Intel GPU és visible i coherent amb la memòria cau amb la CPU i viceversa. Tant els dispositius Intel com Apple GPU poden accedir directament a les assignacions de memòria del sistema (còpia zero) mitjançant API d'activació.

Qualsevol informe de 'mida de VRAM', etc. que pugueu veure són limitacions específiques del controlador o del sistema operatiu. Pel que sé, el controlador Intel GPU pot ajustar aquestes llistes de forma dinàmica, Apple Silicon utilitza límits naturals molt alts des del principi. Tots dos reserven una certa quantitat de RAM per a la GPU.
Sí, és cert que la mida del vram es pot ajustar dinàmicament amb intel igpus.
Però no enteneu el punt, la resta del sistema encara no pot accedir a la vram assignada. Per tant, si teniu una entitat gràfica que necessita un posicionament (realitzat per la CPU), aquesta entitat ha de residir tant a la memòria RAM com a la memòria RAM del sistema. Com que la CPU ha de fer-hi els seus càlculs i com que no pot accedir a la vram, necessita una còpia a la memòria RAM del sistema (tot això molt simplificat)

amb UMA, tant la CPU com la GPU poden accedir a la mateixa adreça de memòria. EL

llemà

Oct 14, 2008
  • 30 d'abril de 2021
Spindel va dir: Però no enteneu el punt, la resta del sistema encara no pot accedir al vram assignat. Per tant, si teniu una entitat gràfica que necessita un posicionament (realitzat per la CPU), aquesta entitat ha de residir tant a la memòria RAM com a la memòria RAM del sistema. Com que la CPU ha de fer-hi els seus càlculs i com que no pot accedir a la vram, necessita una còpia a la memòria RAM del sistema (tot això molt simplificat)

Això és simplement incorrecte. No hi ha 'VRAM' amb les iGPU Intel o AMD modernes. La CPU i la GPU poden accedir a la mateixa memòria física. Com he escrit abans, la CPU i la GPU comparteixen la memòria cau i els controladors de memòria.

Si no em creieu, mireu les agrupacions de memòria Vulkan disponibles per a aquests dispositius (mitjançant vkGetPhysicalDeviceMemoryProperties). Només els grups de memòria que ofereixen són accessibles tant pel dispositiu (GPU) com per l'amfitrió (CPU).

Spindel va dir: amb UMA, tant la CPU com la GPU poden accedir a la mateixa adreça de memòria.

Precisament. És per això que estic desconcertat que afirmeu que Intel no és UMA. Així és exactament com funcionen les iGPU Intel.

dmccloud

set 7, 2009
Anchorage, AK
  • 30 d'abril de 2021
Leman va dir: Això és simplement incorrecte. No hi ha 'VRAM' amb les iGPU Intel o AMD modernes. La CPU i la GPU poden accedir a la mateixa memòria física. Com he escrit abans, la CPU i la GPU comparteixen la memòria cau i els controladors de memòria.

Si no em creieu, mireu les agrupacions de memòria Vulkan disponibles per a aquests dispositius (mitjançant vkGetPhysicalDeviceMemoryProperties). Només els grups de memòria que ofereixen són accessibles tant pel dispositiu (GPU) com per l'amfitrió (CPU).



Precisament. És per això que estic desconcertat que afirmeu que Intel no és UMA. Així és exactament com funcionen les iGPU Intel.

Amb les iGPU Intel, la memòria RAM es divideix en dues particions virtuals: una que s'utilitza com a memòria RAM del sistema, l'altra està dedicada a la iGPU. Així, un ordinador portàtil HP o Dell que s'enviï amb 8 GB de RAM només tindrà entre 6 i 7,5 GB de RAM disponibles per als programes perquè la resta s'assigna únicament a la iGPU. A més, la CPU només pot accedir a les dades escrites a la partició del sistema i les dades escrites a la partició de la GPU només són accessibles per l'iGPU. És per això que l'ús que fa Intel del terme 'UMA' és enganyós en el millor dels casos. Amb l'M1, Apple ha concedit accés complet a tot l'espai d'adreces de memòria tant als nuclis de la CPU com de la GPU. Per a les aplicacions on s'utilitzen tant la GPU com la CPU (molts MMO, inclòs World of Warcraft s'ajusten a aquest criteri), les dades s'han de copiar a les dues particions del costat de Windows i, a continuació, conciliar els canvis abans de realitzar qualsevol sortida. Amb l'M1, tant els nuclis de la CPU com de la GPU poden accedir i modificar les dades simultàniament . Això accelera el rendiment general perquè el pas de conciliació ja no és necessari. EL

llemà

Oct 14, 2008
  • 30 d'abril de 2021
dmccloud va dir: Amb les iGPU Intel, la memòria RAM es divideix en dues particions virtuals: una que s'utilitza com a memòria RAM del sistema, l'altra està dedicada a la iGPU. Així, un ordinador portàtil HP o Dell que s'enviï amb 8 GB de RAM només tindrà entre 6 i 7,5 GB de RAM disponibles per als programes perquè la resta s'assigna únicament a la iGPU. A més, la CPU només pot accedir a les dades escrites a la partició del sistema i les dades escrites a la partició de la GPU només són accessibles per l'iGPU. És per això que l'ús que fa Intel del terme 'UMA' és enganyós en el millor dels casos.

D'on tens aquesta informació? Això és contrari a tota la documentació tècnica i al comportament de l'API que conec. Pel que fa a la 'partició virtual', això és només la memòria RAM reservada per a l'ús de la GPU. Els sistemes d'Apple també ho fan. X

x Esquitxat

Col·laborador
Oct 21, 2009
  • 1 de maig de 2021
Leman va dir: D'on tens aquesta informació? Això és contrari a tota la documentació tècnica i al comportament de l'API que conec. Pel que fa a la 'partició virtual', això és només la memòria RAM reservada per a l'ús de la GPU. Els sistemes d'Apple també ho fan.
De nou, és un canvi de programació. L'execució d'un joc antic del 2005 en una iGPU Intel moderna encara haurà de fer una còpia a la memòria de l'iGPU. En realitat, heu d'indicar al codi que voleu zero memòria intermèdia.

Com que Apple no té una VRAM iGPU dedicada, aquest problema no es produeix. No té aquesta separació.

Si us plau, mostra on els sistemes Apple mostren seccions dedicades de RAM NOMÉS per a GPU. Tinc un Mac mini M1 aquí i no trobo on indica només 1 o 2 GB de VRAM disponible. EL

llemà

Oct 14, 2008
  • 1 de maig de 2021
xWhiplash va dir: De nou, és un canvi de programació. L'execució d'un joc antic del 2005 en una iGPU Intel moderna encara haurà de fer una còpia a la memòria de l'iGPU. En realitat, heu d'indicar al codi que voleu zero memòria intermèdia.

I de nou, és el mateix quan utilitzeu Metall o qualsevol altra API de GPU. Estic molt confós pel que fa al que estàs intentant dir.

Si us plau, no ho prengui malament, però només he de preguntar en aquest punt: quina és la vostra experiència amb la programació de GPU? No em sembla que estigueu massa familiaritzat amb les API gràfiques.

xWhiplash va dir: Com que Apple no té una VRAM iGPU dedicada, aquest problema no es produeix. No té aquesta separació.

Per descomptat que sí. Consulteu la documentació del metall. Tota l'API bàsica assumeix que esteu copiant dades als buffers de memòria assignats pel controlador. Si voleu aconseguir una funcionalitat de còpia zero, heu d'utilitzar API especialitzades (com dieu, és un canvi de programació). Crec que és com la cinquena vegada que ho menciono. S'està tornant una mica frustrant.

xWhiplash va dir: Si us plau, mostreu on els sistemes Apple mostren seccions dedicades de RAM NOMÉS per a la GPU. Tinc un Mac mini M1 aquí i no trobo on indica només 1 o 2 GB de VRAM disponible.

La VRAM disponible és només una mica de la informació que us proporciona el controlador/el sistema operatiu. Intel iGPU no té cap VRAM. Tenen memòria del sistema gestionada pel controlador de la GPU. Igual que Apple. La resta és només el comportament del conductor. Un controlador Intel a Windows pot limitar l'ús màxim de RAM de la GPU a 4 GB més o menys (sincerament, no ho sabria), Apple és més flexible. X

x Esquitxat

Col·laborador
Oct 21, 2009
  • 1 de maig de 2021
leman va dir: Si us plau, no t'ho prenguis malament, però en aquest punt només he de preguntar: quina és la teva experiència amb la programació de GPU? No em sembla que estigueu massa familiaritzat amb les API gràfiques.
Creo videojocs, treballo amb ombrejats de píxels i vèrtex a Direct X, XNA, MonoGame, Unity, Unreal i molt més. Tinc la meva experiència i és per això que diverses persones que han publicat dient que Intel no té aquest problema NO saben que és un canvi de programació, i molta gent ni tan sols es va adonar que era un canvi de programació. No he pogut trobar un exemple que continuïs afirmant que l'M1 d'Apple encara pateix aquest problema i he buscat durant dies. No puc trobar els indicadors necessaris per al buffer de memòria zero com ho feu per a Intel. Així que, si us plau, indica'm la direcció correcta en lloc de dir-ho només 5 vegades. Si teniu la prova, m'agradaria llegir-la. NO he vist cap prova que l'M1 encara tingui la seva pròpia assignació de memòria GPU dedicada. TOT el que he llegit i TOTA la documentació que he vist indica que la GPU M1 pot accedir a TOTS els 8 GB o els 16 GB de la memòria unificada.

He vist desenes de discussions i opinions de desenvolupadors com aquesta:

Per què el xip Apple M1 és tan ràpid - explica un desenvolupador | Expert en producció

Potser us heu preguntat per què el xip Apple M1 és tan ràpid? En aquest article, aprenem d'un desenvolupador què fa que, fins i tot aquests Mac d'entrada, siguin tan ràpids. www.pro-tools-expert.com
Amb l'M1, això també forma part del SoC. La memòria de l'M1 és el que es descriu com una 'arquitectura de memòria unificada' (UMA) que permet que la CPU, la GPU i altres nuclis intercanviïn informació entre ells, i amb la memòria unificada, la CPU i la GPU poden accedir a la memòria simultàniament en lloc de que copiar dades entre una àrea i una altra.

He intentat mirar la documentació metàl·lica i NO veig on es requereix un canvi de programació com ho és per a Intel iGPU. De nou, si teniu una part específica del document, si us plau, indica'm-la. Però tots aquests comptes de desenvolupadors, i res del que he vist fins ara, m'indica el mateix problema que té Intel IGPU.

I sabeu que quan diem VRAM pel que fa a Intel iGPU, en realitat ens referim a 'memòria segmentada assignada a la GPU pel controlador'. La VRAM és curta i fàcil i encara aconsegueix la conversa. Última edició: 1 de maig de 2021 EL

llemà

Oct 14, 2008
  • 1 de maig de 2021
xWhiplash va dir: Creo videojocs, treballo amb ombrejats de píxels i vèrtex a Direct X, XNA, MonoGame, Unity, Unreal i molt més.

Ah, això és genial, així que podem parlar d'això a nivell tècnic.

Edita: ho sento, el fòrum insereix emojis als URL automàticament :/

xWhiplash va dir: Tinc la meva experiència i és per això que diverses persones que han publicat dient que Intel no té aquest problema NO saben que és un canvi de programació, i moltes persones ni tan sols es van adonar que era un canvi de programació. No he pogut trobar un exemple que continuïs afirmant que l'M1 d'Apple encara pateix aquest problema i he buscat durant dies. No puc trobar els indicadors necessaris per al buffer de memòria zero com ho feu per a Intel.

Si voleu tenir un comportament de còpia zero, és a dir, utilitzeu la vostra pròpia assignació de memòria com a memòria intermèdia de GPU, heu d'utilitzar explícitament makeBuffer(bytesNoCopy:longitud Reaccions:Krevnik i xWhiplashPròxim

Ves a la pàgina

VésPròxim Darrer