Die Suche ergab 72 Treffer
- Di 15. Nov 2022, 11:40
- Forum: Freepascal
- Thema: Was macht dieser Assembler-Code?
- Antworten: 22
- Zugriffe: 2209
Re: Was macht dieser Assembler-Code?
Hallo, wenn man die Funktion von kupferstecher mit Ausgabe des Assemblers kompiliert kommt doch schon der gleiche passende Assembler-Code raus. Reicht da nicht ein simples inline um dann genau so schnell zu sein? Unter 64-Bit linux fpc -O3 -al -Xs kompiliert: function rech(i, j: Integer): Integer; b...
- Di 29. Okt 2019, 18:55
- Forum: Freepascal
- Thema: Umstellung Delphi auf Lazarus: Assemblercode
- Antworten: 3
- Zugriffe: 1731
Re: Umstellung Delphi auf Lazarus: Assemblercode
Hallo,
das gibt es schon ohne assembler:
Rotiere x um n bits nach links die Bits werden innerhalb von x verschoben, was oben rausfällt wird unten wieder reingeschoben.
https://en.wikipedia.org/wiki/Bitwise_o ... ular_shift
https://www.freepascal.org/docs-html/3. ... dex-5.html
dort
https://www.freepascal.org/docs-html/3. ... dword.html
Gruß Horst
das gibt es schon ohne assembler:
Rotiere x um n bits nach links die Bits werden innerhalb von x verschoben, was oben rausfällt wird unten wieder reingeschoben.
https://en.wikipedia.org/wiki/Bitwise_o ... ular_shift
https://www.freepascal.org/docs-html/3. ... dex-5.html
dort
https://www.freepascal.org/docs-html/3. ... dword.html
Gruß Horst
- Do 26. Sep 2019, 07:52
- Forum: Sonstiges
- Thema: Performance Probleme unter Windows 10
- Antworten: 8
- Zugriffe: 2504
Re: Performance Probleme unter Windows 10
Hallo, wenn ich unter Win10 64-Bit für FreePascal 32-Bit compiliere dauerte es immer eine Ewigkeit, obwohl die ausgegebene Kompilierzeit selbst nur maximal doppelt so lang wie bei 64-bit ist.Eben diese 10 bis 20 Sekunden Bedenkzeit, bevor es überhaupt los geht.Während der Zeit ist ein Prozessorkern ...
- Di 23. Okt 2018, 23:28
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
Re: große JSON Datei
Hallo, ich habe noch was dran herumgeschraubt, um zu sehen ob die Suche nach Orten in der Umgebung einer Koordinate Sinn machen können. 1 Breitengrad sind ja 110 km .1 Längengrad am Äquätor auch, zu den Polen wird es etwas eng. Um Berlin sind es schon 330 Ortsangaben. Anbei das Lazarus Projekt. Es b...
- Mo 22. Okt 2018, 13:53
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
Re: große JSON Datei
Hallo, ich habe mein Programm wieder verändert und jsonparser wie wp_xyz eingesetzt hat, um einmalig ein File of TCity zu erstellen. Diese ist schon entsprechend nach Land-> Name-> ID sortiert. Nach einmaligem Einlesen kann man dann für die Länder ja Start und Endindices speichern. Aber bei nur 16 m...
- Mo 22. Okt 2018, 13:12
- Forum: Freepascal
- Thema: Time Funktion, weche Zeiteinheit?
- Antworten: 28
- Zugriffe: 11502
Re: Time Funktion, weche Zeiteinheit?
Hallo, zur Verdeutlichung. Der Nachkommateil ist der Anteil vom Tag. Wenn Du die Sekunden haben willst dann x 86400 rechnen T0 := time; sleep(1010); dt:= time-T0; writeln('Es sind ',dt:10:8,' Tage vergangen'); writeln('Es sind ',dt*24:10:8,' Stunden vergangen'); writeln(...
- Sa 20. Okt 2018, 18:23
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
Re: große JSON Datei
Hallo, ich würde die city.list in ein file of TCity umwandeln. Das ist nur selten nötig und damit ist sie leichter handhabbar. Steffen Polster hatte vor Jahren ein OpenSource-Programm dafür komponiert: m Aber die wollen jetzt einen persönlichen "API key" , einen öffentlichen API key gibt e...
- Sa 20. Okt 2018, 13:50
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
Re: große JSON Datei
Hallo, ich habe mal die json Datei pro Datum zu einem Einzeiler gemacht. [ {"id":707860,"name":"Hurzuf","country":"UA","coord":{"lon":34.283333,"lat":44.549999}}, {"id":519188,"name":"Novinki&quo...
- Sa 20. Okt 2018, 11:03
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
Re: große JSON Datei
Hallo, ich habe mal ein minimales Programm aus dem Schnipsel oben geschrieben. uses sysutils,classes,fpjson,jsonparser; var FS : TFileStream; SL : TStringList; J : TJSONData; T1,T0 :int64; i : NativeInt; begin T0 := GetTickCount64; FS := TFileStream.Create('city.list.json',fmOpenRead); J := ...
- Sa 20. Okt 2018, 09:15
- Forum: Sonstiges
- Thema: [Gelöst] große JSON Datei
- Antworten: 17
- Zugriffe: 10479
- Mo 8. Okt 2018, 13:43
- Forum: Programmierung
- Thema: Gravierende Laufzeitunterschiede
- Antworten: 11
- Zugriffe: 7183
Re: Gravierende Laufzeitunterschiede
Hallo, besonders bei 32-Bit bekommt man die geringe Zahl an Registern zu spüren.Das auslagern in kleine Funktionen bringt erheblich was und es sollte auch vergleichbarer werden, egal wo man die Funktion im Quelltext benutzt. program p; uses sysutils; const IMAX = 250000000; var x: double; QueryLos...
- Do 27. Sep 2018, 13:49
- Forum: Programmierung
- Thema: Gravierende Laufzeitunterschiede
- Antworten: 11
- Zugriffe: 7183
Re: Gravierende Laufzeitunterschiede
Hallo, wie der CPu Bench zeigt, liegt die single-thread performance bei 1:8 also nicht so weit weg von 1:10 hier. Man kann aber das Programm ein wenig umstellen, um ohne IF's und n als double auszukommen. Vielleicht hilft das ja ein wenig. program p; uses sysutils; var x : double; i : NativeInt; n...
- Mi 12. Sep 2018, 13:24
- Forum: Komponenten und Packages
- Thema: [gelöst]Gibt es in FPC eine IntegerList?
- Antworten: 29
- Zugriffe: 12226
Re: Gibt es in FPC eine IntegerList?
Hallo, ich habe einen Ryzen 5 1600 Rechner und das Programm mal für 64-Bit unter Linux mit FPC 3.0.4 compiliert. Bei mir bleibt Subtraktion schneller. Original: {$Codepage UTF8} {$mode objfpc}{$H+} {$CODEALIGN proc=32,loop=8} program Project1; und fpc so aufgerufen: fpc -O3 -Xs -al "NameDesPr...
- Mi 27. Jun 2018, 08:40
- Forum: Units/Komponenten
- Thema: Matrizen / Vectoren - Multiplikationen beschleunigen
- Antworten: 14
- Zugriffe: 14871
Re: Matrizen / Vectoren - Multiplikationen beschleunigen
Hallo, dann muss man alles neu schreiben oder benutzt OpenBlas oder ähnliches, das für alle möglichen CPU´s und Plattformen zu kompilieren ist und von CPU/GPU-Herstellern hochoptimert wird und gibt die entsprechenden .dll/.so oder sonstwie mit. m Dein Programm muss ja auch für die entsprechende Plat...
- Mo 25. Jun 2018, 17:32
- Forum: Units/Komponenten
- Thema: Matrizen / Vectoren - Multiplikationen beschleunigen
- Antworten: 14
- Zugriffe: 14871
Re: Matrizen / Vectoren - Multiplikationen beschleunigen
Hallo, m dort wird auch eine sourceforge adresse angegeben, aber die neueste Version mit Windows DLL ist wohl. m Ich habe jetzt v0.3 compiliert für Linux, aber der Aufruf hat sich geändert, da taucht ein blas_arg_t auf, da sind wohl 4 pdouble statt 3 , kann ich jetzt nicht finden //common_level3.h...