Tämän hetkiset PCIe 4.0 SSD:t ei tarjoa minkäänlaista suorituskykyparannusta pelikäytössä

Ei tuossa ole mitään uutta. Pelit ovat paskoja eivätkä osaa käyttää hyväksi SSD:n suurempaa nopeutta. Niin yksinkertaista se on. Esim. Assasins Cree Odysseyssä pelin käynnistys kestää kevyet 54 sekuntia.

:facepalm:
 
Tuon phison piirin valmistajakin toteaa, että ko piiri ei ole mitenkään nopeusihme ja nopeampi on tulossa ensivuonna.

PCIe4:n hyötyjä kannattaa katsella uudestaan joskus vuoden - 2 vuoden päästä..
 
PCIe4:n hyötyjä kannattaa katsella uudestaan joskus vuoden - 2 vuoden päästä..

Edes kovassa kuluttajakäytössä voi kyllä ronskisti viisinkertaistaa tuon aikaikkunan... Pci-e 3 tuskin kuristaa vielä seuraavaan sukupolven ökynäytönohjaintakaan ja käsitykseni mukaan se on erittäin marginaalinen HC-videoneditoijaporukka, jolle levyjen nopeus muodostaa pullonkaulan workstation käytössä. Serveripuolella sitten toki huomattavasti etuja luvassa heti
 
Ei tuossa ole mitään uutta. Pelit ovat paskoja eivätkä osaa käyttää hyväksi SSD:n suurempaa nopeutta. Niin yksinkertaista se on. Esim. Assasins Cree Odysseyssä pelin käynnistys kestää kevyet 54 sekuntia.

:facepalm:
Kyse lienee siitä, että pelidata on tallennettu siten, että prosessorin pitää käsitellä sitä aika paljon, ennen kuin peli saadaan pyörimään. Jos peli optimoitaisiin käynnistysajan kannalta, pelidata voisi viedä moninkertaisesti tallennustilaa. En nyt tiedä, että olisiko sekään kovin toivottava tilanne, varsinkin kun nopeimmat SSD:t ovat gigaa kohden varsin kalliita.

Siirtonopeusero SATA SSD:n ja NVMe PCIe 3.0 4x:n välillä on 6-kertainen, mutta silloinkin nopeuseroa näyttää syntyvän vain pari sekuntia:
Game Load Time Benchmarking - Shootout With Six SSDs and One HDD - Legit Reviews
 
Ainoa mihin itse kaipaisin ylipäätään m.2 nopeuksia olisi (virtuaali)koneiden suspend / wake up. Siinä levy on ehdottomasti rajoittavana tekijänä.

Tällä hetkellä mennään siis 2x sata raid0. Maksiminopeus reilu giga sekunnissa.

En kyllä ymmärrä miksi aina halutaan "pelikäytössä" vertailuja. Ihan kuin nopea vs nopea olisi juuri mitään eroa kun kaikki pullonkaulat muualla. Sama kuin murossa ollut "testataan cpu nopeuksia pelaamalla 4K ja ultralla". 100€ prossun ja 600€ prossun ero oli 0%. :)

Toki moni pelaaja varmasti googlettaa että onko pelikäytössä hyötyä, joten heille tuo "ei ole" riittää hyvin vastaukseksi. :)
 
Edes kovassa kuluttajakäytössä voi kyllä ronskisti viisinkertaistaa tuon aikaikkunan... Pci-e 3 tuskin kuristaa vielä seuraavaan sukupolven ökynäytönohjaintakaan ja käsitykseni mukaan se on erittäin marginaalinen HC-videoneditoijaporukka, jolle levyjen nopeus muodostaa pullonkaulan workstation käytössä. Serveripuolella sitten toki huomattavasti etuja luvassa heti

Tuo nyt vähän riippuu, miten sitä CPU:tä käytetään avuksi. Jos sillä lasketaan muutakin, kuin pelkkää grafiikkaa ruudulle, niin edes PCIe4 ei riitä vaan on selkeä pullonkaula, jos dataa pitää siirtää edestakaisin näyttiksen muistin ja keskusmuistin välillä.

Lisäksi esim nuo m2 SSD:t kehittyvät kyllä ja kiintolevyhän ei ole ikinä liian nopea. Eli ei tuota voi missään nimessä moninkertaistella...

