CPU Auslastung 64 via 32Bit
Mal ne dumme frage.. warum ist die CPU Auslastung bei gleichen Quelltext mit 64Bit um einem Faktor von 7 höher wie bei 32Bit?
bsp. 32Bit 0% und in 64Bit 7% gruss |
AW: CPU Auslastung 64 via 32Bit
Bei welchen Operationen denn?
Ein 64bit-Prozess lastet die CPU per se erstmal nicht mehr aus als ein 32bit-Prozess. Die Frage wird sich nicht pauschal beantworten lassen. |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Leider kann ich die frage nicht beantworten denn dann hätte ich das Problem schon gelöst. ;) Ich verwende in 32Bit und 64Bit LONG_PTR während in 32Bit LONG_PTR = Integer 4 Byte sind, sind es unter 64Bit 8 vielleicht liegt es daran. Das Problem tritt nicht nur bei einer Anwendung auf sondern bei allen. PS: Vielleicht liegt es auch an GDI+ das dieses unter 64Bit schlechter seine Arbeit verrichtet. Kann leider nur raten. gruss |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Und das allein hat keinerlei auswirkungen auf Geschwindigkeit. Ich weiß aber auch nicht warum du dich dauernd noch mit 64-Bit abgibst. Du hasst 64-Bit und Windows 10. Also bleib halt bei Windows 7 und 32-Bit und dein Problem ist gelöst. |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Ich kann mir auch nicht erklären warum das so ist hätte eigentlich das Gegenteil erwartet. Zitat:
Bleibt doch mal beim Thema und kommt nicht immer mit Dingen die total irrelevant sind und nichts zum eigentlichen Thema beitragen. Solche Kommentare kann man sich schenken. 1. Ich kann auf meine Hardware kein Win7 mehr installieren. 2. Auch mein Win7 war 64Bit oder glaubst du das gab es nur für 32Bit? gruss |
AW: CPU Auslastung 64 via 32Bit
64-Bit sollte grundlegend ähnlich schnell sein wie 32-Bit.
Je nachdem was man macht wird das eine wahrscheinlich etwas schneller gehen, das andere etwas langsamer. Und um 7% CPU Auslastung würde ich mir jetzt keine großen Gedanken machen. Hast du denn Messungen die zeigen, dass gewisse Codeteile (deutlich) langsamer ausgeführt werden? Falls der Code selbst trotzdem genauso schnell oder sogar schneller läuft würde ich mir keine Gedanken um 7% CPU Auslastung machen. So oder so kann man pauschal nichts sagen, solange du uns nicht Code zeigen kannst. Am besten Code mit dem das jeder bei sich nachvollziehen kann (wobei das wahrscheinlich schwer sein dürfte). |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Hier die Anwendung. Kompilieren in 32 Bit und 64Bit anschließend testen 64Bit lastet die Anwendung um 7% aus bei meinem i5 9600K 3.7 GHz gruss |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Da würde ich schon schauen was da nicht passt. Ich Tippe hier auf einen Portierungsfehler 32->64 Bit |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Zitat:
gruss |
AW: CPU Auslastung 64 via 32Bit
Ein Core 7% ist nicht so tragisch.
Ist es ein Delphi oder eine VB-Anwendung? |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Zitat:
gruss |
AW: CPU Auslastung 64 via 32Bit
Zitat:
In einem gesamten Projekt ist es dann für uns schwer rauszufinden woran es hängt - du kennst dich im Code immerhin aus, wir nicht. |
AW: CPU Auslastung 64 via 32Bit
Zitat:
da dann nicht mehr die Gegebenheiten vorhanden sind wie im realen zustand. Die Auslastung muss ja irgendwo auch so erzeugt werden. Ich muss alle Bibliotheken verwenden die ich auch in meinem Hochgeladenen Test Beispiel verwende. Bei einem Minimal Beispiel ist das schwer zu verwirklichen. Die Realen Bedingungen müssen schon vorhanden sein. Hmm.. ;) PS: Es gibt ja nur 2 Möglichkeiten. 1. Es läuft bei euch gut (vorausgesetzt ihr habe nichts geändert) also beides 0% CPU Auslastung. 2. Oder nicht das es so ist wie bei mir. 64Bit ca. 7% Dann kann ich zumindest ausschließen das es an meinem System selbst liegt. gruss |
AW: CPU Auslastung 64 via 32Bit
Also bei mir läuft die Testanwendung egal mit welchen Einstellungen immer mit 0% CPU Auslastung. Ich nutze die bereits vorhandene Exe. Kompiliert habe ich nichts, gerade kein Delphi zur Hand. 32-bit konnte ich also nicht testen.
|
AW: CPU Auslastung 64 via 32Bit
Zitat:
Schon wieder ein seltsames Problem in Verbindung mit Win10 64Bit Prof (1806 habe ich) Und ja ich hasse es kann aber leider mit nichts anderes mehr Arbeiten. :twisted: weil meine Hardware das nicht erlaubt. Nebenbei! Schalte mal auf pause danach kannst du jedes Objekt einzeln verschieben. Hat jetzt aber nichts mit der CPU Auslastung zu tun. gruss |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Du meinst sicher 1803 oder 1809. Beides gleich wahrscheinlich, 1806 liegt rechnerisch genau dazwischen ;-) |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Bei den ganzen Versionen blickt keiner mehr durch. :) gruss |
AW: CPU Auslastung 64 via 32Bit
Nicht kompiliert, 0% CPU-Auslastung. Wenn ich eine Kugeln durch die Gegend ziehe bis 23%, lasse ich die Kugel wieder los: 0%
Win10 64bit, 1809 Build 17763.316 Einfach im Editor/Notepad auf Hilfe klicken, dann siehste deine genaue Windows-Version. Oder "winver". |
AW: CPU Auslastung 64 via 32Bit
Zitat:
Version 1803 (Build 17134.590) Vielleicht liegt es da dran. :evil: Mein System: NVIDIA GeForce GTX 1080 Ti 11GB Speicher Prozessor Intel(R) Core(TM) i5-9600K CPU @ 3.70GHz, 3696 MHz, 6 Kern(e), 6 logische(r) Prozessor(en) Installierter physischer Speicher (RAM) 32,0 GB Modell Samsung SSD 860 EVO 500GB Modell Samsung SSD 850 EVO 500GB Modell HGST HDS724040ALE640 3,64 TB (4.000.784.417.280 Bytes) Versteh es einfach nicht. Nochmals Danke für die Infos. gruss |
AW: CPU Auslastung 64 via 32Bit
Zitat:
|
AW: CPU Auslastung 64 via 32Bit
Zitat:
Solange sich so etwas nicht auf meine Programme auswirkt geht es ja noch. Es addiert sich immer um das 7 Fache.. vielleicht kommst du damit besser klar. gruss |
AW: CPU Auslastung 64 via 32Bit
Habe es vorhin unter Win 8.1 (64bit) getestet, CPU-Auslastung wie in #18.
Liegt wohl eher nicht an der Windows-Version bei mir. Vielleicht am Prozessor-Hersteller (hier: AMD) wg. Spectre+Meltdown? Vielleicht müssen die Intels mehr rechnen? K.A., reine Spekulation von mir. https://www.heise.de/thema/Meltdown-und-Spectre https://www.bsi-fuer-buerger.de/BSIF..._10012018.html |
AW: CPU Auslastung 64 via 32Bit
Bei derartigen Performanceproblemen würde ich immer einen Profiler empfehlen.
Damit kannst du dein Programm laufen lassen und genau herausfinden, in welcher Methode die ganze Rechenzeit drauf geht. Ein ganzes Programm ist dann doch oft zu groß, als dass man noch ganz genau weiß, wo die Zeit verbraten wird. Es gibt auch immer irgendwelche Genzfälle, die man nicht genau unter Kontrolle hat. Zum Beispiel der hier: https://stackoverflow.com/a/17331230/1974021 wobei da 32 bit langsamer war. Aber ohne die Methode zu kennen, wo die Rechenlast erzeugt wird, ist das ein wenig wie stochern im Nebel ;-) |
AW: CPU Auslastung 64 via 32Bit
Profiler wie AQ-Time sind hier sehr gut.
Hatten bei uns schon öfter eklatante Performance-Steigerungen geschafft. Im obigen Fall dann einfach ein vergleich 32-Bit zu 64-Bit Exe. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:00 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