„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
ich weiss ja das -O3 dem Code auf Geschwindigkeit optimiert, aber ich würde gerne lieber kleine Binarys haben. Da würde sich ja -Os anbieten aber wie sieht es da mit Geschwindigkeit aus?
Die Geschwindigkeitsunterschiede zwischen -O3 und -O2 sind auf x86 >P3/500 so gering, dass man sich darum (fast) keine Gedanken machen muss. -Os ist gleich -O2, jedoch werden die Binarys, sofern möglich, um einige, manchmal leider auch notwendige, Bytes kastriert. Auf einem Produktivsystem (!=privat) würde ich daher höchstens -O2 setzen, auch wenn -O3 und -Os sehr verlockend klingen mögen ;)
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wenn zumindest Linux endlich mal vollständig in Assembler geschrieben werden würde, hätten wir einen echten Geschwindigkeitszuwachs, welcher nicht nur bei applikationsspezifischen Benchmarks 'sichtbar' wäre. Oops, ich träume schon wieder ;)
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
es ist halt alles nur ein optimum was geschhaffen wird...
wobei aber C++ ja wohl die performanteste sprache ist. aber ich sage mal so der compiler ist doch nur ein glied in der kette in assembler kann man genauso müll programmieren wenn man nicht genau bescheid weiss. und es ist einiges aufwendiger.
Wenn zumindest Linux endlich mal vollständig in Assembler geschrieben werden würde
Dann müsste man Linux 10 bis 15 Mal schreiben, weil man es für jede Architektur neu machen müsste. Ich wollte auch nicht wissen, welche Auswirkungen das auf Bugfixing und Weiterentwicklung haben würde... *kreisch*
wobei aber C++ ja wohl die performanteste sprache ist.
C++ ist doch einfach das Ding schlechthin. Wo Du allerdings sehr recht hast, das Assembler schon gewissen Ã?rger machen kann was die einzelnen Architekturen betrifft und vor allem Hardware.
Aber mit den Sprachen das ist halt Philosophie von jedem selbst...
Moppi wrote:wobei aber C++ ja wohl die performanteste sprache ist..
Also ne Programmierstache an sich kann eigentlich nicht wirklich performant / nicht performant sein - das was nachher wirklich entscheident ist, ist wie es der Compiler umsetzt....
und selbst Java & Co sind das mathematische Berechnungen angeht nicht weniger schnell als C++ (wobei das ne andere Baustelle ist, da es ja nicht direkt in Assembler umgesetzt wird)
ja wir wollen uns ja nicht um details zanken ich habe natürlich den compiler gemeint. Bei Grafikfiltern ist es ja analog, die sind auch nicht alles das wahre wenn es um manipulation geht siehe vergleich imagemagick und gd.
Assembler ist IMHO zu aufwendig um, komplette Anwendungen damit zu schreiben. Einzelne Routinen in Assembler ok. Ich kenne das noch von Turbo Pascal da war das ja der Renner später ging das auch mit Powerbasic ;)
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.