Samoin, jos piirisarja liitetään nöpelösti 4X PCIe väylällä prossuun, niin siellä on myös erittäin tervetullut lisä tuo nopeus..

Ja jos harrastaa läppärissä jotain näyttistelakkaa, niin eiköhän siinäkin näyttis ole esim jonkun 4X väylän päässä, joka on syytä olla mahdollisimman nopea, jotta näyttiksen suorituskyky kärsii mahdollisimman vähän.
 
Lisäksi esim nuo m2 SSD:t kehittyvät kyllä ja kiintolevyhän ei ole ikinä liian nopea.
Kovalevyssä on monta muutakin suorituskykyyn vaikuttavaa asiaa kuin pelkkä raaka siirtonopeus. Esim. tuossa aiemmin linkittämässäni jutussa selvänä ykkösenä oli Intelin 900p Optane (jolla silläkin saatiin vain noin 20% nopeutus latausaikoihin verrattuna SATA SSD:hen ja 10% NVMe PCIe SSD:hen), vaikka sen maksimisiirtonopeus ei olekaan paras mahdollinen. Syynä menestykseen lienee loistava random read -suorituskyky.
 
Tuo nyt vähän riippuu, miten sitä CPU:tä käytetään avuksi. Jos sillä lasketaan muutakin, kuin pelkkää grafiikkaa ruudulle, niin edes PCIe4 ei riitä vaan on selkeä pullonkaula, jos dataa pitää siirtää edestakaisin näyttiksen muistin ja keskusmuistin välillä.

Kuinka yleistä CPU+GPU laskeminen nyt sitten todella on workstationkäytössä? Näyttiskiihdytystä kyllä käytetään monissa tilanteissa, mutta silloin käsitykseni mukaan jutut ovat näyttiksen muistissa eikä edestakaista liikennettä ole niin paljoa, että väylä olisi rajoittava tekijä

Lisäksi esim nuo m2 SSD:t kehittyvät kyllä ja kiintolevyhän ei ole ikinä liian nopea. Eli ei tuota voi missään nimessä moninkertaistella...

Ei ole koskaan liian nopea, mutta teoriassa kymmenkertaiseen nopeuteen kykenevä nvme levy on käytännön sovelluksessa 10% nopeampi kuin vanhaan SATA II liitäntään kytketty tavallinen SSD, niin voidaan olla aika varmoja, että kaista ei ole kriittinen piste. Tämä on siis todellisuus pelien ja ohjelmien latausajoissa. Sitten jos paljon siirrellään isoja tiedostoja levyltä toiselle, niin tietysti nopeampi on aina nopeampi. En kuitenkaan näe kovin yleisenä sellaista tilannetta, että nvme-asemalta toiselle siirettäisiin yhtenään tiedostoja, vaan kyllä niitä yleensä pusketaan kiintolevylle paikallisesti tai verkon yli ja silloin pullonkaula on se HDD tai ehkä jossain tapaukisssa SATA-liitäntä.

Samoin, jos piirisarja liitetään nöpelösti 4X PCIe väylällä prossuun, niin siellä on myös erittäin tervetullut lisä tuo nopeus..
Ja jos harrastaa läppärissä jotain näyttistelakkaa, niin eiköhän siinäkin näyttis ole esim jonkun 4X väylän päässä, joka on syytä olla mahdollisimman nopea, jotta näyttiksen suorituskyky kärsii mahdollisimman vähän.

Nämä on kyllä erittäin legittejä pointteja. Veikkaan noiden näyttistelakoiden saavan entistä enemmän jalansijaa uusien liitäntöjen (USB4 ja pci-e 4) avulla. Itseäni ainakin houkuttaa jonkin verran joku kelpoläppäri ilman erillistä näyttistä ja se, etä siitä voi tehdä lanikoneen tuolla tavalla. Toki noi telakat maksaa vielä jotain 200€, joka ei houkuta, mutta aikanaan...
 
Kyse lienee siitä, että pelidata on tallennettu siten, että prosessorin pitää käsitellä sitä aika paljon, ennen kuin peli saadaan pyörimään. Jos peli optimoitaisiin käynnistysajan kannalta, pelidata voisi viedä moninkertaisesti tallennustilaa. En nyt tiedä, että olisiko sekään kovin toivottava tilanne, varsinkin kun nopeimmat SSD:t ovat gigaa kohden varsin kalliita.

