AGB  ·  Datenschutz  ·  Impressum  







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

"Programm-Bremse" gesucht

Ein Thema von taaktaak · begonnen am 20. Mai 2010 · letzter Beitrag vom 21. Jun 2012
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#21

Re: "Programm-Bremse" gesucht

  Alt 20. Mai 2010, 20:44
Ich glaube, ich muss nochmal erwähnen, dass bei dem Verlangsam-Thread der Prozess nur 1 einzige CPU verwenden darf (Stichwort: SetProcessAffinity() ). Ansonsten kann es wunderbar passieren, dass auf der einen CPU der Langsammacher läuft und auf der anderen das eigentliche Programm. So etwas sollte nicht passieren. Und es geht hier nicht unbedingt drum, verschiedene Operationen langsamer auszuführen, sondern einfach nur die Anzahl an Ausgeführten Operationen pro Zeiteinheit zu verringern. Da Windows immer die volle Last verwendet, wenn diese gebraucht wird, muss man Windows einfach sagen, dass der Rest schon durch was anderes belegt ist, und zwar hier der Langsammachthread. Das mit dem RAM-Zugriff ist nicht, um das RAM zu füllen, sondern um die RAM-Übertragungsgeschwindigkeit zu beeinflussen. Hier geht es ja auch um Bits pro Zeiteinheit. Es sollen nicht mehr Bits pro Zeiteinheit drüber, sondern weniger. Dazu muss man nicht unbedingt das RAM langsamer machen, sondern nur die Restkapazitäten voll ausreizen und dann wird der RAM-Zugriff tatsächlich langsamer, weil schon genug Müll drauf und wieder runter geht.

Wie ist denn die Idee, den virtuellen RAM so knapp zu machen, dass Windows generell auf die Festplatte auslagern muss?

Bernhard

PS: Das mit den zeitgesteuerten Screenshots finde ich nicht gut, weil zuerst fertig gezeichnet wird und erst dann der Screenshot aufgenommen wird. Es geht ja darum, Probleme während des Zeichnens zu finden und nicht danach.
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#22

Re: "Programm-Bremse" gesucht

  Alt 20. Mai 2010, 23:24
Zitat von Medium:
Wenn ich das richtig verstanden habe s.h.a.r.k, geht es doch nicht um Kompatibilitätstests mit alter Hardware, sondern einfach darum das Programm beim debuggen auszubremsen, um Effekte sichtbar zu machen, die sonst einfach nur zu schnell wieder vom Auge verschwunden sind. Ich muss zwar zugeben diesen Wunsch bislang nie verspürt zu haben, aber vorstellen kann ich's mir schon
Naja, was ich halt sagen will ist (was sich scheinbar noch nicht ganz herauskristalisiert hat ), dass es an sich unmöglich ist diverse Hardware-Features einfach "abzuschalten" und die CPU in den gewünschten "Mach-mal-langsam-Modus" zu setzen. Selbst durch Auslastung aller Cores wird das wahrscheinlich nicht funktionieren, da jedes OS wohl ein Load-Balancing eingebaut hat. Zumal ich echt jedem i7-Besitzer viel Spass wünsche *alle* seine Cores komplett auszulasten. Große Server mit vielen gleichzeitigen Zugriffen kommen da evetl. an ihre Grenzen.

Bandbreite zwischen RAM und CPU ist auch meist en masse vorhanden, ebenso zwischen HDD und CPU (zu diesem Punkt noch was weiter unten). Diese ganzen Punkte sind einfach Hardware-bedingt vorhanden. Und sowas effizient per Stück Software wie gewünscht ausblenden oder sonst was damit machen, halte ich für echt nicht sinnvoll(!) machbar.

Zitat von Medium:
Dieser Slugger-Thread ist dennoch so eine Sache, eben N-Core vor allem, und überhaupt hat man damit schon arg wenig Kontrolle über das was das OS draus macht. Ich würde evtl. eher dazu übergehen zu entsprechenden Schlüsselpunkten programmgesteuert Screenshots zu speichern (das kostet sogar auch Zeit! ). Also quasi ein visuelles Debug-Log.
Das mit dem Thread ist totaler Quatsch, da das OS damit macht, was es will -- soll es ja auch können, daher ist das OS ja da! Man kann scheinbar einen Thread auf eine CPU festnageln, aber ob das wirklich was bringt? Die Idee mit dem Screenshot ist auch so eine Sache. Wie viele Screenshots willst denn erstellen? Wann genau? Erwischst du genau die Stelle, an der es u. U. ein Problem gibt? Ist das dann evtl. auch noch reproduzierbar/korrigierbar?

