Aufgrund diverser News zum Thema Crysis und Multicore-support (zB hier) wollte ich selbst einmal testen inwiefern Crysis von mehreren Kernen profitiert.
Leider kann ich von meinem Dual Core C2D keinen Kern abschalten, so habe ich auf CPU1 während der "1-Core " Tests SuperPI laufen lassen.
Getestet wurde mit dem System in der Signatur und dem Benchmarktool aus der News.
Anscheinend profitiert Crysis va. in höheren Detailstufen und Auflösung so gut wie gar nicht von mehreren Kernen. Schön zu sehen wäre jetzt natürlich auch der Unterschied zwischen Dual und Quad Core, der ebenso gering ausfallen sollte.
Eigentlich schon schade dass es nach ca. 2 Jahren DualCore immer noch keine grossartigen Vorteile bei einer der neuesten Engines wie Crysis gibt. (Abgesehen dass das System die Prozesse aufteilen kann und somit den anderen Kern entlasten kann). D.h. gegenüber Einkernigen ist der Vorteil sehr deutlich, aber alles was über 2 hinausgeht ist atm für den Spieler uninteressant. Natürlich ist Crysis sehr von der Graka abhängig, aber selbst bei niedrigen Auflösungen gibt der zweite Core ganze 5% Mehrleistung.
kannst auch in der Anwendung zum Taskmanager wechseln und dort von jnkcdnjkcda.exe einen Kern oder mehrere abschalten (Zugehörigkeit festlegen). Die Einstellung geht nach Programmende verloren bzw. ist wieder auf den Ursprünglichen Wert
kannst auch in der Anwendung zum Taskmanager wechseln und dort von jnkcdnjkcda.exe einen Kern oder mehrere abschalten (Zugehörigkeit festlegen). Die Einstellung geht nach Programmende verloren bzw. ist wieder auf den Ursprünglichen Wert
jo das habe ich natürlich schon gemacht sonst teilt das System SuperPI bzw Crysis auf 2 kerne auf.
Es ging um einen Vergleich zwischen einem und zwei Kernen, und um einen Kern zu benchen hat er den zweiten mit SuperPI gestresst, damit Crysis nix davon hat.
Das Motto der Minensucher: Wer suchet, der findet. Wer drauftritt verschwindet.
kannst auch in der Anwendung zum Taskmanager wechseln und dort von jnkcdnjkcda.exe einen Kern oder mehrere abschalten (Zugehörigkeit festlegen). Die Einstellung geht nach Programmende verloren bzw. ist wieder auf den Ursprünglichen Wert
Das hat gegenüber numproc=1 den Vor-/Nachteil (je nachdem, wie man es sieht), dass Crysis den einen Kern komplett zur Verfügung hat und alles andere, insbes. der GraKa-Treiber auf dem anderen laufen kann.
Das verfälscht natürlich das Ergebnis, wenn man testen will, wie der Unterschied zw. Single- und Dual-Core ist (dafür lieber numproc=1), aber wenn man wirklich nur testen will, wie Crysis von 2 Kernen profitiert, ist das natürlich besser, da es dann nicht vom GraKa-Treiber, usw. ausgebremst wird.
Btw: Man kann Programme auch leicht automatisch auf einen Core festnageln lassen. Ich nutze dazu die EasyToolz, die haben außerdem noch einige andere sehr nützliche Funktionen. Kann ich jedem nur empfehlen.
Ich muss übrigens meinen Scanner-Treiber und das Kontrollprogramm meines Routers auf einem Core laufen lassen, da die sich sonst ziemlich verabschieden, trotz Dual-Core-Optimizer.
Jo, bestimmte (kleinere) Verfälschungen sind bei der Methode sicherlich dabei.
Aber Fakt ist dass Crysis noch nicht mal einen Dual Core voll ausnutzt, geschweige denn eine CPU mit noch mehr Kernen.
Dies kann man aufgrund der Tests mit kleinen Auflösungen und Detailstufen, in welchen die Graka nicht den Flaschenhals darstellen sollte, feststellen.
Ich denke ne QuadCore lohnt sich so schnell net, wenn ich mal zurück schau wie lange es jetzt schon die DualCore gibt, und wie groß bisher "nur" der Vorteil gegenüber SingelCore in vielen Anwendungen ist, dann denke ich dass es min. noch ein/zwei Jahr/e dauert bis man vlt von QuadCore wirklich profitieren kann, ich mein, was bringen mir 4 Kerne wenn sie von keiner Anwendung unterstützt werden, und was speziel der Fall von Crysis angeht, so bin ich von der Mehrkehrnoptimierung auch enttäuscht, ich merke da jedenfalls keinen Unterschied, da sowohl unter Singelcore als auch unter Dual/QuadCore, eindeutig die Grafikkarte der limitierende Faktor ist und nicht die CPU wie man nach anfänglichen Berichten von Crytek aus vermuten könnte^^
Hmm aber wenn ich mir nen PC in absehbarer Zeit kaufen würde dann doch eher mit QuadCore, weil soviel unterschied ist im Preis auch nicht und man kauft ja eher die neue Technologie als die alte oder?
Aber ich wunder mich warum der Unterschied so gering ausfällt, wurde nicht vorher groß angesagt das Crysis besonders von QuadCore profitieren würde?
Bin mal gespannt wie das mit Titel wie Alan Wake aussieht, ob die den Mehrkern Vorteil wirklich auszunutzen oder ob das wieder nur marginale Vorteile bringt.
Man sollte aber auch bedenken, dass die aktuellen Intel Quadcore keine "echten" Quadcore sind, sondern nur 2 Dualcore, die ersten nativen Quadcores sind die AMD Phenom X4.
Naja gut das mag sein, nichtsdestotrotz wurde Quadcore unterstützung bekundet und davon abgesehen das genug Zeit war um diese unterstützung zu implementieren scheint es wenig erfolgreich gewesen zu sein wenn man obigen Tests vertrauen schenken darf.
Das bringt mich zu der Frage: Ist es so schwer Quadcores auszunutzen oder ist der Leistungszuwachs so gering (was ich nicht glaube) oder was für Probleme sind da sonst noch ausschlaggebend das der Quad bei einem Spiel das laut Hersteller eben diesen Quad optimiert wurde nur solch geringe Vorteile daraus zieht?
Die Last muss schlichtweg CPU-lastig sein und mehrere threads starten können.
Naja, es muss schon etwas mehr sein. Denn die Last muss auch parallelisierbar sein.
Wenn die Aufgaben zwar viel CPU Power brauchen, jedoch immer voneinander abhängig sind und isch nicht parallel verarbeiten lassen ist essig mit Threads.
naja, nativ hin oder her...
nur weil 2 cores sich 1 Cache teilen muss es ja nicht zwangsläufig bedeuten das die Perfomance sehr drunter leidet.
Im Gegenteil, in ersten Vorabtests ist teilweise selbst der q6600 sogar etwas schneller, trotz der a-nativen Eigenschaften. Auch grob über den Daumen gepeilt kann man sagen das 4 Cores (intel) so etwa die vierfache Leistung ggü eines Einkerners haben.
Bin mit meinen Q6600 sehr zufrieden. Würd mir auch nix anderes mehr kaufen, was weniger als 4 Kerne hat.
In meinem Barebone war eine E4400 Cpu (Steht ja noch zum Verkauf ), aber leistungstechnisch (jaja, ich bin Leistungsgierig) konnte der mich nicht überzeugen. Also der Q6600 hat da einfach mehr Bums hinter.
Bei dem hab ich eher Probleme den mal auszulasten, was bei einem Dualcore bei mir
zur Regel gehörte.
Wo sich noch etwas ergeben hat hier im Forum:
Ich gehe davon aus, das es nicht ohne weiters Möglich ist, die Grafikberechnung auf 2 Core oder so zur verteilen.
Was bei Crysis mal gesagt wurde, so denke ich mich zu erinnern, soll, ist die Berechnung von Physik, Grafik, AI und Sound auf die Kerne verteilt.
So habs mal ausgetestet:
Crysis im Fenstermodus (Alt+Eingabe) und als Test im CPU-Benchmark die 3 restlichen Cores von cyrsis.exe deaktiviert. Nebenher liefen der Taskmanager und Ressourcenanzeige.
Das Resultat waren 25% Auslastung (Der eine überige Kern also mit voller Belastung).
Die Raketen blieben teilweise in der Luft stehen, der Ton ging fast gar nicht.
Das Spiel hatte schlichtweg Fehler.
Bei einem 2 Kern hatte ich stellenweise kurze Tonaussetzer bemerkt. Auslastung ging stellenweise auf etwa 50%.
Dennoch werden scheinbar sogar 4 Kerne benutzt:
Denn die Diagrammunterschied im Taskmanager zwischen 3 und 4 Kernen waren eine etwas gleichmäßigere Verteilung der Lasten zwischen 3 Kernen.
Ein Kern geht mit fast 25% immer voll in die Knie. Der, so vermute ich, wird der für die Grafikberenchnung sein.
Bei höchster Qualität bei Sound und Physik geht die Auslastung bis zu 60% hoch. Bei niedrigster bis zu 40%.
60% Auslastung können keine 2 Kerne bewältigen. Also muss mindestens ein dritter genutzt werden.
Auch grob über den Daumen gepeilt kann man sagen das 4 Cores (intel) so etwa die vierfache Leistung ggü eines Einkerners haben.
Wäre mir neu, dass Intel CPUs nahezu linear skallieren.
Da muss die Anwendung extrem parallelisierbar sein und selbst dann glaube ich nicht, dass x86 Systeme linear skallieren.
Zitat:
Zitat von Prollpower
Ein Kern geht mit fast 25% immer voll in die Knie. Der, so vermute ich, wird der für die Grafikberenchnung sein.
25% <-> voll in die Knie???
Also mit 25% ist eine CPU für micht nicht ausgelastet...
Und die Grafik wird in der GPU berechnet, nicht in der CPU
Wäre mir neu, dass Intel CPUs nahezu linear skallieren.
Da muss die Anwendung extrem parallelisierbar sein und selbst dann glaube ich nicht, dass x86 Systeme linear skallieren.
25% <-> voll in die Knie???
Also mit 25% ist eine CPU für micht nicht ausgelastet...
Und die Grafik wird in der GPU berechnet, nicht in der CPU
Nun es geht mir um gleichgetaktete 1 Kernsysteme ggü Quadcore. Das es nicht wirklich 4x soviel ist, ist mir bewusst. Aber an sich ist er zuwachs schon relativ hoch.
Mit 25% ist für MICH die Cpu auch nicht ausgelastet... aber der EINE Kern, der mit 100% BIS ZUM ANSCHLAG ausgelastet ist... der schon. 4 Kerne... - Bei 100% Gesamtlast machen 25% für jeden Kern. Ok?
Muss da nicht irgendwas sein, was der GPU sagt, was sie zu berechnen hat? Wird sichs doch auch net ausm Finger saugen oder?
Jedenfalls ist ein Kern immer fast voll belastet (25%!) und die anderen variieren in Abhängigkeit von Physik und Sound.
Nun es geht mir um gleichgetaktete 1 Kernsysteme ggü Quadcore. Das es nicht wirklich 4x soviel ist, ist mir bewusst. Aber an sich ist er zuwachs schon relativ hoch.
Mit 25% ist für MICH die Cpu auch nicht ausgelastet... aber der EINE Kern, der mit 100% BIS ZUM ANSCHLAG ausgelastet ist... der schon. 4 Kerne... - Bei 100% Gesamtlast machen 25% für jeden Kern. Ok?
Ehm, du sagst, dass ein Kern auf 100% ist und der rest uqasi Idled und du so auf eine GESAMT auslastung von 25% kommst. Ja, dann ist der einer Kern ausgelastet, nur wieso schreibst du dann vorher sowas:
"Ein Kern geht mit fast 25% immer voll in die Knie."
Da sind die 25% eindeutig auf den Kern bezogen, nicht auf das Gesamtsystem
Thema Skallierung:
Bei nahezu perfekt linearisierbaren Aufgaben (Raytracing zum Beispiel) kommt Intel aktuell bei 16 Kernen auf 15,2 fache Leistung. heise online - Games Convention special - Intel entwickelt Raytracing-Engine für Computerspiele
Das wohlgemerkt bei einer Raytracing Applikation die sich perfekt parallel Rechnen lässt.
Klassische Spiele die "normal" gerastert werden, lassen sich hingegen nicht so gut parallelisieren.
Mensch, Pirke, bist echt ein Krümelkäkerle
Nimm das eben bloss nicht zu ernst...
Eine heutige Grafikkarte ist wohl nicht fürs Raytracen nicht nutzbar... Hab ich mal gehört - also vollkommen CPU lastig.
Rendert man z.b. einen Film kann sich ja ein kern ein Frame schnappen um den zu rendern. Da denke ich liegt eine gute Möglichkeit zu paralisieren.
Konnt nicht ahnen das Du des nicht so verstehen magst.
Sollte eindeutig heissen das die 25% aufs Gesamtsystem bezogen sind.
Also ein Kern läuft auf 100%.
Trotzdem lastet Crysis die anderen Kerne auch aus.
Mir ist nicht klar was Du mit Deiner Linearisierung und dem Kram willst?
Fakt ist, Crysis nutzt 4 Kerne.
Ein Quadcore hat nahezu 4 fache Leistung ggü einem singlecore. Das weisen div. Benchmarks auch nach. Wie sich die Leistung nutzen lässt sei mal dahingestellt. Jedenfalls wäre es möglich.
So ich habe auch mal getestet zwar nur mit der Demo weil ich das Spiel nicht habe, aber ich denke viel wird sich nicht geändert haben.
Getestet wurde mit einem C2D E6750@3200MHz 8800GTS 640MB
Grafikeinstellungen habe ich zurückgedreht,damit das "Nadelöhr" Grafikkarte nicht zu sehr bremst. Eher CPU Lastige Effekte auf high gelassen, damit auch CPU-Last zustandekommt.
Etwas verfälscht wird das ganze da der L2 Cache ja shared ist, dementsprechend der für den 2. Kern gedachte beim Test mitgenutzt wird.
Ich habe Prozessoraffinitäten zugeordnet. Also im Taskmanager direkt gesagt auf welchen CPUs der Prozess rechnen darf.
Beim selberspielen war es kein großer Unterschied, ein Kern ist immer vol ausgelastet, schalte ich den 2. dazu wird der bis zu 10% mitgenutzt.
Aber da hatte ich ja keine dicken Waffen und wenig Physik, also CPU Benchmark an und da sah das dann schon anders aus. Der 2. Kern ist zwischen 50 und 100% ausgelastet. an die 100% kommt er extrem selten und nicht bei jedem Benchmarkdurchlauf, über 90% jedoch öfter.
Es scheint also so das die Physikberechnungen und vielleicht noch ein paar andere kleinere als seperate Threads laufen, dementsprechend von mehr als einem Kern profitieren.
Jedoch reichte bei meinem System der 2. Kern aus um in über 99% der Zeit (auch im CPU Benchmark) keine parallelisierbare CPU Last übrigzulassen.
Die Leistung durch den 2. kern steigert sich von 41-47 FPS auf 71 FPS. Also schon ein recht großer Unterschied. Das ist wohlgemerkt im CPU-Benchmark der Fall, beim selberspielen dürfte das im Durchschnitt unter 10% Framerate ausgemacht haben.
Mehr Kerne auf gleichem Takt hätte also nun in unter 1% der Zeit einen vorteil, solange nicht andere Aufgaben vom Betriebssystem dazukommen.
Wäre die CPU geringer getaktet könnte man spekulieren das öfter ein 3. oder gar 4. Kern genutzt worden wären.
Beim selberspielen bin ich lange nicht an die CPU-Last die im Benchmark verursacht wird rangekommen.
Der Unterschied den Prollpower zwischen seinem E4400 und Q6600 sieht könnte auch aus Takt und Cache resultieren. 2GHz zu 2,4GHz und 2MB Cache zu 8MB Cache.
Also 20% mehr Takt und den 4 fachen L2Cache.