Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Warum delphi lahmer als c++?

  Alt 14. Dez 2006, 21:08
Zitat von jmd anders:
Alle sagen ja, dass c++ schneller sein soll als delphi, dabei frage ich mich, in welchen fällen das zutrifft.
Alle sagen ja das Java langsam ist aber ich kenne mindestens ein Beispiel indem eine Java-Implementierung viel schneller als eine C/C++-Implementierung ist

Zitat von jmd anders:
Also bei welchen Schleifen oder sonstigen Anweisungen ist delphi lahmer?
So einfach kann man einen Vergleich nichts machen.

Zitat von jmd anders:
Des weiteren wollte ich wissen, warum dies so ist. Beides wird ja nach asm übersetzt, warum erzeugt der delphi compiler "schlechteren" assembler code?
Schon mal überlegt wieviel unterschiedliche Instruktionserweiterungen und Prozessortypen es gibt. Und jeder will seine Instruktionsreihenfolge haben damits schnell geht. Und für C++ gibt es Hunderte wenn nicht gar tausende Ingenieure die für jeden Prozessortyp einen neuen Compilerschalter erfinden um für den Prozessor xyz das Optimum herauszuholen. Delphi erzeugt dagegen (mit der Codebasis von Borland) "Einheitsbrei" welcher nur für "normale" Pentiums gute Performance erziehlt aber nicht die neuesten Tricks von Core (2) Duo kennt.

Aber diese Optimierungen sind eigentlich vernachlässigbar wenn die Programmlogik nicht passt. Man kann mit hochoptimierten C++-Code langsameren Code erzeugen als z.B. mit VB (noch kein .NET) wenn der Algorithmus und die Programmlogik nicht passt.

In einem Artikel der Zeitschrift c't wurden mal ein Vergleich gemacht:

a, Reines Nummer-Crunshing: Dort ist C++ einsame Spitze. Nirgends kann man (sinnlose) Schleifen so gut optimieren wie unter C/C++

b, Objektorientierte Konzepte wie Vererbung, Methoden-Überladung etc: Hier ist das Sprachkonzept das hinter C/C++ steckt nicht sehr optimal so das sowohl Delphi und C# als auch Java hier die Nase vorne haben.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat