Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   10.4 Sydney IDEFixpack kommt da noch was ? (https://www.delphipraxis.net/205364-10-4-sydney-idefixpack-kommt-da-noch.html)

jbg 8. Okt 2020 19:00

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von TurboMagic (Beitrag 1475175)
Die Integration weitere Teile des Fixpacks ist m.W. am Laufen...
Geht halt nur nicht auf einmal, da das nicht 1:1 übernommen werden kann/sollte.

Was man recht "schnell" machen könnte, wären die Einführung von HashTables als Ersatz oder als Cache für die vielen LinkedLists im Compiler. Aber bitte nicht wieder so wie bei XE2, wo HashTable eingeführt wurden, die mehr Zeit mit dem HashTable-Overhead verbringen, als mit den eigentlichen Daten. Man muss nicht Speicher reservieren und durch die Gegend kopieren, wenn man einen Eintrag sucht.

Dann gibt es noch die Einzel-Funktions-Beschleunigungen, bei denen einzelne Funktionen durch schnellere ersetzt wurden oder die für den Fall, der am meisten Eintritt, optimiert weurden. Die lassen sich (theoretisch) sogar Unittesten.

Auch recht "einfach" lassen sich die "Invarianten Code aus Schleifen entfernen" Patches umsetzen. Das macht vor allem den WIn64 Compiler einen Ticken schneller.


Kompliziert wird es bei den IDEFixPack Patches, die algorithmische Änderungen durchführen oder die Funktionsübergreifend arbeiten (in einer Funktion Informationen sammeln und in einer späteren Funktion diese nuten).

stahli 8. Okt 2020 20:09

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von Delphi.Narium (Beitrag 1475169)
@Der Bastler

Habt Ihr mal den FileMon / ProcessExplorer mitloggen lassen, worauf Delphi beim Kompilieren zugreift, wie und wo es sich 'nen Wolf sucht?

Da sieht man dann auch alle Dateizugriffe, die ins Leere laufen, weil die gesuchte Datei an der Stelle nicht gefunden wurde und dann der Suchpfad der Reihe nach durchgegangen wird. Das kann ganz schön viel werden.

Deshalb: Suchpfade auf das wirklich erforderliche reduzieren.

Wir hatten das Thema vor einiger Zeit schonmal, eventuell hilft das weiter: https://www.delphipraxis.net/1425517-post24.html bzw. https://www.delphipraxis.net/199685-...en-finden.html

Aber Vorsicht vor "Pfade bereinigen" (oder wie das hieß).
Früher hat das jedenfalls mal Delphi lahm gelegt... :-(

Delphi.Narium 8. Okt 2020 20:27

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Im FileMon kann man gut sehen, wo Dateien gesucht werden und wo sie gefunden werden.

Wenn nun in den Pfaden Verzeichnisse sind, in denen grundsätzlich nichts gefunden wird, kann man die schon bereinigen.

Die Verzeichnisse, in denen Delphi "sein eigenes Zeug" findet. lässt man natürlich in den Suchpfaden drinne, auch wenn bei einem Projekt konkret eventuell mal nix von dort benötigt wird.

Und:
Unter Pfade bereinigen meine ich eine menschliche, individuelle Bereinigung, nicht die, die die IDE selbst anbietet.

himitsu 8. Okt 2020 21:25

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Beim Pfad-Bereinigen gab es das Problem, dass Pfade mit Variablen gelöscht wurden, weil die Variablen nicht durch Platzhalter ersetzt und erst damit dann gesucht wird.

Das betrifft z.B. die Platform/Compiler-abhängigen Pfade.

Uwe Raabe 8. Okt 2020 22:48

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Sollte aber in 10.4.1 nicht mehr vorkommen: http://docwiki.embarcadero.com/RADSt...enswerte_Fixes
Zitat:

Kleinere, aber nennenswerte Fixes
"Ungültige Pfade löschen" sollte nun keine gültigen Pfade mehr entfernen.
Das Verschieben von Symbolleisten verursacht keine Probleme mehr.

himitsu 8. Okt 2020 22:59

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Gleich mal ausprobieren?

Per se sind diese Pfade ja wirklich nicht "gültig". (wenn man es nicht mit allen möglichen Werten oder einfach "*" probiert)
Und neee, es ist wie es ist ... die fliegen weiterhin raus, sowohl 10.4 als auch 10.4.1

Uwe Raabe 8. Okt 2020 23:05

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von himitsu (Beitrag 1475189)
die fliegen weiterhin raus, sowohl 10.4 als auch 10.4.1

Dann solltest du das mit einem entsprechenden Beispiel in RSP-14689 über Dispute resolution melden.

Der Bastler 9. Okt 2020 06:03

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von dummzeuch (Beitrag 1475167)
Zitat:

Zitat von Der Bastler (Beitrag 1475161)
USES-Sorter-Tool: Wir analysieren alle Abhängigkeiten unserer Units voneinander(Häufigkeit; Streuung;...) jeweils nach "interface" in "implementation" und bringen diese in die optimale Reihenfolge. Eine wichtige Regel hierbei, die für unser Projekt funktioniert:
Zuerst die Units, die keine Abhängigkeiten in unser Projekt haben (Delphi-Units,...), dann die Projekt-Units sortiert nach ihren Querabhängigkeiten und zwar die mit den WENIGSTEN ZUERST. (Unser Tool hat hierfür Schieberegler, mit denen man die Prioritäten der Verwendungen(verwendet / wird verwendet <=> interface / implementation) einstellen und optimieren kann.)

=> Das sind aber unsere Erfahrungswerte für SEATTLE und RIO, wir wissen nicht, ob das für andere Projekte und/oder andere Compiler gilt.

D.h. das Tool ändert nur die Reihenfolge der Units in Uses-Liste der .DPR-Datei?

Darauf muss man erstmal kommen, ist aber definitiv plausibel.

Nicht in der .DPR-Datei. In allen eigenen Units die USES-Reihenfolge in "interface" und "imlementation".

ACHTUNG! "...Querabhängigkeiten und zwar die mit den WENIGSTEN ZUERST" => die Info war falsch! Genau anders herum, sorry.

Also: Zuerst die Units, die keine Abhängigkeiten in unser Projekt haben (Delphi-Units,...), dann die Projekt-Units sortiert nach ihren Querabhängigkeiten und zwar die mit den MEISTEN ZUERST.
------------------------

Der Bastler 9. Okt 2020 06:09

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von Delphi.Narium (Beitrag 1475169)
@Der Bastler

Habt Ihr mal den FileMon / ProcessExplorer mitloggen lassen, worauf Delphi beim Kompilieren zugreift, wie und wo es sich 'nen Wolf sucht?

Da sieht man dann auch alle Dateizugriffe, die ins Leere laufen, weil die gesuchte Datei an der Stelle nicht gefunden wurde und dann der Suchpfad der Reihe nach durchgegangen wird. Das kann ganz schön viel werden.

Deshalb: Suchpfade auf das wirklich erforderliche reduzieren.

Wir hatten das Thema vor einiger Zeit schonmal, eventuell hilft das weiter: https://www.delphipraxis.net/1425517-post24.html bzw. https://www.delphipraxis.net/199685-...en-finden.html

Ja. Keine Units, die nicht verwendet werden, einbinden. Das kann man mit diversen Tools herausfinden (z.B. mit ICARUS; der sagt auch, welche Units von "interface" nach "implementation" geschoben werden können).

OlliWW 27. Okt 2020 07:05

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Aber mal zurück zur eigentlichen Frage:
Kommt da noch was?

Die 10.4.1 IDE hat bei uns noch solch schwerwiegende Bugs (STRG + Mausklick auf eine procedure dauert manchmal Minuten bis ich die Methode komme - selbst bei kleinen Projekten mit 2 Units :roll: oder eine Methode markieren, STRG + C, STRG + SHIFT + F führt zum einfrieren der IDE....) dass ich derzeit die 10.4.1er Version nicht in unserer Firma ausrollen kann.

Die Probleme sind tatsächlich so schwerwiegend, dass wir nach 20 Jahren uns nach Alternativen zu Delphi umsehen müssen, da wir ohne ein IDE Fixpack tatsächlich nicht produktiv arbeiten können und auf 10.3. hängen zu bleiben, ist auch keine gute Alternative. :?

philipp.hofmann 27. Okt 2020 07:50

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Der STRG-Shortcut-Issue wird ja immer wieder aufgeführt, allerdings hat der interne Jira-Issue nur 17 Votes: https://quality.embarcadero.com/browse/RSP-24626, obwohl EMBT alle gleichartigen Issues darauf verweisen lässt. Votet für die für euch wichtigen Punkte dort, das ist die richtige Quelle für EMBT, da können wir sonst hier im Forum noch so viel auf IDEFixpack schwören.

Rollo62 27. Okt 2020 08:01

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von philipp.hofmann (Beitrag 1476160)
Der STRG-Shortcut-Issue wird ja immer wieder aufgeführt, allerdings hat der interne Jira-Issue nur 17 Votes:

:thumb:

jaenicke 28. Okt 2020 11:41

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Zitat:

Zitat von OlliWW (Beitrag 1476158)
STRG + Mausklick auf eine procedure dauert manchmal Minuten bis ich die Methode komme - selbst bei kleinen Projekten mit 2 Units :roll: oder eine Methode markieren, STRG + C, STRG + SHIFT + F führt zum einfrieren der IDE....)

Ist das reproduzierbar?
Dann ließe sich das ja vielleicht etwas genauer analysieren, denn so kleine Projekte wären dafür natürlich ideal...

Bei uns kommt das nur mal sporadisch bei größeren Projekten vor und dauert dann auch nur ein paar Sekunden.

himitsu 28. Okt 2020 11:48

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
In 10.4 weiß ich noch nicht, aber schon im XE haben wir eigentlich immer dieses Problem. (im FinalBuilder geht schonmal fast alles ... muß nun noch die DPROJ für die IDE alle neu machen)
  • Strg+Linksklick funktioniert fast nie
  • im F6 fehlen die hauseigenen Units des Herstellers, aber zumindestens das Eigene findet sich dort
  • und wenn man in eine Unit will
    • im Hint des CodeInsight den namen finden
    • irgndwo reinschreiben (kopieren aus dem Hint geht nicht und vor allem von DevExpress sind die Namen oft sehr schwer zu merken)
    • und Strg+Enter -> das geht nahezu immer

Allerdings über 600 eigene Units/Projekte in knapp 80 Packages/DLLs und Quellcode von dutzenden Fremdkomponenten.
Und unsere Suchpfade waren ein Graus ... und das aufzuräumen :freak: (im FinalBuilder lief halbwegs, aber in der IDE ... naja)

philipp.hofmann 28. Okt 2020 12:16

AW: 10.4 Sydney IDEFixpack kommt da noch was ?
 
Bei mir funktioniert in kleineren Projekten soweit alles, bei meinem größten Projekt geht STRG+Shortcut fast nie und bringt die IDE zum Absturz. Ähnliches gilt für den Klick auf "Search" im Hauptmenü, bei meinen kleinen Projekten kann man dies immer klicken, bei meinem größten Projekt bringt es nach spätestens 30 min laufende IDE diese zum Absturz. Ich suche daher mittlerweile parallel über Notepad++.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:33 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