![]() |
Delphi beschleunigen
Hallo,
mit welchen Hard- und/oder Software-Maßnahmen läßt sich die Arbeit mit Delphi deutlich beschleunigen? |
AW: Delphi beschleunigen
Hallo,
am meisten bringt eine SSD :thumb: |
AW: Delphi beschleunigen
Und natürlich sollte man Projekte nicht auf Netzlaufwerken öffnen sondern immer nur auf lokalen Datenträgern.
Das Problem dabei ist, dass Netzlaufwerke nur unzureichend mit lokalem RAM gecached werden können. |
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
Ab Windows Vista wurde ![]() Also mit Windows XP und 100MBit spürt man einen ganz erheblichen Unterschied zwischen lokalem Datenträger und Netzlaufwerk. |
AW: Delphi beschleunigen
Beim Vergleich von PCs mit klassicher Magnetplatte mit SSD-Rechner komme ich immer ganz aus dem Häuschen, das ist wirklich ein gewaltiger Unterschied.
In Sachen RAM komme ich an keine Grenzen, zwischen 4 und 8 GB merke ich keinen Unterschied, zeitweise war ich auch einmal mit 2GB unterwegs und selbst da war alles in Butter. Ansonsten: Ungenutzte "Experten" aus dem Autostart des RAD Studio nehmen. |
AW: Delphi beschleunigen
Projekte sollten eh immer lokal liegen und per Versionsmanagement auf einen Server gespiegelt werden. Ok, als alleinschaffender Kaffeevernichter braucht man das nicht unbedingt, aber für Latenzen beim Compilieren und dem IDE-Start sollten keine der ladbaren Dateien auf einem Netzlaufwerk liegen.
Eine SSD kann ich auch nur wärmstens empfehlen. Allerdings gibt es da auch gute wie schlechte und man muss sein Windows ein bisschen umkonfigurieren (Stichwort Prefetch und Superfetch) damit die Dinger ein bisschen länger halten. Wenn man was stabiles will sollte man am besten zu Intel-SSDs greifen, auch wenn die bissi teurer sind. Die Konkurrenz ist zwar nicht per se schlechter, hat aber eine größere qualitative Streubreite. Als CPU würde ich eher einen schnellen Dualcore als einen niedriger getakteten Quad oder Hexacore empfehlen. Die Delphi-IDE macht kaum Gebrauch von so vielen Kernen und profitiert eher von hohen Taktraten. |
AW: Delphi beschleunigen
Um den Compiler und die IDE per Software etwas flotter zu bekommen, kann man
![]() |
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
Andererseits, ich hab immer irgendwo so ein leichtes Bauchgrummeln wenn ich solche 3rd-party-Konglomerate auf eine Entwicklungsumgebung loslasse. Sowas wird immer erstmal in einer VM getestet. |
AW: Delphi beschleunigen
Zitat:
[Nachtrag] Ich denke, die IDE selber um ein paar Sekunden zu beschleunigen bringt in der Summe nichts oder nur sehr wenig. [/Nachtrag] |
AW: Delphi beschleunigen
Ein schneller Quadcore ist natürlich immer besser als ein schneller Dualcore. Aber vergleicht man innerhalb der selben Preisklasse, dann sind die Dualer eben besser für Delphi geeignet. Es hat auch viel mit den persönlichen Arbeitsgewohnheiten zu tun. Ich brenne eher selten eine CD während nebenher 30 Minuten lang irgendwas im Debugger läuft ;-)
Allgemein hat die CPU bei heutigen Rechnern aber nur noch einen geringen Stellenwert wenn es um die gefühlte Performance geht. Klar ist z.B. das Compilieren sehr CPU-lastig. Aber wie viel Zeit verbringt man denn mit Compilieren und wie viel mit Tippen und IDE-Geklicke? Für den "Wohlfühlfaktor" bringt eine gute SSD jedenfalls wesentlich mehr als eine Killer-CPU. Sinnvoll konfigurierte Software macht auch einen wesentlichen Teil aus. |
AW: Delphi beschleunigen
Mit SSD (Samsunng), WinXP und D7 kompiliere ich jedes Programm unter einer Sekunde.
|
AW: Delphi beschleunigen
@Insider2004
So ähnliche Gedanken gingen mir zuerst durch den Kopf, als ich den Eröffnungsbeitrag las. Mit D7 und XP, übrigens eine Kombination die ich noch in einer VM-Ware laufen habe, stellt sich die Frage eh nur in begrenztem Umfang. Speicherkonsum von D7 bei einem durchschnittlichen Projekt zwischen 50 und 80 MB. Wenn ich mit XE2 einen Build meiner Projektgruppe laufen lasse, kackt die IDE bei etwa 1.2 GB Arbeitsspeicherverbrauch ab. :cyclops: |
AW: Delphi beschleunigen
Apropos VM... ich habe da noch die nervige Eigenart, das es immer mal wieder zu Lags kommt - nur Die Delphi-IDE betreffend. 2-3 Sekunden in denen man sich wundert warum der Code nicht erscheint, den man grade tippt.
Im Grunde nicht schlimm, auf Dauer aber nervig. Ich vermute da schreibt die VM grade irgendwas auf die Host Festplatte. Zumindest konnte ich das Auftreten mit einer virtuellen Extra-Festplatte auf einer anderen Host-Festplatte die ich nur für die Auslagerungsdatei benutze ein wenig einschränken. Ganz weg ist es aber nicht. Naja... auch hier wäre wohl eine SSD angebrachter. |
AW: Delphi beschleunigen
Etwas OT jetzt :?:
Zitat:
|
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
Sorry, das hätte ich bereits bei der ersten Antwort etwas anders und deutlicher formulieren können. |
AW: Delphi beschleunigen
Zitat:
Beim Remotedebuggen hakelt es noch etwas, da scheint es auch Speicherlecks zu geben, aber das benutze ich im Moment weniger, so dass ich dazu nicht viel sagen kann. Beim Kompilieren geht der Arbeitsspeicherverbrauch ziemlich nach oben, wird aber nicht bei jedem Kompilieren mehr, so dass hinsichtlich Lecks dort zumindest mit unseren Projekten alles in Ordnung zu sein scheint. Dass allerdings ein mittelgroßes Projekt schon zu 700 MiB Arbeitsspeicherverbrauch führt, finde ich schon etwas viel. (Das Projekt hat gerade mal etwas mehr als eine halbe Million Zeilen.) |
AW: Delphi beschleunigen
Zitat:
Zitat:
|
AW: Delphi beschleunigen
Wie ist das denn eigentlich beim Erzeugen eines Projektes, legen Compiler und IDE da auch temporäre Dateien an oder verlässt man sich da komplett auf RAM und Auslagerungsdatei? Ich hab das noch nicht so genau verfolgt. Aber falls temporäre Dateien ins Spiel kommen, würde eine SSD zusätzlich noch beim Compilieren Vorteile bringen, nicht nur beim IDE-Start.
Unter Linux gibt es ja ständig Bestrebungen, die Compiler zu optimieren und an die neuesten CPU-Generationen anzupassen. Da werden auch die erweiterten CPU-Befehlssätze mit rangezogen, teilweise sogar Techniken wie CUDA (hab ich mal irgendwo gelesen). Bei Emba scheint man in der Richtung nicht viel Enthusiasmus zu haben, denn dcc32 von XE2 läuft für sich allein sogar noch auf einem Pentium-1-Rechner, nur die IDE halt nicht. Was aber vermutlich weniger an der IDE liegt sondern an der simplen Tatsache dass man P1-Rechner nur schwerlich auf 4 GB RAM aufrüsten kann und Win XP auch nicht so recht darauf laufen mag. |
AW: Delphi beschleunigen
Zitat:
Zitat:
Single-Pass hat bei Delphi allerdings den Nachteil, dass Features wie LINQ nur schwer umzusetzen sind. |
AW: Delphi beschleunigen
Von den DCUs mal abgesehen, das ist klar ^^ Wobei die ja auch nicht unbedingt bei jedem Compilerlauf neu angelegt werden. Es sei denn man hat an der entsprechenden PAS was geändert oder hat gesagt, dass alles kompiliert werden soll.
Ich meinte richtige temporäre Dateien, die im TMP-Ordner angelegt werden. Wenn ich da an MS Word, Corel Draw und Konsorten denke, die produzieren ja haufenweise von dem Zeug. Das sind hochvolatile Dateibestände, da kommt man sich beim Wechsel von HDD gegen SSD vor als hätte man einem Trabimotor gleichzeitig einen Turbolader und Nitroanlage spendiert ;-) Ich selbst habe zwar keinen Rechner, wo Delphi auf einer SSD läuft. Aber ich habe vor einigen Monaten mal einen Laptop mit einem Core2 Duo von HDD auf SSD und von 2 GB auf 8 GB RAM umgerüstet. An der Arbeit im Büro habe ich dagegen einen AMD Phenom X6 1090T mit HDD und 8 GB RAM stehen. Da fiel mir plötzlich die Kinnlade auf die Tischplatte als ich den Unterschied gesehen habe. Bei allem, was nicht gerade sehr CPU-lastig ist, steckt der 6 Jahre alte Lappi den großen Rechner locker in die Tasche. |
AW: Delphi beschleunigen
Man sollte aber auch nicht vergessen, das massenhafte Schreibzugriffe eine SSD in kürzester Zeit töten. Da helfen auch SSD-interne "Wear-Load"-Algorithmen irgendwann nicht mehr.
|
AW: Delphi beschleunigen
Zitat:
Bei heutigen SSDs kann man rechnerisch die maximalen Schreib- und Lesezyklen kaum erreichen, geschweige denn im normalen Einsatz. Wenn ich das korrekt überschlage müsstest du dafür jeden einzelnen Sektor einer SSD 10 Jahre lang mehrfach pro Stunde neu beschreiben um das zu schaffen. |
AW: Delphi beschleunigen
Man kriegt es höchstens noch hin wenn man es ganz bewusst darauf anlegt. Also z.B. indem man eine SSD bis zum Rand befüllt und in die letzten freien 100 kB eine Datei legt mit eben diesen 100 kB und darauf exzessiv rumschreibt.
|
AW: Delphi beschleunigen
Da musste ich mich neulich auch persönlich belehren lassen, dass dem heute nicht mehr so ist. Anlass war ein Logging-Modul das nichts cached und so oft wie möglich jede Zeile einzeln auf die Platte schreibt. Gut zu wissen :-)
|
AW: Delphi beschleunigen
Das sollte ein SSD Chipsatz entsprechend durch Umlagerung behandeln.
Wobei es allerdings bei der Haltbarkeit auch auf die verbauten Zellen ankommt. Es gibt da enorme Unterschiede was die Haltbarkeit angeht. |
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
|
AW: Delphi beschleunigen
Zitat:
Davon abgesehen, was spricht denn dagegen, eine SSD als Spaßbeschleuniger zu verwenden und diese dann per Sync, Schattenkopie oder sonstwas in Hintergrund auf eine HDD zu spiegeln? Doppelt hält bekanntlich besser. Von einem HDD/SSD-Mix-RAID würde ich aber abraten, da gibt dann auch nur der Langsamste im Bunde den Takt an. |
AW: Delphi beschleunigen
Warum wollt ihr denn alle ein schnelleres Delphi?
Ich erinnere mich mit Wehmut an meine Anfangszeiten als Programmierer (ich habe noch Lochkarten gestanzt), da war die Welt noch in Ordnung, der Programmierer noch ein Weltwunder und von allen bestaunt und wenn ich mal Lust auf eine Pause hatte, musste ich nur den Kompiliervorgang starten und konnte dann gemütlich ein bis zwei Stunden in die Kantine gehen. |
AW: Delphi beschleunigen
Jo, die Lochkartenjungs waren noch Helden ^^ Ein Stück weit vor meiner Zeit, ich habe mit Basic und Assembler auf dem KC87 angefangen. Wie sah Kompilieren auf einer Lochkartenmaschine eigentlich aus? Ich hab mir das eigentlich immer so vorgestellt, dass man per Lochkarte direkt Maschinencode oder höchstens Assembler eingegeben hat.
|
AW: Delphi beschleunigen
Der DCC ist nicht gerade Festplatten lastig (nachdem ein Dateinamen-Cache eingebaut wurde). Er verschlingt Speicher und vor allem CPU. Mit einer SSD wird das Lesen und Schreiben der DCU/EXE/BPL natürlich schneller, aber wenn man im Compiler mal Hashtabellen statt linearen Listen einbauen würde (5sek => 30msec) und der DCC64 nicht so viel Zeit mit "malloc+memset" verbringen würde (17sec => 20msec), könnte er noch so einiges an Geschwindigkeit zulegen. Manchmal frage ich mich schon. Klar, die Codebasis ist alt, aber das da gar nichts in richtig Performance-Optimierung vorangetrieben wird?
Hab ich jetzt schon zu viel vom nächten IDE Fix Pack verraten? |
AW: Delphi beschleunigen
Zitat:
- Betriebssystem und Programme auf der SSD installierst - Die Benutzerdaten, also auch deine Delphi-Projekte, auf der HDD speicherst. Meine erste OCZ mit 120 GB ist knapp 3 Jahre alt, davon 2 Jahre in meinem Arbeits-PC und seit etwa einem Jahr in meinem Notebook. Läuft immer noch problemlos. Aus dem Thread "Benutzerordner komplett verschieben": Zitat:
|
AW: Delphi beschleunigen
Ja die Diskussion geht jetzt ein bisschen in die falsche Richtung. Denn das was Delphi gefühlt so langsam macht sind eigentlich andere Dinge. Der Start der IDE wäre ein Punkt. Die Latenzzeiten bei der Quellcodevervollständigung wäre ein anderer. Die Zeit bis die Hilfe startet ein dritter. Das alles ist ziemlich Datentreter-lastig, egal ob nun HDD oder SSD, auch wenn letztere schneller treten ;-)
Dem Compiler helfen am besten ein oder zwei schnelle CPU-Kerne und flotter RAM auf die Sprünge, der Rest lässt sich eher per SSD ankurbeln. Worauf man mehr Wert legt muss jeder für sich entscheiden. |
AW: Delphi beschleunigen
Zitat:
Zitat:
Zum Glück passiert das eher selten, meistens ist es ja schnell... Zitat:
Zitat:
|
AW: Delphi beschleunigen
Bei mir ist im Moment die Polizei der limitierende Faktor, das Auto könnte schneller ^^
Ich würde sagen, wir haben jetzt so ziemlich alles erörtert was man tun kann zum IDE beschleunigen. Oder hab ich was übersehen? |
AW: Delphi beschleunigen
"IDE Startup Time" war sogar in der letzten Emba-Umfrage ein Punkt, wie zufrieden man denn damit ist. Ich finde die gradezu fantastisch. Insbesondere an der Menge an Drittanbieter-Kram, der noch mitgeladen wird.
Die ganzen IDE-Fehler ("Error Inside", Code Insight, ...) - Die sind bei mir der am meisten limitierende Faktor. In Sachen IDE könnte sehr, sehr viel mehr Hilfe kommen. Warum muss ich mir ständig raussuchen, welche Standard-Units ich einbinden muss? Entweder habe ich etwas verpasst (nicht unwahrscheinlich), oder es ist ein Unding, dass ich jedesmal, wenn ich zum ersten mal eine Liste verwende, zum interface oder implementation-Teil scrollen muss und
Delphi-Quellcode:
eintippen muss. So etwas sollte man mal beschleunigen.
uses ... System.Generics.Collections, ... ;
Die IDE Startup-Zeit ist meiner Meinung nach großartig, die Compiler-Geschwindigkeit mindestens gut. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 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-2025 by Thomas Breitkreuz