Staralem sie najprosciej jak mozliwe ale widze nie skumales, przenalaizuj jeszcze raz moj wywod, a jak to nic nie da drugi i trzeci Gpu bedzie mialo wiecej do wyliczenia ale te dodatkowe kilka milisekund ktore bedzie potrzebowac zwiekszy iilosc fpsow bo cpu robilo by to kilkakrotnie razy dluzej.
czego oczekujesz od kogoś kto nie zna realnego wykorzystanie zasobów sprzętowych tylko pisze że tyle myśli że jest a może być w błędzie. A dodatkowo ocenia gry tylko przez pryzmat grafiki i to żę są na nowym silniku który co by tu dużo nie mówiąc wygląda na skopany
Na pewno nie ma różnicy dla GPGPU, że ps4 ma 8 ACE ( 64 kolejki ) a xbox one dwie ( 16 kolejek ).
Przyjmując prosto Twoje obliczeniowe porównania +300%.
Snc Ci to bardzo prosto przedstawił, ale jak widać nie rozumiesz...
Podejście drugie
Załóżmy CPU czas - 15ms
GPU - 20ms
Po wprowadzeniu GPGPU :
Część fizyki na GPU + dotychczasowa robota - 22ms ( bo gpu zrobi to w 2ms a cpu potrzebuję 6ms )
CPU - 9ms
I już masz lekko ponad 30 fps przy zachowaniu tej samej rozdzielczości..
@skoti48
W takim razie po co w ogóle ci CPU w konsoli? Nie wystarczyłoby GPU z odpowiednio uniwersalnymi SPU? Podaj przykład zadania 'growego', które potrafi świetnie działać na xCPU, ale zupełnie nie nadaje się dla GPU.
CPU potrzebne jest do odczytu danych z dysku, do działania systemu operacyjnego, odczytywanie danych input (pad), system dzwięku, i do zarządzania kernelami/shaderami dla GPU.... reszta może być bardzo skutecznie przeniesiona na GPU (tak jak w PS3 na SPU). I właśnie na tym polega trick nowej generacji konsol - one upatrują swojego długiego życia w GPGPU.
Początkowo CPU jest wykorzystywane jeszcze standardowo jak w starych konsolach, ale za 2 lata CPU będzie najmniej znaczącą rzeczą w konsoli.
Assassin @ 2015.01.06 15:27
Ja nie jestem programistą, bazuję tylko na obserwacjach i widzę:
- że nawet w grach reklamowanych jako wielowątkowe nierzadko wąskim gardłem jest wydajność jednego rdzenia,
- nowe konsole nie radzą sobie szczególnie w miejscach uchodzących za domenę CPU, choć ich sumaryczna teoretyczna wydajność wszystkich rdzeni CPU jest nie najgorsza.
- W grach na PC tak jest - ale ze względu na ograniczenie DirectX'a, który generuje duży narzut na główny wątek i jeden wątek jest tam problemem. Inaczej jest w OpenGL gdzie ten narzut jest minimalny (przez co mimo, że na jednym wątku to nie przeszkadza) czy w Mantle, który jest zbudowany od podstaw wielowątkowo.
- Nowe konsole są jeszcze w powijakach - Compute shadery na PS4 zostały dopiero udostępnione (jeszcze nie ma gier ich wykorzystujących), a Xbox jeszcze w praktyce nie ma niskopoziomowego API i powoli jego API ewoluuje. Obecnie w grach wykorzystywane jest CPU tam gdzie zaraz zastąpi go GPU, ale obecnie nie brakuje wcale wydajności jednego wątku... brakuje wydajności w sumie (te 6x rdzeni w konsolach dla gier mogą mocą sumaryczną konkurować z telefonami, a nie z PC).
Assassin @ 2015.01.06 15:27
Swoją drogą swego czasu w świecie tzw. kryptowalut chciano koniecznie wymyślić algorytm działający dobrze na wielowątkowych CPU, ale zupełnie nienadający się dla współczesnych GPU. I wiesz co? Prędzej czy później zawsze ktoś wymyślił sposób, aby na GPU leciało to dużo szybciej
No pewnie, że tak - GPU to masa słabych rdzeni - nie powinno więc cię dziwić, że wielowątkowe programy działają tu szybciej, gdy wydajność GPU wynosi ponad 10x i7 Haswelli (a te mają 5x większą wydajność 8x rdzeni jaguara)?
KazH @ 2015.01.06 16:07
Zaskoczę się jeżeli jakaś część Assasina w tej generacji będzie szybsza na PS4 pomimo słabego CPU. Raczej na 100% coś takiego nie będzie miało miejsca. Bo zasoby sprzętowe są stałe. Jeżeli przeznaczyliby 30% GPU na to by równoważyć słabsze CPU to wiązałoby się to z kolejnym spadkiem rozdzielczości. Taki Assassin na PS4 zamiast w 900p musiałby działać w 720p jeżeli część GPU poszłaby na obliczenia wspomagające CPU. Bo to obieg zamknięty. By gdzieś dodać to gdzieś indziej trzeba odjąć.
To po raz kolejny się zaskoczysz. Gdy tylko symulacje tłumu przerzucą na GPGPU to Xbox One powinien mocno odstawać od PS4.
O jakich ty przeznaczonych 30% mówisz? To tak nie działa. Po pierwsze 5% wydajności GPU w PS4 jest wydajniejsze niż cała wydajność procesora w Xbox One już po odblokowaniu siódmego rdzenia. Po drugie obecnie problemem jest to, że GPU większość czasu w AC:U nic nie robi tylko czeka... aż CPU obliczy dane. W wypadku gdy obliczenia przeniesie się do GPU wydajność się nie obniży tylko podniesie (GPU nie będzie się opierdzielało czekając na dane). W praktyce może to oznaczać podniesienie rozdzielczości (bo gdy obliczenia na które czeka GPU zrobią się 20x szybciej to i GPU będzie miało więcej czasu na rendering).
@up
Tylko wychodzisz z założenia, że GPU czeka na procesor, a co jeśli sytuacja jest odwrotna i to CPU czeka na GPU?
To nie założenie, a po pierwsze oparcie się na słowach twórców, którzy mówią, że u nich w AC:U wąskim gardłem jest CPU, oraz na wynikach wydajności PS4 vs Xbox One (które mówią jasno, że CPU zabiera dużo milisekund z ramki, a obliczenia na GPU w bardzo małym stopniu wpływają na czas klatki).
SunTzu @ 2015.01.06 21:51
Hmmm.... ile CUDA jest na rynku 7 lat? i wciąż najwięcej rzeczy w grach na GPU powstało od tada ... NV. W 2 lata raczej nie przerzucą obliczeń na GPU.
Większość rzeczy dziś się robi na GPU. Od Nvidii mamy tylko PhysX (który i tak nie potrafił do niedawna liczyć na GPU RigidBody, bo na CPU było szybciej...). To jest nowy rynek który się rozwija. Jednak należy powiedzieć jasno - większość rzeczy które 7 lat temu robiło się na CPU, obecnie robi się na GPU (ofc dodatkowo już nie przetwarza się postprocess w pixel shaderach, a w compute shaderach, ale to zmiana typu RSX->SPE w PS3). Zostały nieliczne rzeczy do robienia na CPU.
Teraz dzięki Keplerowi (pełnemu więc tylko HiEnd i Maxwele)/GCN przyszła kolej na przeniesienie reszty, bo obecnie GPU to prawie zwykłe CPU, które potrafią sobie same generować zadania co sprawia, że obecnie nie ma problemu z reszty (poza komunikacją z padem, kartą dzwiękową...).
Witam i co nadal będziesz się upierał że project cars wygląda lepiej
Nowe materiały z project cars i nadal wygląda mizernie przy tych efektach co ma DriveClub o otoczeniu nie wspominając.
W prezentacji SDK Sony GPGPU napisane jest, że nie mogą przerzucić obliczeń związanych z logiką gry. Jakie to są konkretnie obliczenia ( poza rzeczami które wymieniłeś wcześniej dźwięk itd. ) ? A np AI, animacje ?
W prezentacji SDK Sony GPGPU napisane jest, że nie mogą przerzucić obliczeń związanych z logiką gry. Jakie to są konkretnie obliczenia ( poza rzeczami które wymieniłeś wcześniej dźwięk itd. ) ? A np AI, animacje ?
Logika gry to warstwa 'skryptowa' (chociaż nie zawsze realizowana skryptowo, ale jest to wygodne i obliczeniowo tak nieistotne, że niektóre gry używają powolnego pythona czy lua (przykładowo CryEngine) - a są one dziesiątki/setki razy wolniejsze niż kod natywny) i nie tyle musi co nie ma sensu przenosić na GPU, bo obliczeniowo jest nieistotna, a z GPU ciężko by było przykładowo karcie dźwiękowej przekazać, że ma zagrać dany dźwięk ;p (nie tyle niemożliwe, ale bezsensowne). Logika gry decyduje o tym co się dzieje - przykładowo 'jeśli jesteś w okolicy X to graj tą muzykę' czy 'jeśli zabiłeś X to niech zawali się most'... logika jest ważna, ale obliczeniowo nieistotna, w niej też często zapisuje się frontend AI i przykładowo 'jeśli masz się gdzie ukryć to się ukryj' - jednak te obliczenia nie są robione w logice, a przekazywane przez język skryptowy do mechaniki gry (a ta liczy na GPU czy jest miejsce gdzie może się ukryć, i wylicza najkrótszą ścieżkę jaką może iść i co ma robić).
AI i animacja to nie jest logika, a mechanika. Animacja na CPU już od lat jest ograniczona do minimum. Ostatnia duża gra o której pamiętam, że liczyła animacje siatki na CPU to Doom 4. Od tamtego czasu tym zajmuje się GPU w Vertex Shaderach (CPU robił kilka mnożeń macierzy na kość i tyle przy animacji liczy... ale to też niektóre silniki już przeniosły do GPGPU). AI w większości grach jest na CPU... jednak przyczyną tego jest to, że w PC mamy mocne procki... które nie wiele mają w grze do roboty, a w konsolach x360/ps3 trzeba było robić to na CPU, teraz jednak konsole wymuszą przeniesienie praktycznie całego obliczeniowo żernego balastu na GPU (wyszukiwanie najkrótszej ścieżki w grafie, przeszukiwanie siatek nawigacyjnych to dla GPU banalna zabawa, gdy CPU się mocno męczą), a po stronie CPU logika będzie tylko sterowała co ma teraz GPU jej obliczyć i wypluć gotowe dane.
Staralem sie najprosciej jak mozliwe ale widze nie skumales, przenalaizuj jeszcze raz moj wywod, a jak to nic nie da drugi i trzeci
czego oczekujesz od kogoś kto nie zna realnego wykorzystanie zasobów sprzętowych tylko pisze że tyle myśli że jest a może być w błędzie. A dodatkowo ocenia gry tylko przez pryzmat grafiki i to żę są na nowym silniku który co by tu dużo nie mówiąc wygląda na skopany
Na pewno nie ma różnicy dla GPGPU, że ps4 ma 8 ACE ( 64 kolejki ) a xbox one dwie ( 16 kolejek ).
Przyjmując prosto Twoje obliczeniowe porównania +300%.
Snc Ci to bardzo prosto przedstawił, ale jak widać nie rozumiesz...
Podejście drugie
Załóżmy CPU czas - 15ms
GPU - 20ms
Po wprowadzeniu GPGPU :
Część fizyki na GPU + dotychczasowa robota - 22ms ( bo gpu zrobi to w 2ms a cpu potrzebuję 6ms )
CPU - 9ms
I już masz lekko ponad 30 fps przy zachowaniu tej samej rozdzielczości..
Dalej nie rozumiesz ?
W takim razie po co w ogóle ci CPU w konsoli? Nie wystarczyłoby GPU z odpowiednio uniwersalnymi SPU? Podaj przykład zadania 'growego', które potrafi świetnie działać na xCPU, ale zupełnie nie nadaje się dla GPU.
CPU potrzebne jest do odczytu danych z dysku, do działania systemu operacyjnego, odczytywanie danych input (pad), system dzwięku, i do zarządzania kernelami/shaderami dla GPU.... reszta może być bardzo skutecznie przeniesiona na GPU (tak jak w PS3 na SPU). I właśnie na tym polega trick nowej generacji konsol - one upatrują swojego długiego życia w GPGPU.
Początkowo CPU jest wykorzystywane jeszcze standardowo jak w starych konsolach, ale za 2 lata CPU będzie najmniej znaczącą rzeczą w konsoli.
- że nawet w grach reklamowanych jako wielowątkowe nierzadko wąskim gardłem jest wydajność jednego rdzenia,
- nowe konsole nie radzą sobie szczególnie w miejscach uchodzących za domenę CPU, choć ich sumaryczna teoretyczna wydajność wszystkich rdzeni CPU jest nie najgorsza.
- W grach na PC tak jest - ale ze względu na ograniczenie DirectX'a, który generuje duży narzut na główny wątek i jeden wątek jest tam problemem. Inaczej jest w OpenGL gdzie ten narzut jest minimalny (przez co mimo, że na jednym wątku to nie przeszkadza) czy w Mantle, który jest zbudowany od podstaw wielowątkowo.
- Nowe konsole są jeszcze w powijakach - Compute shadery na PS4 zostały dopiero udostępnione (jeszcze nie ma gier ich wykorzystujących), a Xbox jeszcze w praktyce nie ma niskopoziomowego API i powoli jego API ewoluuje. Obecnie w grach wykorzystywane jest CPU tam gdzie zaraz zastąpi go GPU, ale obecnie nie brakuje wcale wydajności jednego wątku... brakuje wydajności w sumie (te 6x rdzeni w konsolach dla gier mogą mocą sumaryczną konkurować z telefonami, a nie z PC).
No pewnie, że tak - GPU to masa słabych rdzeni - nie powinno więc cię dziwić, że wielowątkowe programy działają tu szybciej, gdy wydajność GPU wynosi ponad 10x i7 Haswelli (a te mają 5x większą wydajność 8x rdzeni jaguara)?
Zaskoczę się jeżeli jakaś część Assasina w tej generacji będzie szybsza na PS4 pomimo słabego CPU. Raczej na 100% coś takiego nie będzie miało miejsca. Bo zasoby sprzętowe są stałe. Jeżeli przeznaczyliby 30% GPU na to by równoważyć słabsze CPU to wiązałoby się to z kolejnym spadkiem rozdzielczości. Taki Assassin na PS4 zamiast w 900p musiałby działać w 720p jeżeli część GPU poszłaby na obliczenia wspomagające CPU. Bo to obieg zamknięty. By gdzieś dodać to gdzieś indziej trzeba odjąć.
To po raz kolejny się zaskoczysz. Gdy tylko symulacje tłumu przerzucą na GPGPU to Xbox One powinien mocno odstawać od PS4.
O jakich ty przeznaczonych 30% mówisz? To tak nie działa. Po pierwsze 5% wydajności GPU w PS4 jest wydajniejsze niż cała wydajność procesora w Xbox One już po odblokowaniu siódmego rdzenia. Po drugie obecnie problemem jest to, że GPU większość czasu w AC:U nic nie robi tylko czeka... aż CPU obliczy dane. W wypadku gdy obliczenia przeniesie się do GPU wydajność się nie obniży tylko podniesie (GPU nie będzie się opierdzielało czekając na dane). W praktyce może to oznaczać podniesienie rozdzielczości (bo gdy obliczenia na które czeka GPU zrobią się 20x szybciej to i GPU będzie miało więcej czasu na rendering).
Tylko wychodzisz z założenia, że GPU czeka na procesor, a co jeśli sytuacja jest odwrotna i to CPU czeka na GPU?
Hmmm.... ile CUDA jest na rynku 7 lat? i wciąż najwięcej rzeczy w grach na GPU powstało od tada ... NV. W 2 lata raczej nie przerzucą obliczeń na GPU.
Tylko wychodzisz z założenia, że GPU czeka na procesor, a co jeśli sytuacja jest odwrotna i to CPU czeka na GPU?
To nie założenie, a po pierwsze oparcie się na słowach twórców, którzy mówią, że u nich w AC:U wąskim gardłem jest CPU, oraz na wynikach wydajności PS4 vs Xbox One (które mówią jasno, że CPU zabiera dużo milisekund z ramki, a obliczenia na GPU w bardzo małym stopniu wpływają na czas klatki).
Większość rzeczy dziś się robi na GPU. Od Nvidii mamy tylko PhysX (który i tak nie potrafił do niedawna liczyć na GPU RigidBody, bo na CPU było szybciej...). To jest nowy rynek który się rozwija. Jednak należy powiedzieć jasno - większość rzeczy które 7 lat temu robiło się na CPU, obecnie robi się na GPU (ofc dodatkowo już nie przetwarza się postprocess w pixel shaderach, a w compute shaderach, ale to zmiana typu RSX->SPE w PS3). Zostały nieliczne rzeczy do robienia na CPU.
Teraz dzięki Keplerowi (pełnemu więc tylko HiEnd i Maxwele)/GCN przyszła kolej na przeniesienie reszty, bo obecnie GPU to prawie zwykłe CPU, które potrafią sobie same generować zadania co sprawia, że obecnie nie ma problemu z reszty (poza komunikacją z padem, kartą dzwiękową...).
Witam i co nadal będziesz się upierał że project cars wygląda lepiej
Nowe materiały z project cars i nadal wygląda mizernie przy tych efektach co ma DriveClub o otoczeniu nie wspominając.
PC vs DC nowe porównanie
https://www.youtube.com/watch?v=KyZo6cmtkwI
A tu co mamy skąd ta mgiełka w środku samochodu przecież to nie kabriolet to samo tyczy się promieni słonecznych gdzie w bijają się do środka tak jakby samochód nie miał szyb ech...
https://www.youtube.com/watch?v=KAOyd9enJ2g#t=13
To jest ten twój lepszy realizm dajcie spokój DC to coś miażdży jak chce
DC
https://www.youtube.com/watch?v=u5AB3MxjjCQ
Dziękuje do widzenia nie ma o czym dalej dyskutować.
Nie, że lepiej, a bardziej realistycznie... jednak ty chyba nigdy nie zrozumiesz różnicy.
W prezentacji SDK Sony GPGPU napisane jest, że nie mogą przerzucić obliczeń związanych z logiką gry. Jakie to są konkretnie obliczenia ( poza rzeczami które wymieniłeś wcześniej dźwięk itd. ) ? A np AI, animacje ?
W prezentacji SDK Sony GPGPU napisane jest, że nie mogą przerzucić obliczeń związanych z logiką gry. Jakie to są konkretnie obliczenia ( poza rzeczami które wymieniłeś wcześniej dźwięk itd. ) ? A np AI, animacje ?
Logika gry to warstwa 'skryptowa' (chociaż nie zawsze realizowana skryptowo, ale jest to wygodne i obliczeniowo tak nieistotne, że niektóre gry używają powolnego pythona czy lua (przykładowo CryEngine) - a są one dziesiątki/setki razy wolniejsze niż kod natywny) i nie tyle musi co nie ma sensu przenosić na GPU, bo obliczeniowo jest nieistotna, a z GPU ciężko by było przykładowo karcie dźwiękowej przekazać, że ma zagrać dany dźwięk ;p (nie tyle niemożliwe, ale bezsensowne). Logika gry decyduje o tym co się dzieje - przykładowo 'jeśli jesteś w okolicy X to graj tą muzykę' czy 'jeśli zabiłeś X to niech zawali się most'... logika jest ważna, ale obliczeniowo nieistotna, w niej też często zapisuje się frontend AI i przykładowo 'jeśli masz się gdzie ukryć to się ukryj' - jednak te obliczenia nie są robione w logice, a przekazywane przez język skryptowy do mechaniki gry (a ta liczy na GPU czy jest miejsce gdzie może się ukryć, i wylicza najkrótszą ścieżkę jaką może iść i co ma robić).
AI i animacja to nie jest logika, a mechanika. Animacja na CPU już od lat jest ograniczona do minimum. Ostatnia duża gra o której pamiętam, że liczyła animacje siatki na CPU to Doom 4. Od tamtego czasu tym zajmuje się GPU w Vertex Shaderach (CPU robił kilka mnożeń macierzy na kość i tyle przy animacji liczy... ale to też niektóre silniki już przeniosły do GPGPU). AI w większości grach jest na CPU... jednak przyczyną tego jest to, że w PC mamy mocne procki... które nie wiele mają w grze do roboty, a w konsolach x360/ps3 trzeba było robić to na CPU, teraz jednak konsole wymuszą przeniesienie praktycznie całego obliczeniowo żernego balastu na GPU (wyszukiwanie najkrótszej ścieżki w grafie, przeszukiwanie siatek nawigacyjnych to dla GPU banalna zabawa, gdy CPU się mocno męczą), a po stronie CPU logika będzie tylko sterowała co ma teraz GPU jej obliczyć i wypluć gotowe dane.