Conroe- der Killer ;) - Seite 11

Seite 11 von 16 - Forum: Prozessoren auf overclockers.at

URL: https://www.overclockers.at/prozessoren/conroe-der_killer_159758/page_11 - zur Vollversion wechseln!


fresserettich schrieb am 18.03.2006 um 18:36

ist eh meitens so
ist auch nicht schwer zu verstehen, ein sw-entwickler will am am besten alle plattformen ansprechen und wenn er da in eine spezielle sache investiert fallen ihm halt die anderen aus

bei dem was ich jetzt schreibe bin ich mir jetzt nicht ganz sicher weil ich noch nie wirklich in bezug auf sse was programmiert habe
aber könnte man solche opitmierungen an einen entsprechenden compiler abtretten?


SYSMATRIX schrieb am 18.03.2006 um 20:16

Zitat von Castlestabler
ALso bei SSE von neuen und sehr speziellen Befehlssätzen zu sprechen kommt mir ziemlich so vor wie die Propaganda der Softwarehersteller.

SSE ist jetzt 6 oder 7Jahre alt, die Codeoptimierer von Intel sind auch schon lange heraussen und funktionieren schon super, selbst SSE2 ist jetzt schon einige jahre alt. Dann gibt es noch 3Dnow das ist irgendwann dazwischen rausgebracht worden.

Es versucht halt nur immer der eine dem anderen die Schuld in die Schuhe zu schiben, ein vernünftiger C-Compiler zur Codeoptimierung kostet halt mal ein paar 10k Euro und die will sich nich jeder leisten, aber profitieren tut davon eigentlich schon jede Software, weil der ursprüngliche Befehlssatz ist schon so veraltet das er für schnelle Programme fast nicht mehr zu gebrauchen ist.

ähm welcher C++ compiler (und die meiste games sind wohl C++) kostet bitte mehrere 10K€? der ICC kostet schlappe 200USD. MSVC und dergl kosten sicher nicht mehrere 10K€.

@mat:
da hast du recht, aber absolut JEDES komerzielle game heutzutage hat SSE codepaths.


Castlestabler schrieb am 18.03.2006 um 20:20

Es geht nicht um die Compiler selber die sind billig, sondern um die Code-Optimimizer und die sind schweineteuer.


SYSMATRIX schrieb am 18.03.2006 um 20:51

und Code-Optimizer sind bei dir? Menschen? Tools?


Castlestabler schrieb am 18.03.2006 um 21:07

Mein Preis war auch etwas zu hoch, so wie deiner zu niedrig war.

Intel Compiler

Die Preis sind zwar nicht ganz schlimm, wie du aber seihst brauchst du für jede Optimierung ein eigenes Tool.
Also ganz billig ist es nicht und es sicher ein posten an dem man sparen kann, wenn man kein Geld ausgeben will.


SYSMATRIX schrieb am 18.03.2006 um 21:50

du glaubst doch nicht wirklich daß die 400,- für eine firma teuer sind, oder? (außerdem sind das hier die listenpreise pro seat, glaub mir es wird ordendlich billiger wenn man mehr licences haben möchte ...)

aber dennoch versteh ich deinen post oben nicht: compiler sind billig aber optimizer sind teuer :confused: ?

optimization ist eine compile stage.

mein preis war zu teuer weil ich noch die preise für die academic edition hatte. ich war zwar um die hälfte verfehlt, aber du warst um mehr als eine zehnerpotenz daneben.


Castlestabler schrieb am 18.03.2006 um 22:03

Es ist einfach nicht klar formuliert, du bekommst einen Compiler auch locker als Freeware, der dir einfach das Programm übersetzt und sich nachher den Code nicht mehr ansieht.

Bei den Compilern die du von Intel beziehst sind nachfolgenden noch Code optimierungsstufen eingebaut, die dir den Code ständig gegenrechen, diese compilierung dauert zwar länger, aber der Code ist auch deutlich effizienter auf der richtigen CPU.
Selsbt wenn Intel an Entwickler selber nur die Hälfte verlang sind das für eine komplette Systementwicklung noch immer über 500€ pro Arbeitsplatz, weil im ersten Compiler sind noch nicht die neuen Befehlssätze und threading integriert.


SYSMATRIX schrieb am 18.03.2006 um 22:38

hast du schon selbst mal ein programm übersetzt?


that schrieb am 18.03.2006 um 22:49

Zitat von SYSMATRIX
hast du schon selbst mal ein programm übersetzt?

:)


SYSMATRIX schrieb am 18.03.2006 um 22:50

thati du weißt wies gemeint war ;)

ob er schon mal etwas "compiled" hat. mit einem dieser "gegenrechnenden" compiler ;)


Castlestabler schrieb am 19.03.2006 um 15:05

Ich weiß jetzt nicht genau was du meinst, aber Assemblercode selber nach kontrolliert und programmiert, habe ich ja.

Aber ich habe noch nie für eine neuere CPU den ganzen Wahnsinn gemacht, weil alle Pipelines richtig zu befüllen ist mir doch etwas zu mühselig.


GrandAdmiralThrawn schrieb am 20.03.2006 um 08:36

Kann ich nicht einfach dem Compiler mitteilen (wie gesagt, ich bin kein Entwickler, ich frage einfach Mal so), daß er SSE/SSE2 nutzen soll, wenn der Code davon profitiert, und der Compiler entscheidet dann einfach, ob er die Erweiterungen nutzt?


Castlestabler schrieb am 20.03.2006 um 13:49

Du kannst dem Comipler schon sagen ob er es nutzen soll oder nicht, aber der Compiler muss auch wissen was er damit anfängt.
Eine IF-Schleife ist ja zum beispiel in Maschinensprache, keine IF-Schleife sondern eine Anhäufung von JUMP Befehlen.

Jeder Befehlssatzerweiterung bringt jetzt einige Neuerungen die im Compiler enthalten sein müssen um diesem seine Arbeit zu ermöglichen, es wird also allen Befehlen die es gibt verschiedenste Arten von Maschinenbefehlen zugewiesen.
Weiters ist der erzeugte Code ja auch davon abhängig wie die interne Struktur der Prozessors aussieht, eine lange Pipeline zum Beispiel sollte möglichst vor JUMP-Befehlen bewahrt werden oder gleich im Programmablauf die wahrscheinlichste Abfolge hintereinander liegen.

Weiters hat jeder Prozessor verschieden viele parallele Verarbeitungseinheiten, die aber nicht immer gleich ausgeführt sind, jetzt muss man beim Pipelining auch aufpassen, welche Befehle man dem Prozessor hintereinander schickt.


XXL schrieb am 20.03.2006 um 13:56

wenn man ein programm wirklich optimieren will muss man eh den code nach dem compilieren selber noch optimieren, bei grand prix 4 (z.b.) wurde die physik-engine überhaupt in assembler geschrieben weil c++ net genau genug gerechnet hat und die abläufe doch recht zeitkritisch sind ...


Castlestabler schrieb am 20.03.2006 um 14:00

Wenn man alles in Assembler macht dann spart man sich alles und ist sich ziemlich sicher das man die CPU top auslastet, aber frage mal bei informatikern nach wer von denen einen modernen X86 Prozessor einfach so mit assembler programmieren kann, wenn es gut geht 1% und vielleicht 20% können Assemblercode ohne Dokumentaion lesen.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2024