Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Performance von Pascal-Compilern (https://www.delphipraxis.net/17392-performance-von-pascal-compilern.html)

APP 5. Mär 2004 17:19

Re: Performance von Pascal-Compilern
 
Hallo Chewie,

Zitat:

Zitat von Chewie
Ich hab mal gehört, dass der DL-Compiler, der den schnellsten Code erzeugt, der von D5 ist. Sind da die Unterschiede groß zu D6?

ich kann mich Dunkel erinnern, dass Hagen mal erwähnte,
D5 erzeuge den kompaktesten (exe-Größe) Code,
bei der Geschwindigkeit bin ich mir nicht sicher,
am besten Du fragst ihn mal.

NicoDE 5. Mär 2004 17:40

Re: Performance von Pascal-Compilern
 
Zitat:

Zitat von APP
ich kann mich Dunkel erinnern, dass Hagen mal erwähnte, D5 erzeuge den kompaktesten (exe-Größe) Code, bei der Geschwindigkeit bin ich mir nicht sicher, am besten Du fragst ihn mal.

Kleiner <> Schneller.
Ich glaube nicht, dass es wesentliche Unterschiede bei der Code-Erstellung zwischen den 'aktuelleren' Delphi-Compilern gibt.
Was sich allerdings im Laufe der Versionen - mal in die eine, mal in die andere Richtung - geändert hat, sind Dinge die Laufzeitbibliotheken (RTL) und Standardbibliotheken (VCL u.a.) - deren 'Performance' läßt sich schlecht vergleichen und hat mit dem Compiler wenig zu tun.

Marcel Gascoyne 5. Mär 2004 22:53

Re: Performance von Pascal-Compilern
 
Schau mal hier nach, da hat sich mal einer wissenschaftlich damit beschäftigt und einen Benchmarktest der gängigen Pascal Compiler erstellt: http://www.cs.inf.ethz.ch/37-235/stu...s/kaufmann.pdf.

Gruß,
Marcel

olf 6. Mär 2004 07:51

Re: Performance von Pascal-Compilern
 
hey, netter vergleich.
die einen sagen, GNU nutzen, die anderen sagen FreePascal. aber was da verglichen wurde ist nicht schlecht. nur schade, dass Kylix nicht dabei war.

Chewie 6. Mär 2004 14:03

Re: Performance von Pascal-Compilern
 
Zitat:

Zitat von Marcel Gascoyne
Schau mal hier nach, da hat sich mal einer wissenschaftlich damit beschäftigt und einen Benchmarktest der gängigen Pascal Compiler erstellt: http://www.cs.inf.ethz.ch/37-235/stu...s/kaufmann.pdf.

Gruß,
Marcel

Dieses Dokument war das einzigste, was ich vorher bereits gefunden hab. Leider deckt das Benchmarking nicht die Bereiche ab, die mich interessieren.

Marcel Gascoyne 6. Mär 2004 16:15

Re: Performance von Pascal-Compilern
 
Welche Bereiche interressieren Dich denn ?

Für ein Cross-Plattform Projekt ist die kompatiblität der Compiler wichtig. Da wäre wohl Kylix erste Wahl. Die Compiler sollten wohl ähnlich schnellen Code erstellen, probiere es am besten mit einem Testprojekt unter gleichen Hardwarebedingungen aus.

Mit Kylix legst Du Dich allerdings auf Linux fest, im Falle von FreePascal stehen Dir auch andere Plattformen wie Free-/Net- und OpenBSD, Solaris und demnächst auch PowerPC Plattformen wie MacOS, AIX etc. zur Verfügung. Im Hinblick auf Skalierbarkeit ein entscheidender Vorteil gegenüber Kylix. Seitens Borland gibt es auch widersprüchliche Meldungen was die Weiterentwicklung von Kylix betrifft.

Ich persönlich verwende zur Zeit FreePascal unter FreeBSD für meine Projekte. Im Punkt Geschwindigkeit konnte ich bisher keine nachhaltigen Seiteneffekte feststellen. Bei Datenbankanwendungen ist die Ausführungsgeschwindigkeit allerdings auch nicht so entscheidend wie z.b. bei statistischen Berechnungen. Es kommt halt auf den Anwendungsfall an.

Schreib dochmal was Du genau in Deinem Projekt machen möchtest. Die Programmiersprache solltest Du auch für den speziellen Anwendungsfall aussuchen. Pascal ist nicht für alle Fälle ideal.

Bei rechenintensiven Anwendungen wirst Du an einem Compiler, der CPU-spezifische Instruktionen erzeugt nicht vorbeikommen. Weder der Delphi- noch der Kylix Compiler erzeugen CPU-optimierten Code. Bei FreePascal wird zumindest 386/486, Pentium, PII/K6 optimierter Code erzeugt.

Gruß,
Marcel

Chewie 6. Mär 2004 16:29

Re: Performance von Pascal-Compilern
 
Es handelt sich um Berechnungen für ein MM-Spiel (Massive Multiplayer). Es sollen also Daten für beispielsweise 1000 Spieler berechnet werden. Dabei wird halt auf eine Datenbank zugegriffen, wahrscheinlich MySQL.

Ein großer Teil der Rechenzeit dürften zwar die Datenbankzugriffe darstellen, aber der Hauptteil an der Rechenzeit sind zum einen Wanderungen in verketteten Bäumen, um herauszufinden, was berechnet werden soll, und zum anderen zur eigentlichen Berechnung einfache arithmetische Operationen.
Ich schätze, dass das größte Optimierungspotenzial nicht bei den arithmetischen Operationen auftritt, sondern eher bei dem Durchwandern der Bäume und beim Aufruf von dynamischen bzw. virtuellen Methoden.
Allerdings hab ich davon nicht wirklich Ahnung, es sind nur Vermutungen.

Keine Ahnung, wie lang die Berechnungen wirklich dauern, aber je schneller, desto besser. ObjectPascal als Sprache haben wir ausgewählt, da wir da drin im Gegensatz zu C++ recht fit sind.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:50 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz