AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 64 Bit langsamer als 32 Bit

Ein Thema von BigAl · begonnen am 6. Aug 2013 · letzter Beitrag vom 12. Aug 2013
Antwort Antwort
Seite 7 von 8   « Erste     567 8      
Robotiker
(Gast)

n/a Beiträge
 
#61

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 10:31
Um mal noch kurz einzustreuen, wie das bei Free Pascal ist:
Sind Anwendungen, wie die des Threaderstellers, eigentlich eine Zielgruppe für Pascal Compiler Entwickler ?

Leute die solche Berechnungen mit Millionen Daten und Millarden Operationen darauf machen, haben ja meist dicke Rechner mit mehreren Prozessoren. (GPUs usw. lassen wir mal ganz außen vor.) Bei den oben erwähnten C++ Lösungen dafür hat man ja heute Libs zum z.B. große Arrays auf CPUs zu partitionieren und hinterher die Teillösungen zusammenzubringen.

Sind die Delphi/Pascal Lösungen dafür Assemblerroutinen und Threads ? Tiling, Loadbalancing usw. alles händisch ? Arbeitet nicht die Zeit gegen solche Lösungen ? Es gibt schliessich immer mehr Kerne auf CPUs, die aber einzeln nicht schneller werden.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#62

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 11:04
@Robotiker: Wir befinden uns hier in einem Delphi (also Pascal Forum) und da wunderst Du dich, dass man hier über Delphi diskutiert? Nach Deiner Definition/Sichtweise gibt es natürlich keinen Grund überhaupt auf die Idee zu kommen, etwas nicht mit (Visual) C++ zu lösen zu wollen, da man mit VC++ ja alles besser machen kann als mit irgendeinem anderen Tool.
Native Gemüter (was wir ja aus Deiner Sicht zu sein scheinen) verwenden, aus vielleicht sentimentalen Gründen, "veraltete" Dinge wie Delphi/FPC/Lazarus, ...

Dieser Beitrag habe ich als Mitglied und nichta als Moderator verfasst, das heisst er muss nicht unbedingt der Meinung des Teams entsprechen.
Markus Kinzler
  Mit Zitat antworten Zitat
Robotiker
(Gast)

n/a Beiträge
 
#63

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 11:34
Native Gemüter (was wir ja aus Deiner Sicht zu sein scheinen)
Dieser Eindruck entsteht da in der Tat.

Der Fragesteller hat weiter oben festgestellt, dass ihm schon eine kleine Verbesserung des Codes 200 Minuten (!) Verbesserung bringen würden. Ist es bei solchen Dimensionen vermessen mal zu fragen, warum keiner überhaupt mal über das Thema Parallelisierung redet ?

Ich arbeite seit Turbo Pascal 3 mit Pascal, aber bei solchen Aufgaben heute nicht mehr. Aber ich habe Erfahrungen mit solchen Datenmengen.

Geht es hier also darum möglichst schnell solche Berechnungen zu lösen, oder einfach nur darum "ein Programm wie früher" zu schreiben ?

Besteht "native Code Performance" in Delphi heutzutage daraus "stunning multimedia apps" in FireMonkey zu schreiben, über die dann alle ganz "exited" sind ?

Meine Absicht war nicht den Fragesteller zu einer anderen Programmiersprache zu drängen, sondern zu zeigen, was man braucht um auf heutiger Hardware solche Probleme zu lösen. Deswegen meine Frage, ob und wie man sich bei FreePascal dieser Entwicklung stellt. Das solche Frage nicht erwünscht sind, weil man ja auf dem richten Weg ist, habe ich jetzt verstanden.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#64

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 11:45
Zitat:
Das solche Frage nicht erwünscht sind, weil man ja auf dem richten Weg ist, habe ich jetzt verstanden.
Darum geht es nicht, sondern um die Tatsache, dass in fast jedem Deiner Beiträge etwas von VC, C++ u.ä. steht.

Zitat:
Ist es bei solchen Dimensionen vermessen mal zu fragen, warum keiner überhaupt mal über das Thema Parallelisierung redet ?
Nein es ging hier aber um 32Bit vs. 64Bit. Parallelisierung sollte unabhängig von der Busbreite ein Thema sein.

Zitat:
Besteht "native Code Performance" in Delphi heutzutage daraus "stunning multimedia apps" in FireMonkey zu schreiben, über die dann alle ganz "exited" sind ?
Nein, ich würde sogar sagen "reines FM2 wäre hierfür nicht meine 1. Wahl.
Zitat:
Meine Absicht war nicht den Fragesteller zu einer anderen Programmiersprache zu drängen, sondern zu zeigen, was man braucht um auf heutiger Hardware solche Probleme zu lösen
Nämlich die Verwendung von Bibliotheken für (V)C++, welche in Delphi/BC++ nicht funktionieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Robotiker
(Gast)

