Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Programm entschlacken: JclStrings nimmt 500KB im Projekt ein? (https://www.delphipraxis.net/157049-programm-entschlacken-jclstrings-nimmt-500kb-im-projekt-ein.html)

Keks 27. Dez 2010 02:12

Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich bin gerade dabei, ein Projekt etwas zu entschlacken. Dabei wollte ich über den JCL Project Analyzer sehen, was am meisten Größe beansprucht und war über den ersten Eintrag in der Auflistung doch sehr verwundert:
http://www.delphipraxis.net/attachme...7&d=1293415774

An ein paar Stellen kommt die Jedi Library tatsächlich zum Einsatz, aber dass die JclStrings Komponente am Ende 20% der Programmgröße ausmacht, kann ich nicht nachvollziehen.
Jetzt ist die Frage, ob das so normal ist (warum?) oder ob da was falsch sein könnte (was?).
Hat jemand eine Idee bzw. könnte das in seinen Projekten, wo die Jedis zum Einsatz kommen, mal gegenchecken.

Und falls jemand einen besseren Vorschlag als den JCL Project Analyzer hat, her damit! :)

alzaimar 27. Dez 2010 05:59

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Was bedeutet denn 'BSS' (im Gegensatz zu 'CODE') in der rechten Spalte?

Poelser 27. Dez 2010 06:34

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Zitat:

Zitat von alzaimar (Beitrag 1070559)
Was bedeutet denn 'BSS' (im Gegensatz zu 'CODE') in der rechten Spalte?

Block Storage Segment. Dort werden z.B. Konstanten gespeichert.

CU, der Poelser

BlueStarHH 27. Dez 2010 08:00

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Wo kann ich den JCL Project Analyzer herunterladen? Gibt es den als Standalone-Applikation, ohne dass ich mir die komplette JCL installieren muss? Kann jemand evtl. hier die EXE uploaden? Danke!

alzaimar 27. Dez 2010 08:25

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Zitat:

Zitat von Poelser (Beitrag 1070561)
Zitat:

Zitat von alzaimar (Beitrag 1070559)
Was bedeutet denn 'BSS' (im Gegensatz zu 'CODE') in der rechten Spalte?

Block Storage Segment. Dort werden z.B. Konstanten gespeichert.

Danke.
Sieht dann wohl so aus, als ob die JclStrings 500kb an Daten / Konstanten definiert, z.B. Charmaps usw. 500k sind aber wirklich ziemlich happig.

himitsu 27. Dez 2010 08:38

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Die neueren Delphis (2009+) haben auch nochmal einige Charmaps und Dergleichen an Board ... also insgesamt fällt das dann nicht mehr so auf.

Dezipaitor 27. Dez 2010 12:12

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Sollte das nicht alles ausfallen, wenn optimiert wird?

Keks 27. Dez 2010 13:53

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Zitat:

Zitat von BlueStarHH (Beitrag 1070563)
Wo kann ich den JCL Project Analyzer herunterladen? Gibt es den als Standalone-Applikation, ohne dass ich mir die komplette JCL installieren muss? Kann jemand evtl. hier die EXE uploaden? Danke!

Ich habe JCL+JVCL installiert. Dann taucht der Menüpunkt "Project > Analyse Project" auf. Das Projekt wird dann beim Kompilieren analysiert. Ich glaube, das gibt es nicht als Standalone.

Zitat:

Zitat von alzaimar (Beitrag 1070566)
Sieht dann wohl so aus, als ob die JclStrings 500kb an Daten / Konstanten definiert, z.B. Charmaps usw. 500k sind aber wirklich ziemlich happig.

Also wenn der Eintrag zu der JclStrings.pas gehört, dann sind da eigentlich kaum Konstanten drin, sondern mehr String-bezogene Funktionen (StrSearch, StrPrefixIndex, usw.)

Zitat:

Zitat von himitsu (Beitrag 1070567)
Die neueren Delphis (2009+) haben auch nochmal einige Charmaps und Dergleichen an Board ... also insgesamt fällt das dann nicht mehr so auf.

Das war jetzt sogar der Grund, warum ich mit dem Optimieren angefangen habe. Ich habe Delphi 2006 durch XE ersetzt und bin da jetzt am Optimieren. Immerhin ist der erste Schock nach komplettem Entfernen von RTTI wieder überwunden. ;)

Zitat:

Zitat von Dezipaitor (Beitrag 1070595)
Sollte das nicht alles ausfallen, wenn optimiert wird?

Wäre schön. Auf jeden Fall ist im Projekt bei den Optionen "Optimization" aktiviert. Was anderes fällt mir da jetzt nicht ein. Generell handelt es sich um eine frische XE Installation mit den entsprechenden Komponenten als Standardinstallation.

Keks 6. Jan 2011 23:39

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Keiner eine Idee, wie man die Sache noch angehen könnte?
Und hat meine Beobachtung mal jemand gegengecheckt?

jbg 7. Jan 2011 01:19

AW: Programm entschlacken: JclStrings nimmt 500KB im Projekt ein?
 
Am 5.10.2010 wurden bei der JclStrings.pas Unit IFDEFs eingebaut, die ab Delphi 2009 nicht mehr eigene Char-Maps aufbauen, sondern auf die von der Characters.pas Unit bereit gestellte Tabelle zugreifen. Dadurch entfallen die 500 KB im BSS Segment.

Bugreport:
http://issuetracker.delphi-jedi.org/view.php?id=5333

Die Änderung hat es aber nicht in die aktuelle Release Version JCL 2.2 Build 3886 geschafft. Im Daily Build ist die Änderung aber enthalten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:35 Uhr.
Seite 1 von 2  1 2      

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