Siirtonopeusero SATA SSD:n ja NVMe PCIe 3.0 4x:n välillä on 6-kertainen, mutta silloinkin nopeuseroa näyttää syntyvän vain pari sekuntia:
Game Load Time Benchmarking - Shootout With Six SSDs and One HDD - Legit Reviews

Suurin osa datasta mitä ladataan muistiin peliä ladattaessa on tekstuureita ja shadereitä nämä ovat usein pakattu, jonka cpu pitää purkaa lataamisen jälkeen. Ongelma on se, että pelien tekstuuri ja shaderi pakkaus on usein optimoitu HDD lataamiselle ei nopeille SSD. HDD näet hyötvät siitä, että lataamista on vähemmän ja cpu tapahtuvaa pakkauksen purkua enemmän kun ssd pitäisi olle käytössä löysä pakkaus tai muuten cpu pakkauksen purku jumittaa latausaikoja.

Toki muitakin syitä sille miksi pelit eivät pysty hyödyntämään täyttä nopeutta SSD lataamisesta on se, että nykyisten käyttöjärjestelmien tiedostojärjestelmiä ei ole optimoitu SSD käyttöön eikä niitä oikein voida muuttaakaan, koska muuten menee taaksepäinyhteensopivuus suurimman osan softien kanssa ja tuollaiset muutokset todennäköisesti lisäisivät helvetisti kaikkia pahoja bugeja ja tiedostojärjestelmä korruptioita. Tiedostojärjestelmissä on valtavasti juttuja jotka olivat relevantteja vain HDD aikana ja SSD joutuvat kikkailemaan erilaisten virtuaali osotteiden kanssa saadakseen yhteensopivuuden.

Tosin pelinkehittäjät voisivat kyllä enemmän panostaa siihen, että käyttäjä voi valita peliä asentaessaan optimoidaanko tekstuurit ja shaderit SSD lataukselle vai HDD. En ole vielä missään pelissä edes 100 miljoonan AAA rated peleissä nähdyt tälläistä mahdollisuutta.
 
Tavallinen sata ssd levy riittää pelien asennukseen ja pcie 4.0 ei tarjoa mitään hyötyä tavalliselle käyttäjälle.
 
Viimeksi muokattu:
Suurin osa datasta mitä ladataan muistiin peliä ladattaessa on tekstuureita ja shadereitä nämä ovat usein pakattu, jonka cpu pitää purkaa lataamisen jälkeen.

Jos tekstuurit on pakattu jollain normaalilla tekstuurinpakkausalgoritmilla, CPUn ei tarvitse purkaa niitä, vaan ne menee näyttikselle asti pakatussa muodossa, ja näyttis purkaa sen lennossa ja joka kerta uudestaan sitä tekstuuria piirtäessään.

Toki ne voi tämän lisäksi olla pakattu myös jollain toisella paremman pakkaussuhteen pakkausalgoritmilla joka puretaan peliä käynnistettäessä.

Ja shader-koodien tilanvienti on täysin olematonta. Koko pelin shaderit ei yleensä vielä edes lähellekään yhtä megatavua.

Ongelma on se, että pelien tekstuuri ja shaderi pakkaus on usein optimoitu HDD lataamiselle ei nopeille SSD. HDD näet hyötvät siitä, että lataamista on vähemmän ja cpu tapahtuvaa pakkauksen purkua enemmän kun ssd pitäisi olle käytössä löysä pakkaus tai muuten cpu pakkauksen purku jumittaa latausaikoja.

Ei, vaan ne on optimoitu mahtumaan järkevään tilaan. Ei viemään ziljoonaa gigatavua tilaa.

Ja enemmän näissä latausajoissa kyse on siitä, että datat on levyllä hajallaan missä sattuu, ja massamuisteilla on pitkät hakuajat. Ja tässä nimenomaan kovalevy on vielä paljon pahempi kuin SSD.

Toki muitakin syitä sille miksi pelit eivät pysty hyödyntämään täyttä nopeutta SSD lataamisesta on se, että nykyisten käyttöjärjestelmien tiedostojärjestelmiä ei ole optimoitu SSD käyttöön eikä niitä oikein voida muuttaakaan, koska muuten menee taaksepäinyhteensopivuus suurimman osan softien kanssa ja tuollaiset muutokset todennäköisesti lisäisivät helvetisti kaikkia pahoja bugeja ja tiedostojärjestelmä korruptioita. Tiedostojärjestelmissä on valtavasti juttuja jotka olivat relevantteja vain HDD aikana ja SSD joutuvat kikkailemaan erilaisten virtuaali osotteiden kanssa saadakseen yhteensopivuuden.

