AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

Ein Thema von Benedikt Magnus · begonnen am 4. Mai 2016 · letzter Beitrag vom 9. Mai 2016
Antwort Antwort
Benedikt Magnus

Registriert seit: 6. Jul 2012
Ort: Bonn
190 Beiträge
 
FreePascal / Lazarus
 
#1

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 5. Mai 2016, 21:41
Dazu fällt mir dieser Artikel hier ein:
http://blog.synopse.info/post/2015/0...er-than-Delphi
  Mit Zitat antworten Zitat
ralfstocker
(Gast)

n/a Beiträge
 
#2

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 5. Mai 2016, 22:56
Danke!

  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.869 Beiträge
 
Delphi 12 Athens
 
#3

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 6. Mai 2016, 06:33
Auch der neuere 64-Bit Compiler von Delphi benutzt diese Optimierung übrigens nicht.
Es stimmt auch, dass dadurch diese Zeile in FPC Code etwa viermal schneller ausgeführt wird.
Allerdings lässt sich selbst ohne Optimierung diese Zeile auf meinem nicht ganz neuen Rechner 100 Millionen mal in einer Sekunde ausführen, bei FPC eben viermal so oft.

In wie vielen realen Programmen wird dies also relevant sein?

An der Stelle finde ich, dass es nicht unbedingt sinnvoll ist, zu viel Aufwand in "extreme corner case" Optimierungen zu stecken... zumindest nicht in einem kommerziellen Produkt wie Delphi.
Sebastian Jänicke
AppCentral

Geändert von jaenicke ( 6. Mai 2016 um 07:14 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#4

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 6. Mai 2016, 10:22
Kommt immer darauf an. Ereignisgetriebene Datenbankoberflächen (CRUD-Anwendungen) ist das vermutlich egal, da eh alle paar Instruktionen irgendwo hin gesprungen wird.
Hier im Forum habe ich aber auch einige Leute gesehen, die numerische Simulationen in Delphi schreiben. Und in einer engen Schleife bedeutet 4x länger halt, dass die Simulation 4x länger läuft.
  Mit Zitat antworten Zitat
Benutzerbild von TRomano
TRomano

Registriert seit: 24. Nov 2004
Ort: Düsseldorf
194 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 6. Mai 2016, 10:36
Die Relevanz (millionenfaches Berechnen in einer engen Schleife) ist wohl bei den allermeisten Entwicklern gering.
In meinem bisherigen Entwicklerleben hatte ich einmal das Vergnügen (Landesamt für Statistik) und dort wurde dann gleich zu SSE2/SSE3 gegriffen, also wurde der interne BASM angeschmissen
und nur Arrays, Listen etc. an die Func/Proc übergeben und der Rest intern mit dem Assembler gemacht. Oder man hat gleich extern (High Lever Assembler HLA) programmiert und die OBJ-Files in Delphi eingebunden.

Natürlich wünschen wir uns alle hochoptimierten Code, aber auf der anderen Seite wollen wir einen flinken Compiler/Linker, dass wir effizient arbeiten können. Das ist Delphi (fragt mal einen C oder C++ - Entwickler). Vor 20-25 Jahren musste man echt noch auf die Größe der Kompilate achten, aber heute ist das nicht mehr relevant.

Schön wäre es natürlich, wenn man normal mit Delphi entwickeln könnte und bei der Fertigstellung eines Releases einfach den Compiler mit einer hohen Optimierungsstufe anschmeissen könnte. Der Linker würde danach automatisch alle Funcs/Procs/Consts/... aus eingebundenen Units rausschmeißen, die man nicht braucht ...
Thomas Forget

Geändert von TRomano ( 6. Mai 2016 um 10:39 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 6. Mai 2016, 11:02
Zitat:
musste man echt noch auf die Größe der Kompilate achten, aber heute ist das nicht mehr relevant.
Destotrotz sehe ich keinerlei Nutzen darin warum Kompilate so dermaßen aufgebauscht werden müssen.

Zitat:
Schön wäre es natürlich, wenn man normal mit Delphi entwickeln könnte und bei der Fertigstellung eines Releases einfach den Compiler mit einer hohen Optimierungsstufe anschmeissen könnte. Der Linker würde danach automatisch alle Funcs/Procs/Consts/... aus eingebundenen Units rausschmeißen, die man nicht braucht ...
Wobei man das letztendlich mit UPX bewerkstelligen kann/könnte.
Schöner wäre es natürlich direkt in der IDE mit einstellbaren Optimierungs flags.
Aber was rede ich hier den aufwand zu betreiben ist den Entwicklern von Delphi einfach nicht wert.

gruss
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.071 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: DLL mit FPC/Codetyphon erheblich kleiner als unter Delphi

  Alt 6. Mai 2016, 11:29
Zitat:
musste man echt noch auf die Größe der Kompilate achten, aber heute ist das nicht mehr relevant.
Destotrotz sehe ich keinerlei Nutzen darin warum Kompilate so dermaßen aufgebauscht werden müssen.
Ich möchte wetten, das diejenigen Leute, die sich jetzt über das ein oder andere Megabyte mehr in dem Kompilat "aufregen", genau diejenigen wären, die sich über zu lange Kompilierungszeiten beschweren würden, wenn der Delphi-Compiler so hoch optimieren würde wie der ein oder andere C++-Kompiler.

Meckern, um des Meckern willen.

Geändert von TiGü ( 6. Mai 2016 um 11:56 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz