AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Laufzeitoptimierung eines Consolen-Programms
Thema durchsuchen
Ansicht
Themen-Optionen

Laufzeitoptimierung eines Consolen-Programms

Ein Thema von stpolster · begonnen am 1. Sep 2023 · letzter Beitrag vom 11. Sep 2023
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.394 Beiträge
 
Delphi 12 Athens
 
#32

AW: Laufzeitoptimierung eines Consolen-Programms

  Alt 6. Sep 2023, 09:16
MPInt = 4.7 Sekunden auf einem kleinen Schlepptop mit Delphi 11.3 in 64 Bit.

Code:
##### StrMath ####################
c056376183596999899117308588625209953108464105926767074623063990238734463292307
ad=84031 su=25065 in 9.61070060*1000 sec

##### Int256 ####################
c0-5735511060232939254446901397460932042972491126387202754970036519831719797026
ad=3973389 su=5290133 in 7.98520350*10 sec

##### MPInt ####################
c057505664344760038530679973515630121094664952824482015253584348948195539615650
ad=83884813 su=25000001 in 4.84421430 sec

Also dafür, dass ich beim StrMath das AND und SHR durch zwei eine brutal schlimme Division ersetzen mußte (DIV/MOD aus ganz ganz ganz vielen ADD/SUB)
und nicht nur billig einmal ADD/SUB/SHR/AND je Durchgang nutzen konnte, ist es doch fast erstaunlich, dass es damit bloß 9000 Sekunden dauert (knapp 6 Tage).

Schade irgendwie.
Mein MatheString konnte früher mal mit bis 2.14 Milliarden Dezimalstellen rechnen ... jetzt sind es nur noch 1.07 Milliarden (außer man entfernt das böse Unicode)




Ich dachte es wollte AUCH jemand mal die Quellcodes veröffentlichen, nachdem es aufgeräumt wurde, oder so.

https://github.com/MHumm/DelphiEncryptionCompendium
Das sieht immernoch nur nach Part I aus.

Bei mir hab ich nur bei den alten 5.1c und 5.2 den Part II.
und dort leider nur mit den vorkompilierten DCUs für Delphi 5 bis 7 plus deren PAS-Header als Doku (ohne die Implementation).
Angehängte Dateien
Dateityp: 7z MatheTest.7z (2,63 MB, 7x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 17:23 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