NAND-flash-muisti ei eroa kovalevystä tämän osalta mitenkään muuten kuin sen optimaalisen blokkikoon osalta, ja kaikkien yleisimpien tiedostojärjestelmien blokkikoko on vapaasti säädettävissä.

Eli ei, tällaista ongelmaa ei ole.


Tällaisia ongelmia tulee vasta siinä vaiheessa kun käytetään jotain tavuosoitettavaa ja pienemmissä lohkoissa kirjoitettavaa massamuistityyppiä (Optane)

Vain Optane-muisti kärsii tällä hetkellä huomattavissa määrin tällaisista rajoitteista; Vain sen kanssa saataisiin selvästi suurempaa nopeutta erilaisilla tiedostojärjestelmillä.

Tosin pelinkehittäjät voisivat kyllä enemmän panostaa siihen, että käyttäjä voi valita peliä asentaessaan optimoidaanko tekstuurit ja shaderit SSD lataukselle vai HDD. En ole vielä missään pelissä edes 100 miljoonan AAA rated peleissä nähdyt tälläistä mahdollisuutta.

Oletat nyt täysin virheellisen syyn sille pakkaamiselle.

Peli pakataan sille DVDlle tai verkon yli siirrolle jotta se peli mahtuisi sinne DVDlle ja veisi mahdollisimman vähän kaistaa kun se siirretään verkon yli.

Ja pelin datatiedostoja säilytetään pakattussa muodossa asennuksen jälkeenkin jotta se mahtuu paremmin sinne massamuistille.

Ja SSDt keskimäärin ovat pienempiä kuin kovalevyt, joten SSDn kanssa se pakkaaminen on vielä tärkeämpää.


Joku hibernatesta herääminen ja koneen meneminen hibernatelle on käytännössä ainoa normaali käyttötiilanne, jossa levyn nopeutta rajoittaa tiedonsiirtonopeus eikä hakuaika.


Eli, pelintekijän eivät lisää tätä optiota koska se ei tekisi mitään järkevää.

Siinä vaiheessa sen sijaan kun Optane ja sitä fiksusti tukevat tiedostojärjestelmtä yleistyvät, tällainen optio muuttuu hyvin tärkeäksi.
 
Viimeksi muokattu:
  • Tykkää
Reactions: jsa
Ja shader-koodien tilanvienti on täysin olematonta. Koko pelin shaderit ei yleensä vielä edes lähellekään yhtä megatavua.

Tuota noin shaderit pitää kääntää, joka vie paljon laskentaresursseja eikä peli lataudu ennenkuin shaderit on käännetty. Kehotan googlaamaan "shader compilation", että ei tarvitse ihan mutu tuntumalta inttää vastaan. Se on ihan sama vaikka shaderit ovat pieniä tiedostoja jos niitä käännetään useita sekunteja latautumisen jälkeen. Jokainen sekunti jonka kone kääntää shadereita lisää latausaikaa suuremmaksi. Jolloin se nopea SSD ei tee mitään sillä aikaa kun shadereitä käännetään sellaiseen muotoon, että GPU pystyy optimoimaan ne.

Ei pelin lataaminen ole pelkkää data siirtoa, jossa vain pienikokoiset tiedostot merkitsevät vaan siihen liittyy paljon muita teknisiä juttuja mitä pitää tehdä, jotka vaikuttavat siihen kuinka kauan kestää "latautua", että peli on pelattavissa.
 
Tuota noin shaderit pitää kääntää, joka vie paljon laskentaresursseja eikä peli lataudu ennenkuin shaderit on käännetty. Kehotan googlaamaan "shader compilation", että ei tarvitse ihan mutu tuntumalta inttää vastaan.

Kumpikohan tässä sitä mutua oikein inttää...

Minä satun työkseni sekä
1) Opettamaan Tampereen (ei-enää-teknillisen) yliopiston kurssia, jolla opetetaan mm. OpenCL-koodausta että
2) Koodaamaan kääntäjää, jolla käännetään koodia hyvin matalan tason prosessoriarkkitehtuur(e)ille
... joten tiedän kyllä shader-koodien kääntämisestä aika paljon sinua enemmän.

