Archiv verlassen und diese Seite im Standarddesign anzeigen : Multi-Core der falsche Weg?
mapel110
2010-04-30, 01:28:53
http://www.forbes.com/2010/04/29/moores-law-computing-processing-opinions-contributors-bill-dally.html
Da spricht allerdings der sicher nicht unbefangene Chief Scientist von nvidia.
To continue scaling computer performance, it is essential that we build parallel machines using cores optimized for energy efficiency, not serial performance. Building a parallel computer by connecting two to 12 conventional CPUs optimized for serial performance, an approach often called multi-core, will not work. This approach is analogous to trying to build an airplane by putting wings on a train. Conventional serial CPUs are simply too heavy (consume too much energy per instruction) to fly on parallel programs and to continue historic scaling of performance.
Der meint also viele, kleinere, spezialisierte "Cores" wären besser?! Aber die gibts ja gerade auf der GPU auch nicht. Da ist man ja auch erst kürzlich weg von VS und PS hin zu USC.
Neomi
2010-04-30, 04:04:33
Multi-Core ist nicht wirklich der falsche Weg, sondern geht bloß noch nicht weit genug. Gemeint sind wohl auch keine spezialisierten Cores, sondern simplifizierte Cores (und davon deutlich mehr -> Many-Core), wie hier z.B. beschrieben:
http://www.drdobbs.com/go-parallel/article/showArticle.jhtml?articleID=219200099
Der Artikel lohnt sich wirklich. Kurz zusammengefaßt:
Many-Core mit simplen Cores hat deutlich weniger serielle Leistung pro Core. Das deshalb, weil die ganze Out-of-Order-Execution, Prefetch-Logik, Sprungvorhersage und andere Dinge entfallen, also all die dicken (aus Transistorcount-Sicht) Performance-Booster. Dadurch wird jeder Core viel kleiner, so daß deutlich mehr davon auf den Die passen. Die serielle Leistung ist dann mies, weil die ganzen Latenzen nicht mehr durch die Hardware versteckt werden können, die Recheneinheiten können von einem Thread nicht mehr ansatzweise ausgelastet werden. Aber dank deutlich mehr Hardware-Threads pro Core (z.B. 8 statt 2 wie momentan bei Intels Hyperthreading) können diese dann doch wieder ausgelastet werden, so daß ein vergleichsweise winziger Core mit 8 Threads in etwa die Performance eines jetzigen dicken Cores mit zwei Threads erreicht.
Mal angenommen, in einem Quad-Core wird jeder BC (Big Core) mit 2 HW-Threads auf gleicher Fläche durch 8 SCs (Small Cores) mit je 8 HW-Threads ersetzt, von denen jeder bei Vollauslastung durch die HW-Threads die Performance eines BC erreichen kann. Dann hätte man mit 4 BCs insgesamt 4x2, also 8 Threads zu füttern. Mit SCs (insgesamt 32 auf gleicher Fläche) wären zur Vollauslastung direkt 32x8, also 256 Threads nötig, dafür ist die Performance insgesamt 8x so hoch. Es dürfte klar sein, daß so ein Prinzip enormes Potential hat, wenn die darauf laufenden Programme massiv parallelisierbar sind.
tombman
2010-04-30, 04:42:14
.. wenn die darauf laufenden Programme massiv parallelisierbar sind.
und des spühts ned...
=Floi=
2010-04-30, 05:37:14
zitat:
Mal angenommen, in einem Quad-Core wird jeder BC (Big Core) mit 2 HW-Threads auf gleicher Fläche durch 8 SCs (Small Cores) mit je 8 HW-Threads ersetzt, von denen jeder bei Vollauslastung durch die HW-Threads die Performance eines BC erreichen kann. Dann hätte man mit 4 BCs insgesamt 4x2, also 8 Threads zu füttern. Mit SCs (insgesamt 32 auf gleicher Fläche) wären zur Vollauslastung direkt 32x8, also 256 Threads nötig, dafür ist die Performance insgesamt 8x so hoch. Es dürfte klar sein, daß so ein Prinzip enormes Potential hat, wenn die darauf laufenden Programme massiv parallelisierbar sind.
wilkommen bei der ps3 ;D
die kacke muß aber programmiert werden und genau da liegt dann der haken. die normale cpu ist groß und schwerfällig, aber auch universal. gerade die ganze logik im core macht ja das programmieren so simpel und einfach im vergleich zu socken spezialisierten cores. in der heutigen zeit sind solche teuren softwareproduke aber undenkbar.
boxleitnerb
2010-04-30, 08:07:49
Ich denke, wenn wir vom Silizium in den nächsten 10-15 Jahren wegkommen, zumindest von dem klassischen 2D-Chip, wäre auch wieder die Möglichkeit da, an der Leistung eines einzelnen Cores durch ordentliche Taktratensteigerungen zu arbeiten. Ich glaube nicht, dass wir 2025 noch unter 6+ GHz daherdümpeln - egal mit wievielen Cores.
Exxtreme
2010-04-30, 09:12:17
Man sollte bedenken, dass sich nur recht wenige Dinge ordentlich parallelisieren lassen. Ich glaube deshalb nicht, dass man auf sehr viele simplifizierte Kerne ausweichen wird. Eher trennt man sich vom Silizium.
Neomi
2010-04-30, 10:33:04
und des spühts ned...
Wie meinen?
wilkommen bei der ps3 ;D
Nein, der Cell ist nochmal deutlich anders. Erstmal habe ich nicht in Erinnerung, daß die SPEs jeweils einige HW-Threads gleichzeitig abarbeiten. Und dann kommt noch das andere Speicherkonzept mit dem kleinen Local Store dazu.
Man sollte bedenken, dass sich nur recht wenige Dinge ordentlich parallelisieren lassen. Ich glaube deshalb nicht, dass man auf sehr viele simplifizierte Kerne ausweichen wird. Eher trennt man sich vom Silizium.
Serielle Probleme wird es natürlich immer geben. Gerade bei den wirklich rechenintensiven Dingen läßt sich aber recht viel machen. Am liebsten wäre mir ein Hybrid mit z.B. 4 großen Cores für serielle Dinge und einer ganzen Legion an kleinen Cores für weiteres.
Man sollte bedenken, dass sich nur recht wenige Dinge ordentlich parallelisieren lassen. Ich glaube deshalb nicht, dass man auf sehr viele simplifizierte Kerne ausweichen wird. Eher trennt man sich vom Silizium.
Sehe ich auch so. Auf lange Sicht werden wir von der Si-Basis wegkommen.
Die Antwor auf den Threadtitel kann ich für mein Dafürhhalten jedoch ganz klar bejahen. Wir sehen es aktuell doch schon sehr deutlich.
Der reale Nutzen von mehr als 4 universellen Kernen, die 8 und mehr simultane Threads beherrschen ist doch sehr begrenzt und auf wenige Ausnahmen und einzelne Anwendungsbereiche begrenzt.
Wozu also so viele teure Universalkerne vorhalten, die sich die meiste Zeit ihrer Existenz langweilen oder überhaupt nie etwas zu tun bekommen?
Das allgemeine Geschwätz von wegen; "Dann müssen die Softwarehersteller eben so programmieren, dass alles ausgelastet ist" ist einfach nur dümmlich.
Offensichtlich ist die aktuell benötigte Anwendungssoftware so gut und Ressourcenschonend konzeptioniert, dass man wohl absichtlich zig unnütze Programmschleifen und Zusatzroutinen programmieren müsste, damit im Task-manager eine durchnschnittlich hohe, gleichmäßige Auslastung auf allen 4 (und mehr) Kernen zu erzeugen.
Hinzu kommt die Grundproblematik, das der Verwaltungsaufwand für die Kerne mit zunehmender Kernanzahl steigt.
=> Multicore auf Universalkernbasis ist Kurz- und Mittelfristig eine Ressourcenfressende, teure Sackgasse!
(Und ich rede hier vom weit überwiegenden Teil der Anwender und Anwendungen)
Exxtreme
2010-04-30, 10:45:52
Serielle Probleme wird es natürlich immer geben. Gerade bei den wirklich rechenintensiven Dingen läßt sich aber recht viel machen. Am liebsten wäre mir ein Hybrid mit z.B. 4 großen Cores für serielle Dinge und einer ganzen Legion an kleinen Cores für weiteres.
Das stimmt. Nur je mehr Kerne man hat desto höher die Wahrscheinlichkeit, dass man sie nicht alle auslasten kann und dadurch steigert sich auch der Grad der Verschwendung.
Der Ansatz mit einigen sehr schnellen fetten Kernen und einigen kleinen langsameren Kernen klingt für mich durchaus brauchbar.
Hinzu kommt die Grundproblematik, das der Verwaltungsaufwand für die Kerne mit zunehmender Kernanzahl steigt.
Das ist richtig. Der Verwaltungsaufwand steigt überproportional stark mit jedem weiteren Kern.
=> Multicore auf Universalkernbasis ist Kurz- und Mittelfristig eine Ressourcenfressende, teure Sackgasse!
(Und ich rede hier vom weit überwiegenden Teil der Anwender und Anwendungen)
Das würde ich pauschal so nicht sagen.
Der_Korken
2010-04-30, 10:50:07
Serielle Probleme wird es natürlich immer geben. Gerade bei den wirklich rechenintensiven Dingen läßt sich aber recht viel machen. Am liebsten wäre mir ein Hybrid mit z.B. 4 großen Cores für serielle Dinge und einer ganzen Legion an kleinen Cores für weiteres.
Das könnte mit AMDs Fusion-Projekt doch theoretisch passieren, oder? Wenn man sich anschaut, was auf Nvidia-GPUs mittlerweile alles möglich ist, könnte man mit einer kleinen HD5xxx-GPU den Prozessor deutlich entlasten.
Der HeinZ
2010-04-30, 11:22:20
mal ne frage, wenn ihr von einfachen simplen Kernen sprecht die für bestimmte Zwecke optimiert sind, muss ich mir das dann so vorstellen, das es (jetzt mal ein völlig übertriebenes beispiel) zum beispiel für die Grundrechenarten jeweils einen unterschiedlichen Kern gibt? Und ich sehe schon das ihr von hunderten kernen sprecht, wenn ich das hier verfolge. Also hunderte kleine einfache Kerne. Wird denn dann nicht die Logik, welche diese einfachen Kerne verwaltet überproportional komplex?
oder habe ich gerade in falsches bild vor augen und die kleinen Kerne können alles das gleiche?
Beim ersteren kommt mir das so vor das man dann einfach einen Universalprozessor aus mehreren einfachen kernen zusammenbaut, anstatt einem einzigen der alles kann. Der dann bei parallesierten Anwendungen nicht schneller wäre, doch bei spezielen
Der zweite ansatz würde doch bedeuten, das ich sehr schnell bin, wenn es um paralleles verarbeiten und dementsprechend Monsterberechnungen geht, Ich aber im Verhältniss grotten lahm in nicht parallelen Berechnungen werde. Also muss ich doch so oder so einen sehr schnellen UNIVERSAL-Kern haben, der das Gerüst verwaltet und mir beim abarbeiten einfacherer aber komplexer unparallelsierbarer Aufgaben genügenend Leistung gibt.
Errinnert mich beides an eine Firmenstruktur, beim ersteren habe ich viele teure spezialisierte Kräfte die aber nix anderes können, beim anderen habe ich viele billige einfache Allrounder die aber nur in der Masse schnell arbeiten können. Der Chef sitzt in der Mitte und verwaltet.
Beide haben das Problem, das eine vollständige Auslastung fast unmöglich ist, da beim ersten einer immer auf den anderen wartet, beim zweiten muss ichs erstmal schaffen alle auszulasten.
Ist denn da ein oder zwei universelle nicht effektiver, der zwar nicht ganz so schnell ist, aber weniger kostet und universeller einsetzbar ist. Naja dummes Geschwafel.
Gruss Matthias
Piffan
2010-04-30, 11:51:00
Es ist immer falsch, nur eine Richtung zu favorisieren.
Wie hier schon richtig gesagt wurde: Die Mischung machts. Bei den CPUs bringt der Trend zu immer mehr Cores nix, dafür kann man ja die Streamprozessoren von GPUs wunderbar ausnutzen.
Intel machts doch ganz gut mit der Möglichkeit, einzelne Kerne abzuschalten, damit man bei den übrigen an der Taktschraube drehen kann.....
Beides nebeneinander muss sein. Und Probleme, die nun mal serieller Natur sind, kann man nicht in Parallelthreads zerlegen. :wink:
Es gibt Hyperthreading und Multicores schon recht lange, daher wird der große Boost garantiert nicht mehr kommen "weil die Programmierer von anfang an auf Multithreading proggen". Ist nämlich schon der Fall in den meisten Fällen.
Spasstiger
2010-04-30, 13:31:48
mal ne frage, wenn ihr von einfachen simplen Kernen sprecht die für bestimmte Zwecke optimiert sind, muss ich mir das dann so vorstellen, das es (jetzt mal ein völlig übertriebenes beispiel) zum beispiel für die Grundrechenarten jeweils einen unterschiedlichen Kern gibt?
Es geht eher darum, dass die einzelnen Kerne nur noch rechnen und nicht mehr komplexe Aufgaben wie Sprungvorhersagen oder Befehlssortierung durchführen.
Also quasi nach dem Vorbild des Cell-Prozessor. Für seine Transistorzahl (234 Mio.) hat der Cell-Prozessor schon eine enorme theoretische Rechenleistung. Selbst ein AMD Athlon II X4, der weniger Cache als der Cell hat, benötigt 300 Mio. Transistoren bei einer deutlich geringeren theoretischen Rechenleistung.
P.S.: Wenn man den Cell-Prozessor auf die Transistorzahl eines AMD Thuban (Phenom II X6) oder eines Intel Gulftown (Intel Core i7 6-Kern) skalieren würde, d.h. auf 900-1200 Mio. Transistoren, dann hätte man schon 30-40 SPEs.
/EDIT: Um den Vergleich etwas fairer zu machen, sollte man statt dem Cell wegen der Double-Precision-Rechenleistung den PowerXCell 8i heranziehen. Der hat bei 250 Mio. Transistoren eine theoretische DP-Rechenleistung von 102,4 GFlops @ 3,2 GHz. Bei einer Transistorzahl von rund 1000 Mio. Transistoren wären also rund 400 GFlops @ Double Precision drin. Ein Intel Core i7-980 bringt es bei 1170 Mio. Transistoren nur auf 80 GFlops @ 3,33 GHz. Ich denke, dass der Chief Scientist von Nvidia auf diese Diskrepanz anspielt.
Da auch Intel schon mit vielen simplen Cores gespielt hat (Polaris, Larabee), kann es gut sein, dass das heutige Multicore-Konzept in wenigen Jahren ad acta gelegt wird. Je größere die Parallelität, desto weniger macht es wohl Sinn, komplexe Cores zu verbauen, die für sich spitze bei der seriellen Codeverarbeitung sind, aber viel vom Transistorbudget wegfressen.
san.salvador
2010-04-30, 13:53:13
Wie sinnvoll wäre es, beide Strategien zu kombinieren?
Man nehme einen Nehalem, aber keinen mit sechs Kernen, sondern nur derer zwei. Den restlichen Platz füllt man mit vielen kleinen Kernen auf.
Software, die schlecht aufteilbar ist, hat immerhin zwei Kerne mit Damopf dahinter. Leicht parallelisierbare Programme können sich dann auch noch auf die vielen kleinen Kerne stürzen.
Natürlich müsste das OS bei der Zuteilung wirklich aufpassen.
Machbar oder Mumpitz?
Spasstiger
2010-04-30, 14:02:47
Wie man so einen Kombi-Ansatz sinnvoll ins Betriebssystem integrieren kann, würde mich auch mal interessieren. In jedem Fall müssen simple Cores anders behandelt werden als komplexe Cores. Z.B. sollte man es vermeiden, "dreckigen" Code den "Mini-Cores" zu überlassen, weil diesen nicht in der Lage sind, den Code aufzuräumen (keine Sprungvorhersage, keine Befehlssortierung).
Ich habe mich schon öfters gefragt, ob eine kombination aus cpu und fpga ordentliche performancegewinne bringen würde bzw. technisch überhaupt realisierbar ist. Also in etwa vergleichbar mit creative's zii (wenn ich dessen funktionsweise halbwegs richtig verstanden habe).
die Frage ist einzig wie man Multicore Architekturen sinnvoll, d.h. kostengünstig auch für Heimanwender nutzbar machen kann.
in jedem guten Forschungsinstitut stehen ein paar 1000xCPU Cluster mit Phenoms oder Ähnlichem rum
die Frage ist dann eher wie man bestehende Algoithmen so umsetzt das sie sinnvollen Nutzen daraus ziehen
Der reale Nutzen von mehr als 4 universellen Kernen, die 8 und mehr simultane Threads beherrschen ist doch sehr begrenzt und auf wenige Ausnahmen und einzelne Anwendungsbereiche begrenzt.
Wozu also so viele teure Universalkerne vorhalten, die sich die meiste Zeit ihrer Existenz langweilen oder überhaupt nie etwas zu tun bekommen?
Das allgemeine Geschwätz von wegen; "Dann müssen die Softwarehersteller eben so programmieren, dass alles ausgelastet ist" ist einfach nur dümmlich.
Wenn du nicht mal 4 Kerne ordentlich auslasten kannst wirst du das ganze Problem kaum verbessern, indem du einfach noch mehr Kerne zusammenbaust.
][immy
2010-04-30, 21:34:31
Wenn du nicht mal 4 Kerne ordentlich auslasten kannst wirst du das ganze Problem kaum verbessern, indem du einfach noch mehr Kerne zusammenbaust.
jup, wie ich schon häufiger schrieb. nur wenige dinge lassen sich wirklich gleichzeitig berechnen. der "hauptthread" wird letztlich immer mehr zu tun haben als alle anderen threads, womit eine vollständige auslastung aller kerne schon nicht möglich ist.
wobei man muss das ganze natürlich etwas anders sehen. der otto-normalverbraucher wird von mehr CPUs kaum noch was haben. aber in servern sind multicores (auch mit noch mehr kernen als derzeit verfügbar) richtig gut. denn hier geht es meistens um das abfangen von arbeit die in einem moment anfällt. z.B. eine "webseite" auf der es massive zugriffe gibt und wenige senkunden später nichts mehr weiter. zwar gibt es hier noch andere limitationen aber prozessor-geschwindigkeit kann auf jeden fall nicht schaden. schließlich kommt gerade in unternehmen ja nicht nur das darstellen der webseite hinzu sondern auch sonstige berechnungen (wobei hier dann meistens die datenbanken limitieren und die netzwerkgeschwindigkeit). auf jeden fall fallen immer mehr aufgaben an die so herrliche parallel ausgeführt werden können.
bei spielen ist das ganze eher entweder etwas überdimensioniert. z.B. würde man die rechenkraft in die KI stecken um wirklich komplexe berechnungen in einem strategiespiel durchzuführen. da man dies schon pro einheit im spiel gut berechnen könnte. damit könnte man viel rechenzeit verbraten, aber man darf es natürlich nicht zulassen, das z.B. auf weniger kernen die einheiten stroh-doof sind.
d.h. es dürften mit den mehr an kernen nur zusätzliche sachen berechnet werden, die das spielgeschehen nicht beeinflussen, denn sonst würde man einem großteil der kundschaft ausschließen (quad-core ist schließlich kein standard).
zudem dürfte der aufwand wohl nicht gerechtfertigt sein, für den kleinen "effekt" den man da rausholt.
daher denke ich das es in zukunft eher in die richtung von .net/java gehen wird. dadurch das der code mehr oder minder einfacher zu erstellen und leichter zu warten ist sinkt der entwicklungsaufwand erheblich. die "performance" und resourcen die im vergleich mit nativen code verloren geht spielt in zukunft eine immer kleinere rolle und die vorteil überwiegen langsam aber sicher. einzige problem dabei sind die konsolen.
(del)
2010-04-30, 22:02:47
Das ganze Multicorezeug verlangt nach neuen Ansätzen/Lehren was die Programierung und Kompiler angeht. In Einfachdeutsch, Neudenke ist angesagt. Da man aber 2010 versucht zu überlegen wie man diese Neudenke angehen sollte, damit man sie näher spezifizieren kann :D ist dieser Artikel theoretischer Blödsinn.
Für wunderbar einfach parallelisierbare :| Aufgaben gibt es solche Prozessoren schon sehr lange http://en.wikipedia.org/wiki/UltraSPARC_T2
ZWEI solche Teile reichen aus um mit Lotus R6 iNotes in einer T5240 65.000 Benutzer ausreichend schnell zu bedienen.
Wir reden hier pro CPU über 95W TDP aus 65nm, 1.4 Ghz, 4MB L2, 8 Cores/64 Threads. Das sind max. 2.500 Threads pro Rack :D
Das Ding fährt jeden Power6-"Einschub" doppelt und dreifach in Grund&Boden. SAP, PHP, MySQL, SPECWeb usw. usw. Bei halber Höhe und einer dreifach besseren Leistung pro Watt als ein PowerEdge 6950.
Wer aber hinbekommen würde drauf irgendwie Ubuntu zu installieren, würde meinen er sitzt vor einem HTPC mit Atom Z550. Soviel zum Thema.
@]konventionellen Sprachen programmiert.
Davon ab ist Microsoft als die wichtigste Platform fürs Volk dafür, diesbezüglich der Antichrist schlechthin. Guck dir mal an welchen und wieviel von diesem Mist du auf dem System haben mußt, damit mal dieses und mal jenes Programm läuft.
http://www.computerbase.de/downloads/system/microsoft_net_framework/
Gleichzeitig nach neuen Ansätzen bei Programmiersprachen rufen und gegen .NET hetzen ist ziemlich schizophren. Genau wie die JVM wird die .NET VM für viele neue Ansätze in Programmiersprachen genutzt.
Auch wenn die theoretische Sicht so ist, dass die aktuellen CPUs nicht optimal sind, gibt es wirtschaftliche Gründe weshalb es so ist. Viele x86 Cores sind zumindest beim Intel Larrabee gescheitert. Eine nicht x86-CPU ist ein Nischenprodukt für Desktops, die Software fehlt, unterschiedliche Befehlssätze für die unterschiedlichen Cores gibt Probleme wie beim Cell.
(del)
2010-04-30, 23:05:06
Gleichzeitig nach neuen Ansätzen bei Programmiersprachen rufen und gegen .NET hetzen ist ziemlich schizophren. Ich meine dagegen es ist ein klarer Fall von Synästhesie, wenn man überall nur "Rufe" hört und "Hetze" sieht...
Also ich hab das vor eiiiniger Zeit mal sehr simplifiziert beschrieben:
http://www.orthy.de/index.php?option=com_content&view=article&id=4719:ente-threadiasmus&catid=7:glosse&Itemid=56
Sinngemäß man kann nicht jede Aufgabe unendlich zerlegen. Irgendwann ist man auf einem Grad der Problemzerlegung angelangt, wo es wieder ineffektiv wird, weiter zu "teilen". Man benötigt also massiv parallelisiertbare Aufgaben.
Hier genanntes Beispiel des Lotus-Servers, meinetwegen auch Webserver oder DaBa-Server. Da ist das herrlich einfach. Ein Thread pro User, vielleicht 2. Die Aufgaben sind klein, klar struturiert und immer gleich.
Und können tausendfach parallelisiert werden. Um bei o.g. Beispiel zu bielben: Alle wollen einfach nur eine Tasse Kaffee.
Um 65.000 Kaffee-Geniesser gleichzeitig zu bedienen braucht man also nur
1. Ausreichend viele Maschinen
2. Ausreichend viele Bediener (CPUs)
3. Eine Anordnung, dass sich die Bediener nicht gegenseitig im Weg herum laufen
Das geht im Alltag aber selten. Kaum ein Programm zuhause lässt sich so in teilprobleme zerlegen, dass es in vielen vielen Threads abbildbar ist. Andererseits hat sich das CISC-Prinzip (Oh Danke Intel, Du gott der Befehlssätze) gegenüber RISC durchgesetzt, was am Ende sehr warhscheinlich ein Fehler war, da RISC wesentlich offensichtlicher zu feingranularen und zerlegbaren Programmen führt... bla bla bla.
Fakt: Wir brauchen
1. Eine Architektur als Basis ... da gäbe es schon ein paar
2. Einen Compiler... Gibts auch
3. Eine neue Programmierphilosophie... Hmmmm...
4. Viele viele Programme und ein Endanwenderbetriebsystem... NNeein
Ich denke eher rechnen wir in 20 Jahren noch mit x86er und 12 GHz....
PCO
][immy
2010-05-02, 10:27:14
@]konventionellen Sprachen programmiert.
Davon ab ist Microsoft als die wichtigste Platform fürs Volk dafür, diesbezüglich der Antichrist schlechthin. Guck dir mal an welchen und wieviel von diesem Mist du auf dem System haben mußt, damit mal dieses und mal jenes Programm läuft.
http://www.computerbase.de/downloads/system/microsoft_net_framework/
du weißt schon was alles in .net und java drin steckt, oder?
es geht dabei nicht um die geschwindigkeit mit der etwas ausgeführt wird (welche nach dem ersten kompilieren ziemlich ordentlich ist), sondern um die geschwindigkeit mit der programme erstellt werden können und wartbarkeit.
das ist ähnlich wie früher beim umstieg von byte-code auf eine höhere programmiersprache.
waren die programme schneller? nicht wirklich
waren die programme resourcenschonenender? ebenfalls nicht
waren sie wartbarer? JA
waren die programme schneller erstellt? um einiges schneller
es war letztlich die zeitersparnis und wartbarkeit die dazu führte, das sich solche programmiersprachen (wie c & auch ältere) letztlich durchsetzten. und ähnlich wird es sich bei den nächsthöheren sprachen verhalten.
es wird ne weile dauern, da es z.B. auch heute noch entwickler gibt die lieber 100 zeilen byte-code anstatt 5 zeilen c++ code schreiben (solche laufen einem immer wieder über den weg).
das problem ist einfach das heutige entwicklungen zu lange dauern und damit auch immer teuerer werden. daher setzen firmen heutzutage ach vermehrt zukaufkomponenten ein (seien es UI element, grafik-engines, physik-engines, ...).
die framesworks von java und .net bieten (mehr oder minder) genau sowas an. keine speziellen engines, aber viele probleme sind dort einfach schon gelöst und man braucht nur noch eine methode aufrufen, wo man vorher hunderte zeilen code selbst schreiben musste.
natürlich wird man es nicht überall einsetzen können (selbst byte-code hat noch seine berechtigung in eingen bereichen, wo es halt nicht anders geht) aber einen großteil von produkten könnte man mit solchen ansätzen um einiges schneller entwickeln.
übrigens, wenn du schon über die paar 48 MB meckerst (wobei es auf der platte eher mehrere hundert MB sind) dann solltest du schleunigst directx runterwerfen und eigentlich auch windows, und und und. denn dies sind auch nur schichten um einem die arbeit zu erleichtern.
du musst auch bedenken, inzwischen brauchen wir schon jahre um auch mit .net/java programme zu erstellen. das liegt aber eher daran, das die featurefülle die man heutzutage direkt beim launcher erfüllen muss um einiges größer ist als das was man noch vor ein paar jahren brauchte. wenn wir das alles in c++ hätten schreiben müssen, wären wir vermutlich auch in weiteren 3 jahren nicht fertig und müssten auch noch wie verrückt darauf achten, das wir auch ja keine speicherlecks verursachen, das das ganze 64-bit und 32-bit kompatibel ist, ...
.net & java interessiert das größtenteils nicht.
Aquaschaf
2010-05-02, 10:31:56
Andererseits hat sich das CISC-Prinzip (Oh Danke Intel, Du gott der Befehlssätze) gegenüber RISC durchgesetzt, was am Ende sehr warhscheinlich ein Fehler war, da RISC wesentlich offensichtlicher zu feingranularen und zerlegbaren Programmen führt... bla bla bla.
Wie RISC "offensichtlich" zu leichter parallelisierbaren Programmen führen soll kannst du gerne mal erklären. RISC/CISC hat damit genau gar nichts zu tun, vor allem nicht bei modernen CPUs deren interne Befehle von der logischen ISA sowieso unabhängig sind.
Die Fragestellung ist sehr merkwürdig.
Wie kann ein alternativloser Weg der Falsche sein?
(del)
2010-05-02, 12:35:26
[immy;8003788']übrigens, wenn du schon über die paar 48 MB meckerstEcht? Für mich ist das schon ein halber Gigabyte :| Oder reicht es .net4 zu installieren, um auch .net1, .net2, .net3 und .net3.5 Programme laufen lassen zu können?
Hat Paint.NET mit jedem Release weniger Bugs als Gimp?
booomups
2010-05-02, 15:47:18
wir sind demnach schon in dieser schönen zukunft:
die kombination von heutiger x86cpu und cuda/alternative fähiger grafikkarte.
viele sachen, die man massiv parallel ablaufen lassen kann, werden doch schon auf grafikkarten abgeschoben...
Das geht im Alltag aber selten. Kaum ein Programm zuhause lässt sich so in teilprobleme zerlegen, dass es in vielen vielen Threads abbildbar ist. Andererseits hat sich das CISC-Prinzip (Oh Danke Intel, Du gott der Befehlssätze) gegenüber RISC durchgesetzt, was am Ende sehr warhscheinlich ein Fehler war, da RISC wesentlich offensichtlicher zu feingranularen und zerlegbaren Programmen führt... bla bla bla.
Threads mit RISC vs. CISC in Verbindung zu bringen ist schon sehr sportlich auf der Troll-Skala. Respekt.
svenw
2010-05-03, 09:07:22
Was will man damit? Mehrleitung bei CPUs wird heute doch kaum noch gebraucht. Spezialprozessoren für Server gibt es. Massive parallele Strukturen hat man heute in jedem Computer, nennt sich GPU. Die Progger schaffen es doch heute kaum einen 4 Kern auszufahren von Multicore ganz zu schweigen. Und solange man sich nicht an Spiele oder Bild/Videobearbeitung macht, reicht eigentlich auch ein Atom. Bei Bild/Videobearbeitung sollte man aber endlich die GPU anzapfen anstatt das mit Multi-CPU Cores zu erschlagen, nur macht man das? Wie lange gibt es Cuda/Stream und wie oft wird das wirklich für solche Aufgaben gut genutzt?
Das der Cheftechnologe von NV sich für Multiple simple Cores ausspricht wundert mich gar nicht, denn genau das ist es was seine Firma herstellen kann. Wenn NV wirklich eine CPU herstellen wollte hätten sie massive Probleme, weil sie sich damit nicht auskennen.
Als Fazit: Solange die softwareentwickluing nicht einen massiven Sprung Richtung Multicore macht, ist es müßig über Extreme Multicores zu reden. Schon die Software die aktuelle 6Kerner gut auslastet kann man mit der Lupe suchen.
Echt? Für mich ist das schon ein halber Gigabyte :| Oder reicht es .net4 zu installieren, um auch .net1, .net2, .net3 und .net3.5 Programme laufen lassen zu können?
Hat Paint.NET mit jedem Release weniger Bugs als Gimp?
was ist daran so schlimm? kostet es bei den heutigen festplattenpreisen doch ganze 3 eurocent. und dafür bekommst du eine stabile, erprobte wenn auch nicht 100% fehlerfreie Platform welche selbst hochsicherheitskritischen anforderungen (flugsicherung, leitzentralen, etc) entspricht.
(del)
2010-05-03, 11:34:57
was ist daran so schlimm? kostet es bei den heutigen festplattenpreisen doch ganze 3 eurocent.Vielleicht will ich aber endlich eine SSD haben?!
Oder ich müßte, gepaart mit Win7 und dem dauerexplodierenden WinSxS, das System auf eine größere Platte/Partition migrieren, damit ich auf C dann noch genug Platz habe?
Installier dir doch zusätzlich zum paar GB OS noch eine Umgebung die hunderte von MBs einnimmt, damit (bis jetzt weitgehend) paar simple 1MB Progs ihre GUI malen können. Nur zu.
Vielleicht will ich aber endlich eine SSD haben?!
Oder ich müßte, gepaart mit Win7 und dem dauerexplodierenden WinSxS, das System auf eine größere Platte/Partition migrieren, damit ich auf C dann noch genug Platz habe?
Installier dir doch zusätzlich zum paar GB OS noch eine Umgebung die hunderte von MBs einnimmt, damit (bis jetzt weitgehend) paar simple 1MB Progs ihre GUI malen können. Nur zu.
und ja das tu ich und ich bin glücklich damit ein framework zu haben auf welches ich mit meinen programmen aufbauen kann.
schonmal gedacht dass es die tools die du verwendest vl ohne .net framework garnicht geben würde weil der entwicklungsaufwand sonst für den ersteller zu groß wäre?
und selbst bei ner ssd zahlst du ~1.20 für das framework. wer sich ne ssd leisten kann kann sich das auch noch leisten.
gepaart mit Win7 und dem dauerexplodierenden WinSxS
WinSxS nimmt fast keinen Platz auf der Platte ein, denn es handelt sich dabei um Hard Links auf Dateien, die sich auch anderswo befinden.
Deinorius
2010-05-03, 14:24:46
Gibt genug Fälle, wo WinSxS auch über 5 oder gar über 10 GB an Platz weg nimmt.
Daredevil
2010-05-03, 14:28:25
Für mich als Endbenutzer Sicht ist Multi Core der richtige Schritt, früher gab es nur geringe Leistungssteigerungen, z.B. beim Athlon XP Palomino/Thoroughbred/Barton und Athlon 64, heute wird aus vier sechs Kernen gemacht und man hat 50% mehr theoretische Leistung und musste dafür keine neue Architektur entwickeln. ( Achtung, Halbwissen! )
Was interessieren dich die 50% Mehrleistung wenn davon nichts ankommt?
Dann lieber wie früher reale Leistungssteigerungen die auch überall durchschlagen.
Daredevil
2010-05-03, 14:50:58
Ich spiele momentan noch mit nem hochgezüchteten Cachekrüppel Core2Duo e4300, würde ich mir nun nen Quad der aktuellen Generation zulegen, wären das locker mehr als die doppelte Leistungssteigerung in Spielen und natürlich in anderen Anwendungen ( Wenn die CPU limitiert ).
Zumindest 4 Kerne haben sich ja schon durchaus durchgesetzt.
Muss ja nicht unbedingt nen Sechser sein.
Deinorius
2010-05-03, 14:56:22
Aber darauf will ja Coda hinaus. Von einem DualCore auf QuadCore hast du ja wenigstens noch 100 % Leistungsgewinn und je mehr Kerne ankommen, umso seltener werden die Kerne über 4 richtig ausgenutzt.
QuadCore sind nicht mal mehr das wirkliche Thema, wenn schon Spiele diese teilweise ausreizen. HexaCore und darüber führen zu Diskussionen.
Ich halte einen hybriden Ansatz für vorläufig vielversprechend: Als CPU mehrere, aber wenige Cores mit hoher IPC und viel Takt. Dazu als Koprozessor massivparallele CPUs oder GPUs.
Daredevil
2010-05-03, 15:07:12
Aber darauf will ja Coda hinaus. Von einem DualCore auf QuadCore hast du ja wenigstens noch 100 % Leistungsgewinn und je mehr Kerne ankommen, umso seltener werden die Kerne über 4 richtig ausgenutzt.
QuadCore sind nicht mal mehr das wirkliche Thema, wenn schon Spiele diese teilweise ausreizen. HexaCore und darüber führen zu Diskussionen.
Gibts denn da wirklich ne theoretische Grenze?
Früher sagte man ja auch "Kauf dir nen e6600, den q6600 kann kaum einer ausreizen!" und der q6600 ist einer der besten und langlebigsten Prozessoren der letzten Jahre geworden.
Intel hat doch letztens ein Video präsentiert, wo alle 12 Threads des Six-Core mit HTT ausgelastet wurden in einem Spieleähnlichen Terrain.
Da isset:
http://www.youtube.com/watch?v=1xed8q65524
Von einem DualCore auf QuadCore hast du ja wenigstens noch 100 % Leistungsgewinn
Nö. Hast du in den allerwenigsten Fällen.
Gibts denn da wirklich ne theoretische Grenze?
Nein, aber es gibt Amdahl's Law:
http://upload.wikimedia.org/wikipedia/commons/7/7a/Amdahl-law.jpg
Schon bei nur 10% seriellem Code kannst du die Skalierung über 8 Cores praktisch knicken.
Intel hat doch letztens ein Video präsentiert, wo alle 12 Threads des Six-Core mit HTT ausgelastet wurden in einem Spieleähnlichen Terrain.
Was da noch skaliert sind hochparallele Probleme, und dafür sind hochgezüchtete IPC-Monster-Cores einfach komplette Verschwendung. Eine GPU ähnliche Architektur würde aus dem gleichen Die Space weitaus mehr Leistung rausholen für diese Dinge.
Deshalb sehe ich im Consumer-Markt auch wirklich keinerlei Sinn für mehr als 8 Cores + GPU. Und bei Servern sind Architekturen wie Suns Niagara vielversprechender.
Deinorius
2010-05-03, 15:21:55
Je mehr Kerne, umso schwieriger wird die Programmierung. Natürlich werden auch die ausgereizt, irgendwann später (und je nach Anwendung auch schon heute). Was Intel da zeigt, ist an sich uninteressant. Dass es möglich ist, kann man sich auch so denken. Interessant ist nur, wann es am Markt verfügbar ist.
Und da muss man vorher noch daran arbeiten, die Entwicklung von Spielen und Anwendungen, einfacher zu gestalten. Wurde hier ja mittlerweile schon erwähnt.
Man kann auf alle Fälle sagen, solang man nicht die meiste Zeit Videos bearbeitet (oder was auch immer), laufen 2-4 Kerne nur im Idle oder sind deaktiviert. Wird sich ja schon zeigen, wie lang es dauert, bis auch HexaCore CPUs breit verkaufen lassen. Ich stells mir herrlich vor, wenn auch der Hofer/Aldi-Käufer sich einen zulegt. :ugly:
Stell dir ein Diagramm vor. X-Achse ist die Anzahl der Kerne, y-Achse der Aufwand zur Programmierung. Die Linie müsste dann wohl leicht logarithmisch sein.
Es gibt einfach Probleme die inhärent nicht parallelisierbar sind. Das hat nichts mehr mit "schwieriger Programmierung" zu tun.
Es gibt einfach Probleme die inhärent nicht parallelisierbar sind. Das hat nichts mehr mit "schwieriger Programmierung" zu tun.
Wo siehst du persönlich die Grenze? Sagen wir, für PC-Spiele. 4 Kerne? 6 Kerne? 8?
Deinorius
2010-05-03, 15:26:53
Das hat nichts mehr mit "schwieriger Programmierung" zu tun.
Ja, das auch. Das Problem hat ja z.B. x264, besonders mit CABAC.
Nichts mehr? Das klingt so, als ob es Tools gibt, die das entsprechend vereinfachen.
Nö. Hast du in den allerwenigsten Fällen.
Stimmt ja. Da vergleich ich unfairerweise Cores ohne HTT und mit HTT.
Mehrere Cores brauchen Unterstützung. Mehr MHz nicht. Ich wäre wie gesagt dafür, wenige hochgezogene (hochgetaktete) Kerne durch OOE+HTT gut auszulasten und den Rest via Koprozessoren zu machen. Als Haupt-CPU halte ich Manycores für einen Irrweg.
Mehrere Cores brauchen Unterstützung. Mehr MHz nicht. Ich wäre wie gesagt dafür, wenige hochgezogene (hochgetaktete) Kerne durch OOE+HTT gut auszulasten und den Rest via Koprozessoren zu machen.
Ist es nicht egal, ob HTT oder mehr Kerne? Mehrere Threads heißt doch auch wieder Paralellisierung.
"Parallelisierung", war natürlich gemeint. :tongue:
Wo siehst du persönlich die Grenze? Sagen wir, für PC-Spiele. 4 Kerne? 6 Kerne? 8?
So um die 8 - habe ich ja schon geschrieben.
Darüber hinaus ist das Zeug wirklich besser auf der GPU aufgehoben.
Nichts mehr? Das klingt so, als ob es Tools gibt, die das entsprechend vereinfachen.
Wer es mal geschafft hat mit Threads umzugehen kann das auch für 8 Cores, nicht nur für 2.
Ist es nicht egal, ob HTT oder mehr Kerne? Mehrere Threads heißt doch auch wieder Paralellisierung.Dafür ja einige (wenige) "echte" Kerne, HTT nur als Bonus um die Lastverteilung zu optimieren und bei mehreren Threads die Stalls beim Cache-Miss abzufedern.
Dafür ja einige (wenige) "echte" Kerne, HTT nur als Bonus um die Lastverteilung zu optimieren und bei mehreren Threads die Stalls beim Cache-Miss abzufedern.
Dann wäre im Moment ein i7 4C/8T ja optimal.
Piffan
2010-05-03, 15:57:21
Es gibt einfach Probleme die inhärent nicht parallelisierbar sind. Das hat nichts mehr mit "schwieriger Programmierung" zu tun.
Das ist genau der Punkt. Warum dieses simple Faktum immer ignoriert wird?
Im Grunde haben wir doch schon Multicores satt: CPUs haben sie, und netterweise kann man sie auch abschalten zu gunsten höherer Taktzahl, sonst wäre es für die Bestimmung der CPU als Universalistin selten blöde. Und so richtig viele gibts davon auf den Grakas, nur heißen sie da zu recht nicht Cores.
Wenn jetzt kein Krieg zwischen Nvidia und AMD herrschen würde, wäre das Thema Multicore endgültig vom Tisch.....
Dann wäre im Moment ein i7 4C/8T ja optimal.Momentan eher 2 Kerne mit 2x HTT, aber deutlich mehr Takt bei gleicher Protaktleistung.
Wenn jetzt kein Krieg zwischen Nvidia und AMD herrschen würde, wäre das Thema Multicore endgültig vom Tisch.....OpenCL.
Wenn jetzt kein Krieg zwischen Nvidia und AMD herrschen würde, wäre das Thema Multicore endgültig vom Tisch.....
"Vom Tisch" würde ich jetzt nicht sagen.
Es gibt schon auch Sachen die man ganz gut auf Multi-Core-CPUs laufen lassen kann weil sie auf 3-4 Threads skalieren. Für die GPU wäre das aber viel zu wenig Parallelität.
Der_Donnervogel
2010-05-03, 20:23:30
Wer es mal geschafft hat mit Threads umzugehen kann das auch für 8 Cores, nicht nur für 2.Das würde ich auch sagen. Entweder man kann mit Threads umgehen oder nicht. Das Kernproblem ist aber sowieso nicht, die Schwierigkeit etwas parallel zu implementieren, sondern dass viele Probleme sich nur schlecht/begrenzt oder gar nicht parallelisieren lassen.
Wenn man ein schönes Problem hat, das sich gut parallelisieren dann ist es egal ob 4, 8 oder n Kerne vorhanden sind. Dann implementiert man es so dass die Anzahl der Threads in Abhängigkeit der zur Verfügung stehenden Kerne vom Programm selbst bestimmt wird. Hat man ein Problem das sich nur schlecht parallelisieren lässt, kann man höchstens zu extrem ineffizienten Methoden greifen um die anderen Kerne versuchen zu nutzen. z.B. ist es je nach Problem möglich Threads spekulativ rechnen zu lassen.
(del)
2010-05-04, 00:03:45
Ich spiele momentan noch mit nem hochgezüchteten Cachekrüppel Core2Duo e4300, würde ich mir nun nen Quad der aktuellen Generation zulegen, wären das locker mehr als die doppelte Leistungssteigerung in Spielen und natürlich in anderen Anwendungen ( Wenn die CPU limitiert ).Was ist das denn? Die Soft profitiert von mehr Kernen NUR, wenn sie entweder mehr Kerne auch benutzt oder so eine neue CPU bringt durch die Architketur mehr Leistung pro Mhz.
Zumindest 4 Kerne haben sich ja schon durchaus durchgesetzt.Die haben sich nicht durchgesetzt, sondern einige sind so billig geworden, daß man es einfach so mitnimmt. Ob man direkt etwas davon hat ist eine andere Frage. Die meisten Spiele sind aktuell GPU-limitiert.
@Coda
"Komischerweise" kam ich mal auf den Trichter, daß die einfachen Progger mit ihrer 1-Kern-Allerweltssoft sich zwar im Vergleich relativ leicht mit 2 Kernen taten/tuen, darüberhinaus aber ziemliche Probleme zu haben scheinen :confused: Hab das ne Weile bei Bildanzeigern (Thumbs) oder Packern in der OpenSource verfolgt.
Ausgenommen einiger weinger MP-Stars wie WinRAR usw. gibt es imho auch interessante Effekte die sich mit den 3-Kernern von AMD offenbarten, wo Multicoresoft mit 2 Kernen und auch noch mit 3 Kernen recht ordentlich skaliert, mit 4 dann merkbar schlechter. (hab natürlich verpeilt die Links dazu zu speichern :mad:) Imho also.
@ESAD
Die einzige .NET Soft die ich wirklich benutze sind die GUIs von Sereby Updatepack und Xpize. Beides für XP. Da ich Paint.NET nicht benutze könnte ich dir jetzt nichtmal sagen was es alles an .NET-Proggis gibt die ich garnicht brauche. Ich kenne wohl noch nHancer, das wars aber auch nun. Das meiste was die Leute für 0815-Privatvolk damit machen ist imho bisschen GUI, wenn es nicht viel zu rechnen gibt.
Deine Freude über die mehrere getrennte :crazy2: .NET-Frameworks von 20MB bis 230MB hat meine Aussagen darüber leider nicht wirklich gejuckt.
Daredevil
2010-05-04, 00:11:40
Die meisten Spiele sind aktuell GPU-limitiert.
Dann spiel mal auf nem Dual Core. ;)
Prototype ist ne Ruckelorgie pur und das schlimme daran, man kann nirgendwo den Regler nach links schieben, damit das ganze läuft! Denn..... Physik kann man nicht ausstellen.
Und das durchsetzen meinte ich nicht vom Verkauf her, sondern von der Unterstützung, nahezu jedes Spiel was momentan rauskommt profitiert von mehr als 2 Kernen und das ist auch gut so.
GTAIV bedankt sich bei nem i7 4Ghz mit deutlich mehr FPS.
(del)
2010-05-04, 00:32:31
Dann spiel mal auf nem Dual Core. ;):| Ja?
Prototype ist ne Ruckelorgie pur und das schlimme daran, man kann nirgendwo den Regler nach links schieben, damit das ganze läuft! Denn..... Physik kann man nicht ausstellen.Jou. Q6600 - 43.5/32, E8400 - 38.4/27. Hier schlägt ein Quad pauschal total durch...
http://www.pcgameshardware.com/aid,688240/Prototype-CPU-Benchmarks-System-Requirements-and-Screenshots/Practice/
Und das durchsetzen meinte ich nicht vom Verkauf her, sondern von der Unterstützung, nahezu jedes Spiel was momentan rauskommt profitiert von mehr als 2 Kernen und das ist auch gut so.Nicht jeder der gerne mehr Leistung mitnehmen würde ist ein Spielkind.
DavChrFen
2010-05-04, 01:02:13
3. Eine neue Programmierphilosophie... Hmmmm...
Das wird die nächsten Jahre wirklich interessant werden. Ob, und wenn ja, von was getrieben dies wie schnell geht.
Daredevil
2010-05-04, 01:13:13
Jou. Q6600 - 43.5/32, E8400 - 38.4/27. Hier schlägt ein Quad pauschal total durch...
http://www.pcgameshardware.com/aid,688240/Prototype-CPU-Benchmarks-System-Requirements-and-Screenshots/Practice/
Gerechterweise sollte man dann auch nicht 2 unterschiedliche CPU-Generationen nehmen, meinste nicht auch?
Da sinds dann bei beiden Generationen gut 55% mehr FPS, und die 27 minfps auf nem selbst schon flinken e8400 willste dir echt nicht antun, glaub mir...
Deinorius
2010-05-04, 01:16:24
Wo sind da bei den beiden aufgeführten CPUs unterschiedliche Generationen? Außer Fertigungsprozess, Cachegröße und Kernanzahl unterscheiden die sich praktisch nicht.
(del)
2010-05-04, 01:17:02
Ich wußte nicht daß 27fps ruckeln. Sind die 32fps da soviel besser? :tongue:
Das mit den Generationen würde vielleicht hinhauen, wenn es nicht blos ein Refresh wäre... Hier schliesst man eher durch die 2x +600 Mhz pro Kern auf :up:
Die 27fps würde ich mir trotzdem nicht antun, weil der E8400 läuft for nothing ohne an den Spannungen zu drehen mit ~3.8Ghz. Da kommen schon ganz andere, merkbar teurere Quads ins Schwitzen. Das hat sich erst jetzt mit einigen i-Modellen geändert (wo sich fairerweise ebenfalls das Übertakten ohne 2kg Kühler auch real lohnt).
Bis dann mal.
mapel110
2010-05-04, 02:10:09
und die 27 minfps auf nem selbst schon flinken e8400 willste dir echt nicht antun, glaub mir...
Doch, will man. Ich hab keine Probs mit dem Game bei meinem Defaulttakt-E8400. Außerdem ist das ein Hardcore-Szenario, was PCGH da gebencht hat. Schlimmer wirds nicht.
Daredevil
2010-05-04, 02:15:07
Wo sind da bei den beiden aufgeführten CPUs unterschiedliche Generationen? Außer Fertigungsprozess, Cachegröße und Kernanzahl unterscheiden die sich praktisch nicht.
Ja wie? Worin sollen se sich denn noch unterscheiden?
Der Prozessor ist bei 25% mehr Takt knapp 35% schneller, diese 10% Mehrleistung kommen durch Fertigung und Cache.
Bei Anno 1701 deklassiert der E8400 seinen Vorgänger E6850 - 17 Prozent liegt er dank größerem Cache vorne. Zur Erinnerung: Der E8400 ist rund 40 Euro günstiger. Anno 1701 profitiert allerdings besonders stark von einem großen Zwischenspeicher. Bei World in Conflict ist der Unterschied geringer, aber immer nodh deutlich: Der neue Wolfdale-Prozessor ist neuen Prozent schneller als der E6850 mit identischer Taktrate.
Welcher Prakikant hat dort eigentlich die Rechtschreibfehler übersehen? ^^
Übertakten ist kein Argument, da dies nunmal nicht jeder kann und will.
Und ob 27 oder 32 fps ist schon spürbar, wenn dir diese ~18% FPS latte sind, brauchste ja eigentlich auch nicht deine Graka um 20% übertakten, sieht man ja eh nicht.
@mapel110
Ich habs auch mit nem Allendale 3.2Ghz gespielt, schön is das aber trotzdem nicht, wenn mal ein wenig Aktion aufkommt und man wenigstens ein wenig von den Schatten sehen will.
Ist doch genau das gleiche wie GTAIV, nur in grün.
Guti Nacht
(del)
2010-05-04, 03:10:45
Oha. Mappel hat sein Ava von DX7 auf DX10 umgestellt :cool:
@Daredevil
Welcher Prakikant hat dort eigentlich die Rechtschreibfehler übersehen?Naja... :tongue:
Dann rechne dem Q6600 die 10% ruhig dazu. Das ist der signifikante Unterschied bei doppelter Kernanzahl?
18% mehr... 10fps sind gar das Doppelte gegenüber 5fps. Was sollen die Prozente bei min. FPS? Min. FPS sind tot oder leben ;) und keine Prozentrechnung. Entweder es reicht grad noch oder es reicht nicht. FPS sind keine zig Sekunden beim Videocoding. Was ist das denn? =)
27fps vs. "35"fps sind ein Witz. Neue CPU lohnt erst, wenn sie genug pro Kern ballert. Quad oder nicht Quad. Das sieht man an den höher liegenden CPUs bei PCGH.
p.s.:
Da fällt mir vorm Ausmachen mal ein, daß SMT und vor allem Turbo eigentlich eher zeigen, daß die Skeptiker garnicht so falsch liegen ;) Wenn nichts revolutioneres in der Programmierung auftaucht sind für HomePCs mehr als 6 Kerne ziemlicher Overkill.
2010 fangen wir damit an, daß Allerweltssoft anfängt aus 2 Kernen und/oder SSE2 ihren nutzen zu ziehen. Wobei nicht wenige der Programmierer bei sehr rechnintensiven Aufgaben doch lieber 30KB mmx inlineASM dazwischenschieben.
Aber was sind sie schon, gegenüber dem 3DC-Zocker mit GTA auf i7 @4.1Ghz :rolleyes:
Hallo, hier wird ja sehr kontrovers diskutiert, ob Probleme parallelisierbar sind oder eben nicht. Dabei wird komplett vergessen, warum heutzutage eher ein Vierkerner als ein Zweikerner empfohlen wird. Ein Rechner muss heutzutage mehr tun als nur eine Schleife abarbeiten. Das Argument beim Dualcore war ja, dass das System nicht einfriert, wenn der Antivirus zum Beispiel einen Kern auslastet.
Das ist nun genauso gueltig fuer Dualcores. Spiele lasten zwei oder mehr Kerne schon ganz gut aus heutzutage. Wenn dann allerdings noch ein Com-Server und vielleicht ein Spieleserver im Hintergrund laufen, sind die Vierkerner ruckzuck auf 4x100%. Wenn dann noch gerade mal das Backupprogramm oder sonst irgend etwas zuschlaegt, dann kommt der Rechner ins Trudeln. So huebsch wie die heutigen Spielebenchmarks sind, sobald der Multiplayer dazukommt mit allen Annehmlichkeiten, die man sich dabei goennt, dann verlieren diese einfach ihre Gueltigkeit.
Langer Text. Ich fasse das mal zusammen. Voll Backup und Antivirus laufen lassen und für andere Teamserver spielen. Ok. Das gilt :ulol:
Für mich ist spätestens bei der Leistung des erwähnten i7 mit 4Ghz erstmal Schluß. Auf dem Feld der KIs tut sich nämlich nicht besonders viel. FEAR ist immernoch wegweisend. Die Leistung die ich dann noch gebrauchen könnten gilt dem Audivisuelem und das erledigt eine consumer GPU zig mal schneller und besser als ein Power7.
Air Force One
2010-05-04, 11:22:01
Man kann nicht alles auf eine GPU umlagern.
(del)
2010-05-04, 11:42:32
Und nachts ist es kälter als mittags.
Was ist das denn? Die Soft profitiert von mehr Kernen NUR, wenn sie entweder mehr Kerne auch benutzt oder so eine neue CPU bringt durch die Architketur mehr Leistung pro Mhz.
Das stimmt so nicht ganz!
Die Software (bzw. ein Programm) profitiert auch schon daran wenn eine andere SW (ein Hintergrunddienst) nicht die Kerne an sich reißt und die Anwendung damit warten muss bis es in der Zeitscheibe wieder dran kommt!
Es läuft ja doch etwas mehr als eine Anwendung parallel (Dienste, andere Anwendungen, OS usw.)
(del)
2010-05-04, 12:31:05
Gilt. Hier muß der Kernel aber schon einen prima Job leisten. Wo man sonst in der Schlange steht, fliegt man in dem Fall für gewöhnlich dauernd von einem Kern auf einen anderen. Das dauert auch
Gilt aber trotzdem wie gesagt. Nur der "Profit" hält sich halt oft in Grenzen.
GamlerHart
2010-05-04, 13:44:19
Weiss nicht ob das schon gepostet wurde: http://www.youtube.com/watch?v=KfgWmQpzD74 Ein Vortrag über Amdahls Law in der Multi-Core-Ära. Amdahls Law ein bisschen erweitert / verfeinert und dann theoretische Spielereien gemacht.
Das Fazit: Das beste wäre eine Zusammensetzung aus ein paar schnellen, einzelnen Cores und haufenweise kleine Cores. Die grossen Cores braucht es für serielle Aufgaben, der Rest ist verteilt.
Natürlich alles hoch theoretische. Vor allem wie man solch ein Mix gescheit programmieren kann, ist ein riesen Problem.
Deinorius
2010-05-04, 14:05:55
Wie wärs, wenn man dazu z.B. einen Core speziell für die Verwaltung aller Kerne (und/oder OS-Verwaltung) an sich bereit stellt. Dieser Vorschlag kam doch schon von Intel oder M$, ich finde leider die News nicht mehr.
Weiss nicht ob das schon gepostet wurde: http://www.youtube.com/watch?v=KfgWmQpzD74 Ein Vortrag über Amdahls Law in der Multi-Core-Ära. Amdahls Law ein bisschen erweitert / verfeinert und dann theoretische Spielereien gemacht.
Das Fazit: Das beste wäre eine Zusammensetzung aus ein paar schnellen, einzelnen Cores und haufenweise kleine Cores. Die grossen Cores braucht es für serielle Aufgaben, der Rest ist verteilt.
Natürlich alles hoch theoretische. Vor allem wie man solch ein Mix gescheit programmieren kann, ist ein riesen Problem.
Die Rechenleistung hängt nicht nur vom Takt, sondern auch vom Featureset und deren Nutzung, sowie der Architektur ab.
Was bringt dir ein Pentium4 mit 6GHz, wenn ein i7 mit 2GHz schneller ist?
Was also heute schon möglich wäre, aber noch nicht effektiv ausgenutzt wird, sind die Ressourcen.
Eine Applikation, die konsequenten Gebrauch von aktuellen Befehlssätzen
und GPGPU macht, wird sich mit einem übertakteten i7 mit ca. 4GHz und einer 5870 oder 480 sehr gut anfreunden können.
Wenn diese Optionen erstmal konsequent genutzt worden sind, dann können wir uns gerne nochmal über technologische Alternativen unterhalten.
Ansonsten wird es der kommenden "neuen" Technologie leider genauso ergehen wie der aktuellen. ;)
(del)
2010-05-05, 00:02:55
Das Fazit: Das beste wäre eine Zusammensetzung aus ein paar schnellen, einzelnen Cores und haufenweise kleine Cores. Die grossen Cores braucht es für serielle Aufgaben, der Rest ist verteilt.Was ist denn jetzt ein Quad mit Cuda-Graka? :|
@Coda
"Komischerweise" kam ich mal auf den Trichter, daß die einfachen Progger mit ihrer 1-Kern-Allerweltssoft sich zwar im Vergleich relativ leicht mit 2 Kernen taten/tuen, darüberhinaus aber ziemliche Probleme zu haben scheinen :confused: Hab das ne Weile bei Bildanzeigern (Thumbs) oder Packern in der OpenSource verfolgt.
Ausgenommen einiger weinger MP-Stars wie WinRAR usw. gibt es imho auch interessante Effekte die sich mit den 3-Kernern von AMD offenbarten, wo Multicoresoft mit 2 Kernen und auch noch mit 3 Kernen recht ordentlich skaliert, mit 4 dann merkbar schlechter. (hab natürlich verpeilt die Links dazu zu speichern :mad:) Imho also.
Du kennst doch die Geschichte mit dem Universum und seiner Fähigkeit immer noch größere Idioten zu erschaffen ;)
Nein Spaß beiseite, es gibt schon noch so ein paar Falltüren, aber nichts grundsätzliches.
Ich habs auch mit nem Allendale 3.2Ghz gespielt,
Hatte ich auch und nun nen E8400@4Ghz, das ist ein Unterschied, glaub mir,
sonst hätte ich nicht 4 verschiedene DCs gehabt. Hatte bis jetzt noch keine
Probleme bei den bisherigen Spielen, auch nicht in GTA4.
Der Multicore-Hype ist verständlich weil man den Heimanwender
irgendwie überzeugen muss, das das zu was gut sein soll, auch wenn
es das in praktischen Fällen oft nicht ist. Liest man ja gern
in Reviews@CB wo man ohne I7@3.6Ghz praktisch nix mehr zu sehen bekommt,
aber dann vergessen hat die Balken entsprechend anzupassen.
Man muss sich bei Benchmarks, Reviews usw. immer fragen: "Wem nützt es was?, und brauch ich das?" und meistens kann man zumindest die erste Frage pauschal mit "Anderen mehr als mir" beantworten ;)
Ganon
2010-05-05, 11:31:09
Mal eine Frage nebenbei, da ich über die aktuellen CPUs nicht ganz so informiert bin. Inwieweit schalten die CPUs (Intel und AMD) ihre Kerne eigentlich im idle aus? Bereits komplett?
Daredevil
2010-05-05, 11:52:59
Hatte ich auch und nun nen E8400@4Ghz, das ist ein Unterschied, glaub mir,
sonst hätte ich nicht 4 verschiedene DCs gehabt. Hatte bis jetzt noch keine
Probleme bei den bisherigen Spielen, auch nicht in GTA4.
Und was ist mit den Leuten, die nicht übertakten?
Da ist ein Dualcore mit HTT/Tri/Quadcore nötig, weil ein "normaler" Dual-Core nicht die nötige Power hat.
Iruwen
2010-05-05, 12:04:32
Weiss nicht ob das schon gepostet wurde: http://www.youtube.com/watch?v=KfgWmQpzD74 Ein Vortrag über Amdahls Law in der Multi-Core-Ära. Amdahls Law ein bisschen erweitert / verfeinert und dann theoretische Spielereien gemacht.
Das Fazit: Das beste wäre eine Zusammensetzung aus ein paar schnellen, einzelnen Cores und haufenweise kleine Cores. Die grossen Cores braucht es für serielle Aufgaben, der Rest ist verteilt.
Natürlich alles hoch theoretische. Vor allem wie man solch ein Mix gescheit programmieren kann, ist ein riesen Problem.
Ist das nicht genau das Konzept des Cell Prozessors (PPE/SPE)?
(del)
2010-05-05, 12:29:39
Und was ist mit den Leuten, die nicht übertakten?Find ich aber unfair bei einer CPU die sich selbst übertaktet ;)
Daredevil
2010-05-05, 12:32:08
Kein Risiko. Kein selbst Hand anlegen = DAU sicher
(del)
2010-05-05, 12:51:18
Für DAUs find ichs auch ok.
Der DAU überlegt auch nicht ob ein X-Core sinnvoll ist, er will ihn
Aquaschaf
2010-05-05, 17:35:28
Ist das nicht genau das Konzept des Cell Prozessors (PPE/SPE)?
Ja, ist es im Grunde. Unabhängig davon dass CELL nicht so sehr der Bringer ist spricht viel für das generelle Konzept - wie hier ja schon mehrfach erwähnt wurde.
Ist das nicht genau das Konzept des Cell Prozessors (PPE/SPE)?
Cell hat ein unglaublich beklopptes Programmiermodell von den "einfachen" Cores. Das kann man keinem zumuten.
(del)
2010-05-05, 19:43:20
Der DAU überlegt auch nicht ob ein X-Core sinnvoll ist, er will ihnDie meisten DAUs die mich fragen, fragen mich eigentlich erst was sie damit sollen.
Iruwen
2010-05-05, 22:57:55
Cell hat ein unglaublich beklopptes Programmiermodell von den "einfachen" Cores. Das kann man keinem zumuten.
Merkt man an den murksigen PS3 Umsetzungen von Multiplattformtiteln. Aber das liegt ja weniger am generellen Konzept als am SDK.
mapel110
2010-05-07, 16:01:19
http://ht4u.net/news/22084_intel_will_mit_anaphase_alte_software_deutlich_beschleunigen/
Intel arbeitet an einer Technologie, um auch alte Software mit mehreren CPU-Kernen zu beschleunigen. Ist aber wohl noch lange nicht Realität und dauert noch ein paar Jährchen. Aber gut zu wissen, dass sie doch was tun. Ich bin gespannt, ob AMD sowas auch auf die Kette bekommt.
/edit
http://ht4u.net/news/22089_schnellere_prozessoren_durch_mehr_rechenfehler/
Mehr Rechenfehler zulassen, damit mehr Taktrate. Korrigieren hinterher. Auch kein schlechter Ansatz.
Exxtreme
2010-05-07, 16:26:53
/edit
http://ht4u.net/news/22089_schnellere_prozessoren_durch_mehr_rechenfehler/
Mehr Rechenfehler zulassen, damit mehr Taktrate. Korrigieren hinterher. Auch kein schlechter Ansatz.
Und da fragt sich ob das tatsächlich schneller sein wird. Schon rein von der Logik her eher nicht. ;(
Ganon
2010-05-07, 16:36:50
Und da fragt sich ob das tatsächlich schneller sein wird. Schon rein von der Logik her eher nicht. ;(
Naja, aber wenn du durch den gesteigerten Takt mal eben 1000 Befehle mehr durchkriegst, wovon aber vllt. jetzt 10 falsch waren und wiederholt werden müssen, hast du immer noch 980 Befehle mehr. Jetzt mal simpel ausgedrückt.
Meine Frage ist dann eher, wie haltbar so ein Chip dann ist. Einen faden Beigeschmack hat das natürlich alles irgendwie...
Aquaschaf
2010-05-07, 16:39:28
Naja, aber wenn du durch den gesteigerten Takt mal eben 1000 Befehle mehr durchkriegst, wovon aber vllt. jetzt 10 falsch waren und wiederholt werden müssen, hast du immer noch 980 Befehle mehr. Jetzt mal simpel ausgedrückt.
Die Sache ist doch dass man feststellen muss was nun richtig und falsch ist. Da frage ich mich auch ob die Überprüfung nicht mehr frisst als man gewinnt. Es muss ja nach jeder Instruktion sichergestellt werden dass ihr Resultat korrekt ist.
Air Force One
2010-05-07, 17:00:33
Falls es eine extra einheit ist, doch eher minimal oder?
Damit will ja Intel entweder die Spannung senken oder halt die Leistung steigern.
Beides für Desktop und Mobil Interessant.
Naja, ganz egal wie es Intel lösen will bzw. hat.
Die wissen schon was besser ist bzw. ob es Funktioniert.
Allerdings frage ich mich, wie sich das ganze mit OC verträgt.
Aquaschaf
2010-05-07, 17:44:03
Falls es eine extra einheit ist, doch eher minimal oder?
Naja, wie stelle ich fest ob ich etwas richtig gerechnet habe ohne es nachzurechnen? Und wenn ich es nachrechne, wie kann ich dann noch schneller sein? Ich bin da skeptisch.
Air Force One
2010-05-07, 17:53:12
Frag Intel X-D
Ne kp, ich denke genau so.
Wird aber wohl irgendwie gehen.
Ganon
2010-05-07, 18:02:39
Ich schätze mal eher, das läuft auf eine Signalprüfung hinaus, irgendwie. Weil noch mal nachrechnen wäre ja recht sinnlos, dann kann man ja gleich rechnen ;)
Air Force One
2010-05-07, 18:52:53
Es gibt doch so etwas auch bei RAMs oder nicht?
Zumindest so etwas ähnliches, habe ich gehört als ich mir welchen kaufen wollte,
Soll zwar für Server sein oder so aber naja, kp.
Wie wird es denn dort dann gelöst?
mapel110
2010-05-07, 21:16:59
Extra Chip für Fehlerkorrekturdaten. ECC nennt sich die Technik. So ähnlich kanns wohl auch bei CPUs laufen.
PatkIllA
2010-05-07, 21:28:57
Extra Chip für Fehlerkorrekturdaten. ECC nennt sich die Technik. So ähnlich kanns wohl auch bei CPUs laufen.
Welchen Algorithmus möchtest du da denn einsetzen?
Iruwen
2010-05-08, 00:49:16
ECC korrigiert Fehler bei der Übertragung und Speicherung von Daten, nicht bei der Berechnung.
Allerdings frage ich mich, wie sich das ganze mit OC verträgt.
Das ist wirklich eine interessante Frage. Ich stelle mir das so vor: Der Prozessor bleibt beim Übertakten stabil, weil die Fehlererkennung erkennt, wenn er sich verrechnet hat. Allerdings passiert es bei höherem Takt immer öfter, dass die Pipeline geleert werden muss. Der Prozessor wird also nicht instabil sondern einfach langsamer.
Außerdem müsste sich die Temperatur und die Spannung selbst bei selbem Takt auf die Performance auswirken. Denn die haben ja Einfluss darauf, wie schnell des Signal verarbeitet wird, und wie oft demnach die Pipeline geleert werden muss.
(del)
2010-05-08, 15:56:49
Die Frage die sich normale Menschen mit einem halbwegs normalen Softwarebudget stellen ist doch, ob sie davon außer beim Zocken wirklich etwas haben werden. Man kauft ja keine CPUs für die Zukunft :|
Ich komme nun fast zum "Einkaufspreis" an einen Q9550s den ich auf dem Board noch einsetzen kann und frage mich auch was ich davon gegenüber einem E8400 @3.85Ghz haben sollte. Den Quad krieg ich auf ~3.6 Mhz.
Wobei ich irgendwo auf CB gesehen habe, daß beim gleichen Takt und gleichen Cores die 1-Thread-Leistung auf einem Quad noch leicht abfällt gegenüber einem Duo (??)
Was hat man also davon abseits der Zockerei und abseits von xxx € Software? (Media Recoder mal ausgenommen) Das ist jetzt die sechste Seite und ich habe noch nichts darüber gehört =)
Die Frage die sich normale Menschen mit einem halbwegs normalen Softwarebudget stellen ist doch, ob sie davon außer beim Zocken wirklich etwas haben werden. Man kauft ja keine CPUs für die Zukunft :|
Ich komme nun fast zum "Einkaufspreis" an einen Q9550s den ich auf dem Board noch einsetzen kann und frage mich auch was ich davon gegenüber einem E8400 @3.85Ghz haben sollte. Den Quad krieg ich auf ~3.6 Mhz.
Wobei ich irgendwo auf CB gesehen habe, daß beim gleichen Takt und gleichen Cores die 1-Thread-Leistung auf einem Quad noch leicht abfällt gegenüber einem Duo (??)
Was hat man also davon abseits der Zockerei und abseits von xxx € Software? (Media Recoder mal ausgenommen) Das ist jetzt die sechste Seite und ich habe noch nichts darüber gehört =)
Das könnte daran liegen, dass es in diesem Thread darum geht, wie man in Zukunft die Prozessorleistung steigern kann und was machbar ist.
Aber du kannst ja einen "Warum bringt mir ein schneller Prozessor im Textverarbeitungsprogramm und beim Surfen nichts???" -Thread aufmachen.
Gast2Gast
Vielleicht solltest du auch den ganzen Thread lesen und nicht nur die letzten zwei Seiten? Am besten erstmal gleich mit der Überschrift anfangen.
Die Frage die sich normale Menschen mit einem halbwegs normalen Softwarebudget stellen ist doch,<snip>
Was hat man also davon abseits der Zockerei und abseits von xxx € Software? (Media Recoder mal ausgenommen) Das ist jetzt die sechste Seite und ich habe noch nichts darüber gehört =)
Also zum einen hast Du sicher die Grafikkarte und Soundkarte im Chipsatz, das heisst also dein Prozessor muss die ganze Berechnung fuer beide durchfuehren. Einen Antivirus hast Du auch sicherlich. Der prueft bei jedem Dateizugriff. Also CPU wieder. Du benutzt sicherlich auch irgend ein Kommunikationsprogramm. Wenn dort Video laeuft, zieht das das schon ganz gut an der CPU. Nicht umsonst hat Skype zum Beispiel groessere Konferenzen nur ab schnelleren Dualcores erlaubt, und das war noch ohne Video.
Als Leser in diesem Forum gehe ich davon aus, dass Du halbwegs bewandert bist mit Rechnern und schon gelernt hast, dass ein Backup eine tolle Sache sein kann. Speziell von einem eventuellen SoftwareRaid (wegen dem normalen Budget). Und natuerlich moechtest Du schon irgendwie fluessig arbeiten.
Obwohl schon Dein Packprogramm zwei Kerne gerade voll auslastet.
Und dein Upload ueber die Gigabitnetzwerkleitung den dritten Kern auf Trab haelt.
Als kleine Zusammenfassung: Deine CPU muss mehr und mehr Aufgaben uebernehmen und soll trotzdem noch deine Software flott und ohne Verzoegerung ausfuehren.
Zum Thema der Intelschen Fehlerkorrektur:
Es geht doch schon seit Jahren das KosmischeStrahlungsSchreckGespenst um und wird immer GROESSER je kleiner die Strukturen werden. Kann sich vielleicht noch jemand daran erinnern, dass die NASA nicht voellig grundlos vor einigen Jahren gebrauchte 8086er Hardware gesucht hat?
Nur zur Erinnerung, Kupfernetzwerkkabel sind ueber die vergangenen Jahre auch immer schneller geworden und warum? Ahja genau --> Fehlerkorrektur.
Also irgendwie scheint das ja dann doch zu funktionieren. Stichwort DSL.
Vielleicht kann sich ja sogar noch jemand an die alten Tastaturen mit prellenden TTTTasten erinnern? Kann sich heute keiner mehr vorstellen.
Dank Fehlerkorrektur koennen wir heute flott von der Leber schreiben, was uns in den Sinn kommt. Sogar in diesem Forum.
Ganon
2010-05-09, 15:20:03
Kann sich vielleicht noch jemand daran erinnern, dass die NASA nicht voellig grundlos vor einigen Jahren gebrauchte 8086er Hardware gesucht hat?
Weil man bei den völlig veralteten Space-Shuttles nicht mal eben so die CPU tauschen kann? ;)
(del)
2010-05-09, 16:05:17
Also zum einen hast Du sicher die Grafikkarte und Soundkarte im Chipsatz, das heisst also dein Prozessor muss die ganze Berechnung fuer beide durchfuehren.Ich hab keine Grafikkarte im Chipsatz. Was wird das denn? :D
Bei den Beispielen steht auch garnicht fest, ob die Prozesse davon profitieren oder es nur Kerngehopse gibt. Du kennst es ja von DCs, Anwendung oder Treiber möchten full pull rennen, Taskmanager ziegt 50% Auslastung...
Einen Antivirus hast Du auch sicherlich. Der prueft bei jedem Dateizugriff.Jein. Ich benutze dafür LiveCDs. Das gleiche gilt für imagebasierte Backups.
Also CPU wieder. Du benutzt sicherlich auch irgend ein Kommunikationsprogramm. Wenn dort Video laeuft, zieht das das schon ganz gut an der CPU.Sehe oben
Nicht umsonst hat Skype zum Beispiel groessere Konferenzen nur ab schnelleren Dualcores erlaubt, und das war noch ohne Video.Weil Skype daruf bisschen optimiert hat. Darum geht es mir auch. Man muß #104 einfach nur vernünftig lesen.
Obwohl schon Dein Packprogramm zwei Kerne gerade voll auslastet.
Und dein Upload ueber die Gigabitnetzwerkleitung den dritten Kern auf Trab haelt.Meinst du das Upload wird vom OS am dritten Kern festgenagelt? Ich hab heute nacht von dem neuen Porsche Turbo geträumt...
Meinst du das Upload wird vom OS am dritten Kern festgenagelt? Ich hab heute nacht von dem neuen Porsche Turbo geträumt...
Tja, dann scheint dass das einzige zu sein,was Du mit einem normalen Nutzer gemein hast.
Und die Frage war fuer mich nicht, ob _Du_ besser mit einem SingleCore faehrst sondern was der Sinn im allgemeinen ist.
Und nur weil dein Betriebssystem wildes Kerngehopse als Hobby betreibt, heisst das noch lange nicht, dass sich diese Aufgaben bei Bedarf nicht auch auf kleine Kerne fixieren lassen. Bis jetzt ist das Kerngehopse ja nur aus dem Grund gegeben, weil eben weit weniger Kerne als Tasks und Threads zur Verfuegung stehen also eher ein Argument fuer und nicht gegen Multicore.
Weil man bei den völlig veralteten Space-Shuttles nicht mal eben so die CPU tauschen kann? ;)
Oder eventuell, weil bei den 286ern bereits die Fehlerrate deutlich erhoeht war?
(del)
2010-05-10, 00:52:23
Bis jetzt ist das Kerngehopse ja nur aus dem Grund gegeben, weil eben weit weniger Kerne als Tasks und Threads zur Verfuegung stehen also eher ein Argument fuer und nicht gegen Multicore.Wenn der Scheduler mal Threads paar Switches lang an einem Kern kleben kann.
Die Einzelkernleistung mit einem Thread ist wie gesagt schon bei 4 Kernen nachweislich kleiner als bei 2 Kernen.
Vielleicht ist dir auch entgangen, daß ich nicht nach dem Sinn gefragt habe, sondern was man davon real hat. Real hat man davon in wenigen Einzelfällen (Szenarios) etwas. GTA und content modify/recoding (wobei beim content GPGPU um Längen besser powert)
Und wir reden hier teilweise von 8 Kernen und 16 Threads. Oder halt 4 Kernen und 8 Threads. Weder Microsoft ist da wirklich gut dabei noch die Programmierer. Vor allem die Programmierer haben sehr große Probleme auch nur theoretisch die meisten Aufgaben multithreaded zu beschreiben. Intel/AMD sind ja nicht die Problemkinder oder die Buhmänner dabei.
Turbos mit Kernabschaltung kommen ja nicht von ungefähr oder? 2 Kerne ausknipsen und 2 mit 4Ghz statt 3Ghz fahren. DAS ist ein Feature und nicht das beknackte SMT in einem HomePC :crazy2:
Grestorn
2010-05-10, 08:00:53
Wenn der Scheduler mal Threads paar Switches lang an einem Kern kleben kann.Warum sollte er das tun? Der Scheduler gibt einen zur Ausführung anstehenden Thread immer an einen Core, der gerade nichts zu tun hat, oder stellt ihn in die kürzeste Warteschlange aller Cores.
Die meisten Threads laufen ja von selbst ständig auf Operationen bei denen sie warten müssen (jegliche I/O Ops, also meist Nachladen) und fallen deswegen aus der Liste der aktiven Threads raus, bis die Operation abeschlossen ist (was verglichen mit den Zeitscheiben für die Threads Ewigkeiten sind).
Und wir reden hier teilweise von 8 Kernen und 16 Threads. Oder halt 4 Kernen und 8 Threads. Weder Microsoft ist da wirklich gut dabei noch die Programmierer. Vor allem die Programmierer haben sehr große Probleme auch nur theoretisch die meisten Aufgaben multithreaded zu beschreiben. Intel/AMD sind ja nicht die Problemkinder oder die Buhmänner dabei.Was heißt denn "gut"? Viele Aufgaben (die meisten!) lassen sich schlicht nicht sinnvoll auf mehrere Threads aufteilen. Die allermeisten Aufgaben am Rechner kosten noch nicht mal besonders viel Rechenzeit. Am meisten Zeit (mit riesem Abstand) geht für I/O drauf, gefolgt vom Rendering für das UserInterface.
Mag kein blödes Geschwätz
2010-05-10, 08:17:05
Wenn der Scheduler mal Threads paar Switches lang an einem Kern kleben kann.
Die Einzelkernleistung mit einem Thread ist wie gesagt schon bei 4 Kernen nachweislich kleiner als bei 2 Kernen.
Vielleicht ist dir auch entgangen, daß ich nicht nach dem Sinn gefragt habe, sondern was man davon real hat. Real hat man davon in wenigen Einzelfällen (Szenarios) etwas. GTA und content modify/recoding (wobei beim content GPGPU um Längen besser powert)
Und wir reden hier teilweise von 8 Kernen und 16 Threads. Oder halt 4 Kernen und 8 Threads. Weder Microsoft ist da wirklich gut dabei noch die Programmierer. Vor allem die Programmierer haben sehr große Probleme auch nur theoretisch die meisten Aufgaben multithreaded zu beschreiben. Intel/AMD sind ja nicht die Problemkinder oder die Buhmänner dabei.
Turbos mit Kernabschaltung kommen ja nicht von ungefähr oder? 2 Kerne ausknipsen und 2 mit 4Ghz statt 3Ghz fahren. DAS ist ein Feature und nicht das beknackte SMT in einem HomePC :crazy2:
Lieber BH,
gib es doch einfach auf...
Beitrag #8 und #42 haben im Grunde schon alles auf den Punkt gebracht.
Es scheint hier Leute zu geben, denen man noch so viele Fakten um die Ohren schlagen kann - es juckt sie nicht. Die Multicore-Frage bringt zweifelsohne einen äußerst dümmlichen und blinden Enthusiasmus zu Tage.
Mein absoluter Favorit ist bisher ein Gastbeitrag von gestern...
Zum (er)schießen! ;D
Marketing ist eben alles. Und hier waren Intel & AMD höchst erfolgreich.
Ein hoch getakteter DualCore (ohne HT) ist in der Gesamtschau nach wie vor das Maß aller Dinge. Der reale Nutzen eines Quad ist heute noch vernachlässigbar.
boxleitnerb
2010-05-10, 08:45:15
Heute vielleicht. Kauf ich mir meinen Prozessor nur für heute? Heute eingebaut und morgen in die Tonne getreten oder wie? Ein Quad gibt einem für die nächsten 2-3 Jahre deutlich mehr Zukunftssicherheit als es ein Dual tun kann. Wer heute noch einen Dual kauft, dem ist nicht mehr zu helfen - es sei denn, es ist ein billiger anspruchsloser Office-PC.
PatkIllA
2010-05-10, 08:54:51
Sich was für die Zukunft zu kaufen war seit Anbeginn des PCs der falsche Weg. Warum sollte sich das jetzt ändern? Notfalls kauft man halt in 1 bis 2 Jahren nach.
boxleitnerb
2010-05-10, 09:04:03
Jein. IdR hast du Recht, aber der Trend zu multicore optimierten Spielen und vor allem Anwendungsprogrammen ist seit einiger Zeit klar ersichtlich. Wenn man dann noch die Preise anschaut und sieht, dass ein potenter Quad grade mal gute 100 Euro kostet, fällt die Entscheidung nicht schwer.
Was soll ich jetzt einen DC kaufen, wenn damit Einzelfälle wie GTA etc. grenzwertig laufen, was 2010 und 2011 noch häufiger passieren wird? Wenn man mit seinem DC zufrieden ist, fein. Aber bei Neukauf ist DC für Spieler einfach keine gute Wahl mehr.
Man muss den Nutzen des Produktes nicht nur am Kauftag, sondern auch über dessen voraussichtliche Lebensdauer im eigenen Rechner betrachten.
Sich was für die Zukunft zu kaufen war seit Anbeginn des PCs der falsche Weg. Warum sollte sich das jetzt ändern? Notfalls kauft man halt in 1 bis 2 Jahren nach.
Wenn man sich vor 2 Jahren einen Q9xxx (z.b. Q9300 @ 3250 bei Standardvcore) gekauft hat, ist der immer noch aktuell, was Leistung und Stromverbrauch angeht - und zwar in jeder erdenklichen Situation. Und ich denke mal bis 2011/2012 wird man damit immer noch in der oberen Liga mitspielen, aber dann können wir uns ja nochmal unterhalten ;)
grüße numb
(del)
2010-05-10, 15:04:16
Heute vielleicht. Kauf ich mir meinen Prozessor nur für heute? Heute eingebaut und morgen in die Tonne getreten oder wie?Nein. Aber spätestens übermorgen, wenn der neue geile Hexa der auch pro Thread wesentlich mehr leistet nach einem neuen Sockel verlangt.
@boxleitnerb
Spiele ok, aber ich sehe keinen "Trend" für multicore optimierte Anwendungen. Es wird das weiter ausgebaut was schon mit den P4 Dualcores brauchbar ging. Wurde hier schon mehrmals aufgezählt. Der Rest ist fast genauso da wo es am Anfang war. Oder er bleibt bei 2 Cores stecken.
@Numb
Ich welcher oberen Liga bitte? Schon jetzt knallt ein i7 es so weg, daß einem nur die Tränen kommen. Pro Thread ;) Über so ein Teil lacht man sich mit einem E8500 @~3.9 Ghz (mit Standardspannung?) eh schlapp. Zum content recode nehmen beide, wenn es viel ist, GPGPU.
Sonst bleibt fast nur noch das Zocken von bestimmten Titeln über.
Das will ich auch garnicht schlecht machen, aber welche Trends sind denn jetzt wo zu erkennen? Ich sehe keine. Ein Trend ist es eher jetzt, vor seinem tot, endlich paar Zeilen MMX "Inliner" reinzuschieben oder sich mit SSE zu beschäftigen. Das macht mit 4 Ghz richtig Bock und ist im Gegensatz zum dürftigen Aufpflücken der unmöglichsten Aufgaben relativ billig zu machen.
Der andere Trend ist Kerne abzuschalten um auf 1 oder 2 davon "Turbo" fahren zu können. Mir scheint als wenn AMD und Intel hier mittlerweile meiner Meinung wären ;)
Deinorius
2010-05-10, 15:31:52
Zum content recode nehmen beide, wenn es viel ist, GPGPU.
Welchen Recode? Videos? Meinst du vielleicht jene Encoder, die von x264 niedergemäht werden? Die Casualuser bei den Videobearbeitern lasse ich außen vor, die bräuchten dafür so oder so weder ne schnelle CPU noch GPU.
Dazu stellt sich noch die Frage, ob nicht selbst z.B. ein x264gpu nicht eine schnelle CPU bräuchte.
GPGPU ist derzeit noch gar nix, als dass man das für Normaluser in diese Diskussion mit einbeziehen könnte.
(del)
2010-05-10, 19:18:24
An sich ist das genaze Thema außen vor, wenn man überlegt wieviele Leute mehrmals die Woche etwas recodieren, kann man das eigentlich komplett wieder streichen.
Ich wollte nur einmal nicht derjenige sein auf den sich die Geier stürzen, weil er in diesem Thread dem stolzen Paradebeispiel das Wasser abgräbt.
Sorry ;)
@Numb
Ich welcher oberen Liga bitte? Schon jetzt knallt ein i7 es so weg, daß einem nur die Tränen kommen. Pro Thread ;) Über so ein Teil lacht man sich mit einem E8500 @~3.9 Ghz (mit Standardspannung?) eh schlapp. Zum content recode nehmen beide, wenn es viel ist, GPGPU.
Sonst bleibt fast nur noch das Zocken von bestimmten Titeln über.
Du meinst wohl, der Quadcore lacht sich über den Core 2 Duo schlapp ;)
Der stärkste C2D, ein E8600 mit 3,33GHz kann es weder unter 800x600 (CPU limitiert), noch unter 1680x1050 mit dem cache-kastrierten, um 1000 Mhz niedriger getakteten, schwächtstem 45nm-Quadcore - dem Q8200- aufnehmen ( click (http://www.computerbase.de/artikel/prozessoren/2010/test_amd_phenom_ii_x6_1055t_1090t_be/32/#abschnitt_performancerating)).
Und dabei kann man den Q8200 sicher (prozentual) noch mehr übertakten als einen E8xxx.
Imho kann von "bestimmten" Titeln keine Rede sein - eher von einem mittlerweile nahezu abgeschlossenem Umstieg von 2 auf 4 Threads bei aktuellen Titeln (der vielen eventuell noch garnicht bewusst geworden ist ;) )
boxleitnerb
2010-05-10, 20:00:25
Auch wenn die Grundaussage diesmal stimmt:
Schon wieder Computerbase! Verlinkt doch diese Dilettanten nicht immer! :mad:
dachte das zählt nur für graka-tests :)
boxleitnerb
2010-05-10, 20:18:34
Grakatests sind ok, CPU Tests sind "fragwürdig"
(del)
2010-05-10, 22:50:08
Du meinst wohl, der Quadcore lacht sich über den Core 2 Duo schlapp ;)Schöner Test. Meinst du jetzt LAME?
Und sonst so, was finden wir denn da unter Anwendungen? Autodesk :D, Lame ;), MainConcept, SPEC :|, TrueCrypt, Winrar, Vantage (wtf?)...
Falls das eine Verarsche sein sollte, es hat nicht hingehauen.
Schöner Test. Meinst du jetzt LAME?
Und sonst so, was finden wir denn da unter Anwendungen? Autodesk :D, Lame ;), MainConcept, SPEC :|, TrueCrypt, Winrar, Vantage (wtf?)...
Falls das eine Verarsche sein sollte, es hat nicht hingehauen.
Also bitte stell dich doch nicht dümmer als du bist ;) Wenn man schon Monitor-Auflösungen angibt, sollte klar sein um welche Art von Applikationen man sich bezieht, oder ?
(del)
2010-05-11, 00:13:47
Was interessiert mich das denn, wenn dich meine Fragen nicht interessieren? Die Dummheit gilt es erstmal noch zu definieren :rolleyes: Ich schätze du wirst das auch gleich selbstverliebt versuchen (?) Nur zu :smile:
Ich weiß, früher war alles einfacher. Da galt man schon als dumm, wenn man nicht lesen konnte...
Den Gefallen tu ich dir nicht, reicht ja wenn du OT gehst ;)
Also nochmal als Hinweis: Auf die Aussage "Sonst bleibt fast nur noch das Zocken von bestimmten Titeln über" habe ich ein Rating verlinkt das zeigt, dass ein um 1000 MHz niedriger getakteter und mit weniger Cache ausgestatteter Quadcore bei aktuellen Spielen (egal ob CPU oder Grafik limitiert) besser abschneidet als der schnellste C2D.
Weshalb IMHO die Aussage, dass Quads nur von bestimmten (wenigen ?) Spieletiteln profitieren falsch ist.
Grüße numb
Was sagt ein Rating von ausgesuchten Titlen denn? Hast du dir ArmA2, RE5, Anno oder FarCry2 überhaupt angeschaut? Oder spielst du das in 1024* oder 800*?
Weißt du was mit den Quads passiert die sich vielleicht nicht entfalten können, weil sie nicht von nach-Fermis unterstützt werden? Sie werden so oder so zu schwach. Pro Thread und pro Sekunde. Die bringens einfach nicht mehr, weil sie von dem weiter gesteigerten content erschlagen werden.
Es muß also wieder was neues her. Wer dann wie hier im Thread behauptet, mit einem Q6600 oder übertaktetem Q8200 wäre man für Jahre fein raus, gegenüber einem übertakteten E8400/E8500/E8600, der ist nicht wirklich von dieser Welt.
Da werden einem Worte in den Mund gelegt, die man nie gesagt hat ;)
Natürlich habe ich mir die Tests angeschaut. Ich sehe keinen einzigen Test, wo ein C2D E8600 (3,33 Ghz) vor einem C2Q Q9550 (2,83 Ghz) liegt. Was einen im Regelfall zu dem Schluss bringen sollte, dass jedes dieser Spiele auf mehr als 2 Threads ausgelegt ist.
Im Durchschnitt reicht augenscheinlich sogar ein 2,33Ghz Quad für die Leistung eines E8600 (beide Standardtakt, mit afaik höheren OC-Reserveren für den Quad)
(del)
2010-05-11, 15:01:59
Im Durchschnitt reicht augenscheinlich sogar ein 2,33Ghz Quad für die Leistung eines E8600Na sicher. Deswegen macht so ein Ratio nicht viel mehr Sinn als average fps um die Leistung einer Graka zu beurteilen.
Ich mag den Stil, mit dem Dualcores als das Nonplusultra gefeiert werden, selbst der dazugehoerige Schreibstil ist locker flockig und flott wie Schlaghosen in den 70ern.
Ich bin selbst leidgeplagter Besitzer eines E8600.
Wenn es ans Spielen von selbst aelteren Titeln geht, muss ich immer die Anderen fragen ob sie nicht den Server uebernehmen wollen.
Machen die auch bereitwillig, weil es sonst irgendwie doch zu ruckig wird.
Die beiden Kerne sind einfach schon voll ausgelastet und da ist einfach nirgendwo noch ein Kern, den man vielleich doch noch bei leicht geringerer Geschwindigkeit mitbeschaeftigen kann. Auf der GPU krieg ich auch weder Server noch Kommunikation zum laufen.
Manche Spiele wollen nur mit Klimmzuegen und Registry frickeln auch auf zwei Kernen fluessig laufen. BFBC2, einfach mal googeln.
Wie auch immer, die Zeiten der Dualcores sind einfach vorbei.
Wobei die Moeglichkeit eines Fallback auf zwei schnelle Kerne in der Tat eine tolle Sache im Hinblick auf Abwaertskompatibilitaet ist.
Und ja, selbstverstaendlich gibt es genuegend Leute, die mit dem Dualcore gluecklich sein koennen. Meine Mutter hat sogar noch einen alten P4 von mir in Benutzung (Singlecore + Hyperthreading).
Und sie liebt das Hyperthreading. Der PC bleibt jetzt ansprechbar bei allem was sie macht. Macht das jetzt den P4 zum Mass der Dinge?
Ich mag den Stil, mit dem Dualcores als das Nonplusultra gefeiert werden:|
Ich mag keine Leute die erzählen wie toll der Job in der PR-Abteilung wäre, offensichtlich aber größtenteils Langeweile schieben. Oder wird das hier bezahlt?
Ich bin selbst leidgeplagter Besitzer eines E8600.Na sicher bist du das :uup:
Und ja, selbstverstaendlich gibt es genuegend Leute, die mit dem Dualcore gluecklich sein koennen.Könnte es sein daß mit dir aber weder die glücklichen noch die unglücklichen hier noch eine Diskussion führen wollen? Ich schätze das liegt an deinem überwältigenden Sachverstand?
Autsch, ich gebe zu, ich kaufe Prozessoren nur noch von Markenherstellern.
Und ich mag Leute, die nicht diskutieren sondern einfach nur so antworten.
Und und und.
Aber ist es nicht irgendwie doch Zeit, mal den Kopf rauszustrecken und zu gucken, wo sich Trends hinentwickeln? Nur wegen scheinbar fachlich kompetenten Beitraegen, in denen der Dualcore noch super abschneidet unter Laborbedingungen, kaufen Leute Dualcores um dann festzustellen: Mein Spiel laeuft top im Singleplayer. Aber wieso koennen die anderen so flott spielen im Multiplayer?
(del)
2010-05-11, 23:57:58
Aber ist es nicht irgendwie doch Zeit, mal den Kopf rauszustrecken und zu gucken, wo sich Trends hinentwickeln?Ehrlich gesagt bin ich da recht egoistisch. Ich mache beim Setzen von Trends nur selten mit. Ich nutze hinterher nur ihre Früchte.
Die sind mir für den Alltag noch nicht süß genug.
Deinorius
2010-05-12, 00:06:32
Sehr hübsch umschrieben. Kann man nur unterschreiben. :)
papachrischi
2010-05-12, 04:36:36
Ehrlich gesagt bin ich da recht egoistisch. Ich mache beim Setzen von Trends nur selten mit. Ich nutze hinterher nur ihre Früchte.
Die sind mir für den Alltag noch nicht süß genug.
Das muß natürlich jeder für sich entscheiden. Da ich ein Anhänger der GTA- Reihe bin, musste nach dem Kauf von GTA4 ein Quad rein. Das Spiel läuft wirklich spürbar besser auf dem Ding. Für mich sind die Früchte schon süß genug. :biggrin:
Diese ganze Diskusion, ob Quad oder Duo oder was auch immer kommt mir übrigens sehr bekannt vor, hatten wir alles schon vor einigen Jahren.
http://www.hartware.de/review_575.html
Heute läuft eigentlich kein aktueller Titel mehr ordentlich auf einem SingleCore.
(del)
2010-05-12, 11:24:02
Das muß natürlich jeder für sich entscheiden.Das war ungefähr die Aussage ;)
Heute läuft eigentlich kein aktueller Titel mehr ordentlich auf einem SingleCore.Titel? Aimp2 läuft auf dem P-M Laptop hier mit jedem Titel herovrragend ;)
Manche Spiele wollen nur mit Klimmzuegen und Registry frickeln auch auf zwei Kernen fluessig laufen. BFBC2, einfach mal googeln.
Wie auch immer, die Zeiten der Dualcores sind einfach vorbei.
Jo, für verkrüppelte Konsolenports mag es für DCs eng werden, obwohl es nicht nötig wäre, aber dafür müsste man ja die Engine, die leider auf mehrere Konsolen-CPU-Luftpumpenkerne ausgelegt ist, umschreiben. Dagegen sträubt sich aber das Kapital. Mich stören die Anschaffungskosten eines QCs oder größer weniger, allerdings verbrauchen die Dinger momentan mir zu viel Saft und werden gut warm, speziell wenn man overclocked. Und für was? Für schöne Konsolenports, wo beispielsweise die komplette Xbox360-CPU in einigen Disziplinen einem 2,4 Ghz SC-Opteron unterlegen ist. Prost.
Die Frostbite-Engine fuer den PC ist technisch naeher an einem Konsolenemulator als an einer Portierung. Afaik hast Du das IO-Layer
als Hardwareschnittstelle, wohingegen der LUA-Teil nahezu unveraendert fuer alle Plattformen bleibt. Wenn ich das richtig verstanden habe, wird der LUA-Zwischencode in Echtzeit interpretiert.
Das dann gehoerig Rechenleistung gefragt ist, versteht sich von selbst.
Neomi
2010-05-13, 13:17:53
Ja, Lua ist eine reine Interpretersprache von Haus aus. Für den PC gibt es auch eine alternative Runtime (llvm-lua), die das Script nicht in Bytecode für eine VM übersetzt, sondern in nativen Code. Aber einerseits ist das nicht die offizielle Runtime, was schon diverse Vorbehalte dagegen auslösen dürfte (auch bei mir), ob nun begründet oder nicht. Andererseits kommt noch dazu, daß die Scripts eh nicht zu komplex werden dürfen, weil die Konsolen (llvm-lua funktioniert mit denen nicht, soweit ich weiß) sie noch verarbeiten können müssen, auf dem PC ist eine Echtzeit-Interpretation des Bytecodes bei gleichen Scripts daher ebenfalls kein Flaschenhals.
PS:
Es heißt Lua, nicht LUA. Das ist keine Abkürzung.
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.