AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Compiler frage - mehrfach einbinden functionen
Thema durchsuchen
Ansicht
Themen-Optionen

Compiler frage - mehrfach einbinden functionen

Ein Thema von th_bone · begonnen am 8. Nov 2005 · letzter Beitrag vom 9. Nov 2005
Antwort Antwort
th_bone

Registriert seit: 16. Jun 2004
172 Beiträge
 
Delphi 2005 Professional
 
#1

Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 15:22
Hi,

gibt es eine Möglichkeit funktionen etc. durch den compiler direkt an die jeweilige
Stelle einzubinden, wo sie genutzt werden.. ?

Sprich - wenn die funktion 2x im Program genutzt wird, dann sollte sie auch 2x im code
vorhanden sein

Was der Programgröße logischerweise abträglich aber die Performance verbessern sollte...

Danke für tips

Ralf
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 15:23
Ab Delphi2005 gibts dafür die Direktive inline. Wenn du das von vorherigen Versionen haben willst, kannst du deine Erwartungen erstmal knicken.
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 15:24
Also die Geschwindigkeit wird wohl kaum schneller weil das max 4 Prozessorzyklen sind eine Procedure aufzurufen.
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 15:40
... und weil das vom zusätzlichen (arbeits-)speicherverbrauch mehr als ausgeglichen wird. Mach einfach mal einen kleinen Performanc-Test.
Michael Enßlin
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 15:57
Zitat von franktron:
Also die Geschwindigkeit wird wohl kaum schneller weil das max 4 Prozessorzyklen sind eine Procedure aufzurufen.
PLUS ev. Parameter abzulegen!
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
th_bone

Registriert seit: 16. Jun 2004
172 Beiträge
 
Delphi 2005 Professional
 
#6

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 16:15
Hallo,

wau danke für die schnellen Antworten... 'Inline' ist was ich gesucht habe...

Mal sehen ob es was an Geschwindigkeit bringt... Arbeistspeicher ist dabei im Moment
nebensächlich..

Tschüs

Ralf
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#7

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 17:50
Ich hab einen Geschwindigkeitstest gemacht. Selbst bei einer extrem kleinen Prozedur (Inhalt: b:=now<starttime+5/24/3600) liefeert der Dierektaufruf nur etwa 0,3% Geschwindigkeitsvorteil. Da du aber weitaus größere Prozeduren haben wirst ist der Faktor wirklich unerheblich.
Michael Enßlin
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#8

Re: Compiler frage - mehrfach einbinden functionen

  Alt 8. Nov 2005, 18:08
Bei einem Inc-Nachbau komme ich auf 100% Geschwindigkeitserhöhung.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
th_bone

Registriert seit: 16. Jun 2004
172 Beiträge
 
Delphi 2005 Professional
 
#9

Re: Compiler frage - mehrfach einbinden functionen

  Alt 9. Nov 2005, 08:04
Hi,

vorteile sehe ich dann, wenn Berechnungen in Schleifen ausgeführt werden die auf funktionen zurückgreifen, da dann bei jedem Schleifendurchgang der Sprung zur jeweiligen Funktion entfällt...

cu

Ralf
  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 18:31 Uhr.
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