Se, että shader-koodin kääntämiseen voi joskus merkittävä määrä aikaa, ei tee niistä "suurta osaa datasta" kuten edellisessä viestissäsi väitit.

Ja pakkauksen purkaminen ja koodin kääntäminen ovat aivan eri asioita. Edellisessä viestissäsi höpisit jostain "shaderi paukkauksesta"

koneenkokoaja sanoi:
Suurin osa datasta mitä ladataan muistiin peliä ladattaessa on tekstuureita ja shadereitä

...

Ongelma on se, että pelien tekstuuri ja shaderi pakkaus on usein optimoitu HDD lataamiselle ei nopeille SSD.

Se on ihan sama vaikka shaderit ovat pieniä tiedostoja jos niitä käännetään useita sekunteja latautumisen jälkeen. Jokainen sekunti jonka kone kääntää shadereita lisää latausaikaa suuremmaksi. Jolloin se nopea SSD ei tee mitään sillä aikaa kun shadereitä käännetään sellaiseen muotoon, että GPU pystyy optimoimaan ne.

... mutta tällä ei ole mitään tekemistä sen kanssa, että optimoidaanko data latautumaan nopeasti SSDltä vai HDDltä.

Useimmilla rajapinnoilla käännetyt shader-koodit voisi kyllä tallettaa levylle tiedostoon ja ladata sieltä, mutta tästä tulisi ongelmia mm. silloin jos/kun A) vaihdetaan näyttistä B) päivitetään näyttisten ajurit. Koska se kääntäjä sattuu olemaan niissä ajureissa, halutaan kääntää uusiksi koska uusien ajureiden kääntäjällä suorituskyky voi olla parempi, ja lisäksi eri ajuriversiolla tehty käännös edes välttämättä aina ole yhteensopiva toisen ajuriversion kanssa samallakaan näyttiksellä. Molemmat ongelmat on toki helposti ratkaistavissa, mutta vaivaa näistä tulee.

Ei pelin lataaminen ole pelkkää data siirtoa, jossa vain pienikokoiset tiedostot merkitsevät vaan siihen liittyy paljon muita teknisiä juttuja mitä pitää tehdä, jotka vaikuttavat siihen kuinka kauan kestää "latautua", että peli on pelattavissa.

Minä tiedän aika paljon sinua paremmin, mitä kaikkea ne "muut tekniset jutut" ovat.

Aika paljon kyse on myös siitä, että rakennetaan erilaisia kiihdytystietorakenteita. Esim. kenttää ladatessa lasketaan etukäteen sitä, mitkä alueet pelikentästä voi olla näkyvissä mistäpäin pelikenttää, jolloin kameran ollessa tietyssä paikassa tiettyjä kolmioita ei tarvi ollenkaan piirtää koska ne eivät voi mitenkään näkyä. Useimmat näistäkin voisi rakentaa jo pelin installointivaiheessa ja ladata levyltä datan mukana, mutta niin ei usein tehdä, koska
1) tämä veisi voisi viedä paljon levytilaa
2) on helpompaa rakentaa nämä tietorakenteet peliä tai kenttää ladatessa kuin rakentaa niille lataus- ja talletuskoodi.
 
Kumpikohan tässä sitä mutua oikein inttää...

Minä tiedän aika paljon sinua paremmin, mitä kaikkea ne "muut tekniset jutut" ovat.

Ok laita jotain näytteitä siitä mitä grafiikkarajapinta juttuja olet tehnyt kun kerran olet tuollainen asiantuntija, joka tietää telepaattina senkin mitä muut osaavat.

Olen täällä palstalla jo aikaisemminkin esitellyt grafiikkarajapinta koodaus projektejani ohjelmointi osiossa:
Eternal Space Alpha Build

Jos taas haluat jotain juupas eipäs väittelyä jossa vain väitetään asioita ilman mitään työnäytteitä niin sitten tämä keskustelu oli kyllä tässä. Ei millään pahalla, mutta ei niin hyvälläkään. :D
 

Uusimmat viestit

Statistiikka

Viestiketjuista
261 734
Viestejä
4 545 475
Jäsenet
74 839
Uusin jäsen
kalalintu

Hinta.fi

Back
Ylös Bottom