n/a Beiträge
 
#65

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 12:00
Nämlich die Verwendung von Bibliotheken für (V)C++, welche in Delphi/BC++ nicht funktionieren.
Diese Aussage erstaunt mich jetzt. Hat man den neuen Compiler im BCB nicht eingeführt, damit man Libs wie die Threading Collections und TBB (beide übrigens von Intel) verwenden kann ?

Hat nicht JT von Embarcadero einen Blogeintrag darüber geschrieben, dass man das MS Rest SDK im BCB integriert, da ist die PPLx enthalten, die Cross-Plattform Opensource Variante der PPL aus VC.

Ich hatte eigentlich durchaus den Eindruck, dass es hier Leute gibt, die professionelle leistungsfähige Software erstellen. Die auch mal eine Blick über den Tellerrand wagen, sei es auch nur um sich Ideen für die Entwicklung in Delphi zu holen.

Vom Fragesteller hatte ich schon den Eindruck, dass er sich ernsthaft mit der Materie auseinandersetzt. Ist da ein Link auf ein Video zu MS, wo gezeigt wird, wie man Schleifen cachegünstig optimiert, schlecht, weil es von MS kommt ? Hat das nicht zumindest indirekt mit dem 32/64 Bit Thema zu tun ? (Ganz sicher aber mit dem Problem des Fragestellers.) Gibt es auch nur ansatzweise ähnliche Doku bei Embarcadero, dann verweise ich gerne drauf ?

Geändert von Robotiker ( 8. Aug 2013 um 12:03 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.156 Beiträge
 
Delphi 10 Seattle Enterprise
 
#66

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 12:02
Das Thema war so angenehm zu lesen, eine wahrer Leuchtturm in den tosenden Böen des Internets. Jetzt nicht mehr.

Was hat das jetzt noch mit der ursprünglichen Frage am Hut?
  Mit Zitat antworten Zitat
Patito

Registriert seit: 8. Sep 2006
108 Beiträge
 
#67

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 12:29
Um das ganze wieder mehr relevant für Pascal zu machen hätte ich da die Frage wie es denn mit der Verwendung der GPU
in Pascal aussieht?

Vermutlich ist da ein Hybrid aus solider Pascal-GUI und einem Number-Cruncher in C for CUDA sinnvoll.
  Mit Zitat antworten Zitat
Robotiker
(Gast)

n/a Beiträge
 
#68

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 12:48
Vermutlich ist da ein Hybrid aus solider Pascal-GUI und einem Number-Cruncher in C for CUDA sinnvoll.
Möglicherweise. Soweit wollte ich gar nicht gehen. Rechnen auf der GPU ist gut, wenn viele Tasks unabhängig laufen können (separate Daten) und nicht so viel Datenaustausch zwischen CPU und GPU anfällt.

Auch in Pascal hängt die ganze 32/64 Bit Geschichte und eine mögliche Parallelisierung über die Cache-Problematik zusammen. Der 64-Bit Code ist ggf. größer, passt schlechter in den Cache. Noch schwieriger ist es bei Parallelisierung, wie in dem Video gezeigt, man muss möglichst viele "heiße" Daten beieinander halten. Ganz blöd wäre es, wenn man das ganze als Single Thread Lösung implementiert und dann mehrere Programme mit unterschiedlichen Daten parallel startet "um den Rechner besser auszulasten", die klauen sich dann gegenseitig Cache Kapazität.

Die Kunst besteht darin eine Balance zischen Parallelisierung und Speicherdurchsatz zu finden, das eventuell auch skalierbar auf unterschiedlich großen PCs. Dazu muss man nicht umbedingt die zitieren Libs verwenden, aber da steckt viel Know-How drin, und in der Doku ist viel darüber geschrieben, wie man Probleme effizient aufteilt.
  Mit Zitat antworten Zitat
pertzschc

Registriert seit: 29. Jul 2005
Ort: Leipzig
309 Beiträge
 
Delphi 12 Athens
 
#69

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 14:35
Das Thema war so angenehm zu lesen, eine wahrer Leuchtturm in den tosenden Böen des Internets. Jetzt nicht mehr.
Recht hast Du - seit Monaten mal wieder ein fesselnder Thread!
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#70

AW: Delphi 64 Bit langsamer als 32 Bit

  Alt 8. Aug 2013, 17:14
1. 64 bit müssen einfach langsamer sein als 32 bit, weil die Pipelines im Prozessor mehr Füllung haben, um das mal so auszudrücken.


Ich weiß nicht, wie die Bitbreite der Register die Pipeline beeinflussen sollten.
Außerdem: Volle Pipeline, gute Pipeline
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 8   « Erste     567 8      


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 16:38 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