Xidus schrieb:
@Weltenspinner ich glaube wenn die die TPD bei deinen angaben hin bekommen würden wäre das ein meilenstein 800Mhz x4000 = 3,2 Phz und dann nur 250w nice will ich haben
Du machst den Fehler und rechnest das einfach zusammen. Ein solcher Prozessor hat keine 3.2 Phz. Er hat 4000 x 800 Mhz.
Erklären wir das anhand eines Dualcores:
Laut deiner Rechnung müsste ein 3GHZ DualCore die Leistung eines 6GHZ Singlecore haben. Das ist schlichtweg falsch, selbst wenn man sich in derselben Architekturfamilie bewegt.
Im OPTIMALFALL ergibt sich eine Leistung von +100%, allerdings wird diese so gut wie garnicht erreicht. Im Durchschnitt erhöht sich die Leistung um den faktor 1.5 beim Dual und auch hier kommt es wiedereinmal auf die Software an. Wenn du softwae hast, die gnadenlos nur auf einem Kern läuft ist der Leistungszuwachs = 0 und umgekehrt!
Kasmopaya schrieb:
Falsch! Du kannst eine GPU nicht mit einer CPU vergleichen. Shadercores sind hochspezialisiert und auf ein Zusammenspiel aller Kerne hin optimiert, das heisst ein Einzelner könnte nichts ohne die Hilfe der anderen. Bei Grafikberechnung (insbesondere bei Games) muss sehr viel sehr schnell und GLEICHZEITIG passieren. Das Problem ist auch nunmal, dass der Rechner nicht im Voraus weiss, was der User tun wird (wie auch^^), weshalb die GPU möglichst schnell die Eingaben in ein Bild umwandeln muss. Im Vergleich zu einer CPU sind Shader ziemlich klein und bieten im einzelnen weit weniger Rechenpower als ein heutiger CPU-Kern, aber wie gesagt, die ganze Architektur ist anders aufgebaut, denn bei einer GPU weiss man was zu tun ist und was die Shader können müssen.
Bei der CPU ist das anders. Eine CPU ist ein Allrounder und muss so ziemlich alles zumindest ein wenig können. Sei es Physikberechnung (z.B. die Havok-Engine), verarbeitung von Eingaben, Storageüberwachung ect. . Die CPU muss das gesammte System steuern und überwachen können platt gesagt, während sich eine GPU mehr oder weniger nur einer Aufgabe zuwenden kann.
THEORETISCH aber würde Software auf einer GPU schneller laufen, denn was die reine Rechenpower angeht ist die GPU der CPU gnadenlos überlegen und deshalb gibt es auch Rechencluster, die sich diese Power zu Nutze machen. Problem bei dieser Sache ist aber die Software. Bei Clustern läuft hoch spezialisierte und auf den Cluster angepasste Software. beim Desktop ist das nicht möglich, da man hier mit unzähligen Kombinationsmöglichkeiten in der Hardware konfrontiert wird. Multithreaded zu programmieren ist schwer und eine Kunst. Es ist, alswenn du eine Firma besitz mit 1000 Mitarbeitern und du darfst dafür sorgen, dass jeder Mitarbeiter zu jeder Zeiteinheit 100% zu tun hat. Das geht aber nur DANN wenn du weisst dass du 1000 mitarbeiter hast und auch zu jeder Zeiteinheit darüber informiert bist, ob der Mitarbeiter zu 100% ausgelastet ist. Dann kommt noch hinzu, dass du möglichst natlos eine Anweisung an die andere hängen musst um eine optimale Auslastung zu erfahren, d.H. sobald der Arbeiter fertig ist bekommt er die nächste Aufgabe.
Alleine dieses Handling erfordert schon Profis in der Programmierung. Besonders halt bei Clustern wird drauf geachtet, dass immer was zu tun ist und die einzelnen Recheneinheiten optimal mit Aufgaben versorgt werden. Es gibt in solchen Clustern (natürlich nicht in allen
) extra Recheneinheiten, die nur damit beschäftigt sind dafür zu sorgen, dass alles optimal ausgenutzt wird, denn Zeit ist Geld und zeit bedeutet Stromverbrauch, was Geld kostet!^^
MFG