Zitat:
Wie ist denn die Idee, den virtuellen RAM so knapp zu machen, dass Windows generell auf die Festplatte auslagern muss?
Und zu diesem Punkt: Windows lagert wohl intelligent aus und nicht einfach total planlos, ergo wirst du den Effekt eher weniger nutzen können, um die Verarbeitung enorm zu verlangsamen oder so Effekte feststellen zu können, die man sonst nur auf langsamen Rechnern hat.

Ich lasse mich echt gerne vom Gegenteil überzeugen, aber die Entwickler der heutigen Software und Hardware werden sich wohl Gedanken gemacht haben, sodass mehrere Programme nebenher einigermaßen gleich schnell laufen. Und je neuer die Hardware, desto schneller sollte es (in den meisten) Fällen sein, auch wenn man da Threads und was weiß ich noch alles einbaut...
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#23

Re: "Programm-Bremse" gesucht

  Alt 21. Mai 2010, 00:55
Zitat von rollstuhlfahrer:
PS: Das mit den zeitgesteuerten Screenshots finde ich nicht gut, weil zuerst fertig gezeichnet wird und erst dann der Screenshot aufgenommen wird. Es geht ja darum, Probleme während des Zeichnens zu finden und nicht danach.
Es geht doch hier um eigenen Code oder? Wo ist dann das Problem, an Verdachtsstellen den betreffenden DC einfach fix in ein Bitmap zu schippern? Das kann ich, im Extremfall, nach jeder Zeichenoperation tun, oder aber an wichtigen/interessanten Stellen. Wenn während einer (von Windows aus gesehen) elementaren Zeichenoperation etwas schief läuft, ist ohnehin böse was im Argen, zumal diese ja wirklich sehr elementar sind. Das komplexeste ist da fast noch der Floodfill...

Und falls es hier beim TE um potenziell sichtbare "Glitches" während des Zeichnens geht, aber nach getaner Arbeit alles gut ausschaut: Hier im Forum suchenOffscreen Bitmap! (Sollte bei komplexerem aus mehreren Operationen zusammengezeichnetem ohnehin immer gemacht werden.)
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#24

Re: "Programm-Bremse" gesucht

  Alt 21. Mai 2010, 10:43
Moin, Moin.
Ich möchte mich bei allen Beteiligten für die interessanten Beträge bedanken. So wie Weltreiche entstehen und wieder vergehen, hat sich nun auch der Gedanke des "Nutzlos-Threads" in Luft aufgelöst. Ich werde nun, wie mehrfach vorgetragen, einfach mein altes Notebook für derartige Tests verwenden
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: "Programm-Bremse" gesucht

  Alt 21. Mai 2010, 11:19
Es kommt ja immer darauf an, was du genau testen willst.

Einiges kann man ja auch innerhalb der Anwendung, über ein paar Sleep oder kleine Schleifchen, ausbremsen.
Also wenn es nur um ein paar bestimmte Stellen geht.

Oder wenn man wissen will, wo in einem bestimmten Code die meißte Zeit verloren geht, dann erstelt man sich halt ein Zeitprofil (Zeiten zu messen sollte nicht das Problem sein)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Dreamer69

Registriert seit: 1. Jun 2012
1 Beiträge
 
#26

AW: "Programm-Bremse" gesucht

  Alt 21. Jun 2012, 00:31
Auch wenn der Thread nun über 2 Jahre alt ist möchte ich etwas dazu beitragen.
Bei der Gelegenheit möchte ich mich bei allen hier bedanken.
Ich konnte hier sehr viele nützliche Tipps finden.


Ich hatte auch das Problem ein Programm ausbremsen zu müssen (Videoencoder), da, insbesondere in den Sommermonaten, mein PC beim stundenlangen encoden viel zu heiß wurde.
Abgesehen davon wurden andere Programme ausgebremst.

Ich nutze BES – Battle Encoder Shirase und es funktioniert einwandfrei.
http://mion.faireal.net/BES/

Vielleicht hilft es ja dem einen oder anderen.
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#27

AW: "Programm-Bremse" gesucht

  Alt 21. Jun 2012, 07:02
Nicht getestet, weil ich von sowas eigentlich nicht so viel halte -.-

http://www.pcwelt.de/downloads/Cpuki...4-1301401.html
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 07:26 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