[Vorstellung] NoSleep! (Tool zum beeinflussen des Win7 Energiesparmodus)

Ich wollte eigentlich damit nicht auch noch kommen, aber jetzt erwähne ich es doch.

Unter "Optionen für Prozess im Hauptfenster, "Bildschirmschoner unterdrücken" und "Standby unterdrücken" erweitern um "Prozess beenden", wenn länger als x Sekunden über einem Wert.

Beispiel: der Überwachte Prozess (NICHT gesamt-CPU-Auslastung) macht Probleme und muss automatisch beendet werden, wenn er hängt oder dauernd über z.B. 90% ist, um bei Abwesenheit keine Probleme mit der CPU-Temp. zu bekommen, Mail an ... wäre auch noch schön.

Das ist aber schon sehr speziell und es wäre zu verstehen, dass du es gar nicht näher betrachtest.

Gruß
 
Hallo,

Danke für die Änderungen!
Was mir jetzt noch eingefallen ist: Wie wird denn die CPU- Auslastung gemessen?
Wahrscheinlich über die Gesamtlast, oder?
Wäre nämlich super, (gerade dann auch in Zukunft, wenn jeder einen Quadcore hat) wenn man einstellen könnte, dass die CPU-Last sich auf einen Kern bezieht.
Sonst ist es ja bsp. Quad, dass wenn ein Prozessor voll ausgelastet ist, dass insgesamt ja nur 25% sind, was natürlich die Justierung eines passenden Grenzwertes sehr schwer macht....

Oder man kann bei den überwachten Anwendungen auch noch einen Prozessorschwellenwert festlegen, dann wär es wirklich sehr leicht ein zu stellen. :-)

Danke und lg,
 
Zuletzt bearbeitet:
ThorstenBehrens schrieb:
...So konnte ich den kleinen Restbetrag, den ich bei PayPal schon seit Urzeiten rumliegen hatte, wenigstens noch sinnvoll einsetzen...Kleinvieh macht ja bekanntlich Mist.

Das kann ich nur noch einmal wiederholen. Ein Cappuccino kostet nur ca. 2,50€. Vielleicht will er auch noch jemanden einladen. :D
 
Ich habe auch mal eine kleine Spende gegeben. Vielleicht solltest du den Text nochmal überarbeiten da scheinbar wirklich viele nicht genau wissen, dass du mit dem Kaffee eigentlich eine Geldspende meinst. :)
 
@mannerwafferl, ich erwähne mal etwas. Die CPU-Gesamtauslastung ist doch die Summer der Einzel-Prozessauslastungen, außer Leerlaufprozess. Egal in welchem Kern die Prozesse laufen. Da wird nicht durch 4, beim Quad, geteilt. Oder irre ich mich da jetzt?
Oder verstehe ich nicht was du schreibst?

Ich habe es mal im Taskmanager beobachtet. Bei mir sind aber alle 4 Kerne ähnlich ausgelastet.
 
Naja wenn du mal im task- manager schaust während du einen Kern auslastest, wird er insgesamt nicht recht weit über 25% kommen....
Is halt die Frage, wie er die Cpu- Last abfragt....

Was das Problem für mich aber sicherlich leichter lösen würde, wäre wie gesagt, wenn man bei den überwachten Anwendungen auch noch einen Wert für die Prozessorauslastung angeben kann. Weil da werden sicher wenig Anwendungen im Standby wirklich was brauchen.
Das würde die Feinjustierung ziemlich vereinfachen...
 
Zuletzt bearbeitet:
Knecht_Ruprecht schrieb:
Es dauert noch, bis die von mir vorgeschlagene Version 1.4.1 veröffentlicht wird, und erst dann kann man wieder eine neue Version vorschlagen. Aber ich bleibe dran
Danke! :)
Dass ich so schnell 2 Releases hintereinander rausgehauen hab war auch so nicht geplant, aber da 1.4.1 2 kleine Bugs hatte wollte ich das so nicht stehen lassen ;)

LieberNetterFlo schrieb:
die Optionen kein Bildschirmschoner/Standby bei CPU Last/ Netzwerktrafic erweitern um: innerhalb xx Minuten. Ergebiss: sollte der Download/Prozess mal kurz einbrechen aber gleich wieder hoch gehen geht er nicht in Standby, da der schnitt ja höher ist!
Das ist ja jetzt im Prinzip auch schon so. Der PC geht ja nicht gleich in den Standby wenn der DL einbricht, sondern wartet erst ne selbst definierbare Zeit ab (Energiesparmodus nach: xx Min)
Btw du könntest auch, falls du nen Downloader benutzt, den Prozess von NoSleep! überwachen lassen und den Downloader so einstellen, dass er sich selbst schließt, wenn alle Downloads fertig sind.

LieberNetterFlo schrieb:
bei mir auf Arbeit geht das Tool leider nicht obwohl .NET Framework drauf ist any idea?
Ist da sicher .NET 4.0 installiert?
Wird ne Fehlermeldung geworfen?
Sind evtl. die Standard User Rechte per Gruppenrichtlinien irgendwie kastriert?

ThorstenBehrens schrieb:
Ist zwar nicht viel, aber Kleinvieh macht ja bekanntlich Mist.
Da hast du Recht. Ich freu mich über jeden Cent, es zählt ja auch der gute Wille ;)
Danke!

@userforusing
Danke für die Spende! :)
Den Spendenlink wollte ich halt so dezent wie möglich machen, aber anscheinend ist er etwas zu dezent geraten XD
Ich werd da bei der nächsten Version noch nen Hinweis drunter schreiben.

@quityper
Wegen deinen Feature Vorschlägen:
Imo passt das nicht wirklich ins 'Power Management' Konzept von NoSleep!
Ich versuche halt immer NoSleep! nicht zu überladen und es möglichst leicht verständlich und benutzerfreundlich zu halten.
Aber wenn du willst kann ich dir dafür auch ne kleine App schreiben, sollte nicht zu viel Aufwand sein, da ich einige Codeteile von NoSleep! oder älteren Projekten übernehmen kann.

@mannerwafferl
Ich berechne die gesamt CPU Last aus Kernel-Time , User-Time und Idle-Time.
Die CPU Load Überwachung nur auf einen Core zu beschränken würde imo wenig Sinn machen, denn ein Prozess/Thread läuft nicht immer auf einem bestimmten Core, sondern wird von Windows munter "hin und her geschoben", je nachdem wo gerade Rechenzeit frei ist.

Das auslesen der CPU Last jedes einzelnen Prozess ist natürlich möglich.
Ich seh nur keine Möglichkeit wo man das brauchen könnte.
Kannst du mir evtl. sagen wo genau du das brauchen könntest, denn evtl. gibt es ja ne bessere Lösung als die Auslastung zu überprüfen.
 
Grantig schrieb:
Ist da sicher .NET 4.0 installiert?
Wird ne Fehlermeldung geworfen?
Sind evtl. die Standard User Rechte per Gruppenrichtlinien irgendwie kastriert?

Ich hab auf meinem Laptop Adminrechte, jedoch bin ich kein Domainadmin, d.h. gewisse sachen sind schon beschränkt. Es kommt aber auch keine Fehlermeldung. Kann man das sonstwie analysieren?

Im Screenshot im Anhang siehst du was alles installiert ist...
 

Anhänge

  • netframework.png
    netframework.png
    4,8 KB · Aufrufe: 473
hallo,

Diese Möglichkeit, die CPU- Auslastung für jeden Prozess einzeln fest zu legen würde die Justierung eben deutlich vereinfachen. Wenn ich möchte, dass Winamp während dem Musik abspielen das Bildschirm Abschalten verhindert, ist das derzeit relativ schwer, eine allgemein passende Einstellung zu finden. Winamp benötigt bei mir nu ca. 3% Prozessorlast währenddessen. Nachdem aber zusätzlich zu Winamp immer wieder andere Programme offen sind, ist die Gesamtlast immer verschieden und die 3% mehr sind relativ schwierig heraus zu finden. So ist es fast unmgölich für ein Programm mit geringer CPU-Last eine passende Grenze zu finden. Ich hoffe, es ist klar was ich meine.

Danke und lg,
 
Grantig schrieb:
Wegen deinen Feature Vorschlägen:
Imo passt das nicht wirklich ins 'Power Management' Konzept von NoSleep!

Klar, kein Problem. :D

Das wäre aber eine gute Möglichkeit eine PRO-Version rauszubringen, die solche speziellen und sinnvollen Funktionen zur Verfügung stellt. Aber auch hier nach deinem Motte "...NoSleep! nicht zu überladen und es möglichst leicht verständlich und benutzerfreundlich zu halten."
Überladen Tools, von denen man aus 100 Funktionen gerade mal 2-3 braucht gibt es genug.

Das mit der App lass mal, aber danke, ich bau mir etwas mit Powershell-Script, VBs, WMI und was es da noch gibt etwas zusammen, weil jetzt brauche ich es nicht.
 
@LieberNetterFlo
Ohne Fehlermeldung ist es schwer den Fehler zu finden aus der Ferne.
Du könntest ja mal im Windows Ereignisprotokoll nachsehen, ob irgendwelche NoSleep! /.NET bezogenen Fehler auftauchen.

Es scheint ja schonmal die richtige .NET Version installiert zu sein.
Laufen denn andere Anwendungen die .NET 4.0 benötigen problemlos?
Startet evtl. der NoSleep! Prozess, aber es wird kein Fenster angezeigt (beobachte mal den Taskmanager wenn du versuchst NoSleep! zu starten)

Ich kann dir auch mal ne Debug Version zuschicken, die ein Log anfertigt, wenn du willst. (schreib mir am besten ne PM)


@mannerwafferl

Dafür kannst du doch auch einfach Winamp zu den Überwachten Prozessen hinzufügen und bei den Optionen "Bildschirmschoner Unterdrücken --> Nur wenn das Fenster im Vordergrund ist" auswählen.
So hab ich das zumindest beim WMP gemacht und es klappt super.

Sich auf die Prozess-CPU Belastung zu verlassen ist eh nicht die Beste Idee, denn die Auslastung hängt ja auch immer davon ab, wie der Prozessor getaktet ist. Und gerade bei modernen Prozessoren, die andauernd hin und her Takten (Speedstep/Cool&Quiet/TurboModus usw.), kann man sich nicht wirklich auf die Auslastung verlassen.
Das bietet imo ein zu großes Frustpotential und desto mehr Prozesse man auf ihre CPU Auslastung überwacht, umso höher wäre dann auch die CPU-Belastung von NoSleep!
Aber genau das versuche ich zu vermeiden, deswegen habe ich auch in jedem größeren Release an der Autounterdrückung geschraubt, um sie so ressourcenschonend wie möglich zu gestalten.

Die Überwachung der gesamt CPU-Last ist dafür gedacht um sich grob danach zu richten, ob gerade irgendwas im Hintergrund läuft, dass die CPU stark beansprucht (z.B. Videoencodierung, aufwändige Berechnungen usw.)


quityper schrieb:
Das mit der App lass mal, aber danke, ich bau mir etwas mit Powershell-Script, VBs, WMI und was es da noch gibt etwas zusammen, weil jetzt brauche ich es nicht.
Ist imo auch die bessere Lösung, denn dann kannst du es genau deinen Wünschen anpassen und falls du mal schnell was verändern/Anpassen willst, bist du nicht auf andere angewiesen, sondern kannst es selber machen. Btw. das ist mit ein Grund warum ich programmieren gelernt hab, um Softwareprobleme selbst lösen zu können, ohne dass ich hoffen muss, dass schon irgendwer ein Tool dafür geschrieben hat. ;)


Wegen der PRO Version:
Ich hab mir grad ein paar Gedanken darüber gemacht. Ich würde es so machen, dass man für jeden Prozess bestimmte Regeln definieren kann die angewendet werden, wenn bestimmte (frei definierbare) Bedingungen erfüllt sind. Vom Prinzip her so wie die Windows Aufgabenplanung, nur eben stark vereinfacht.
Aber das mit "leichter Verständlichkeit" wäre dann wohl Essig, dafür könnte ich aber beliebig viele Features einbauen, ohne mir andauernd Gedanken darüber machen zu müssen, ob ich damit nicht das UI überlade.

Aber eine Pro Version wäre viel mehr Aufwand, da ich nen 2ten Entwicklungsstrang anfangen müsste. (ergo doppelte Arbeit)
Und wenn ich Geld dafür verlangen wollte, müsste ich ja auch ein Gewerbe anmelden (?), versuchen Raubkopien zu verhindern (über Keys?), nen Lizenzvertrag erstellen, evtl. auch Support leisten usw.
Da hängt einfach ein zu großer Rattenschwanz an Sachen dran, von denen ich zu wenig Ahnung habe. Und weil ich davon zu wenig Ahnung habe ist das Risiko sehr groß, dass ich damit voll auf die Schnauze falle.


Im Moment sieht der Plan erstmal so aus:
zuerst: Lokalisierung und natürlich Verbesserungen an NoSleep!
dann: eigene Website

Das hört sich nach wenig an, ist aber ein großer Haufen Arbeit und damit bin ich erstmal genug beschäftigt, zumal ich mich ja primär auf mein Studium konzentrieren will.
 
Zuletzt bearbeitet:
Ja, ist mir schon klar, dass das so auch funktioniert, nur ist halt eben diese Anwendung nicht immer Vordergrund :-)
Ich geh jetzt mal davon aus, dass die meisten Programme im Standby nicht mehr als 1% brauchen werden, d.h. man kann unabhängig von cool& quiet eine relativ niedrige Schwelle setzen und brauch nicht die gesamte systemauslastung austesten.
Aber, wie gesagt, nur ein Vorschlag...
Lg, :-)
 
nur ist halt eben diese Anwendung nicht immer Vordergrund :-)
Wenn sie nicht im Vordergrund ist, siehst du sie ja eh nicht, also kann auch ruhig der Bildschirmschoner anspringen ;)
(aufgrund dieser "Logik" (ob das jetzt sinnvoll ist oder nicht kann jeder für sich entscheiden^^) hab ich jedenfalls die Bildschirmschoner Unterdrückung entwickelt, so wie sie jetzt ist)


Ich glaube ich hab im vorigen Post nicht gut rübergebracht auf was ich eigentlich hinaus wollte, deswegen mal ein Beispiel:
Mein Prozessor ist im Idle auf 850Mhz getaktet. Wenn ich den WMP anwerfe lastet er 0-10% der CPU aus, egal ob er jetzt grad Musik abspielt oder nicht.
Wenn der Prozessor aber hochtaktet (1700 Mhz), dann ist die Auslastung nur noch bei 0-1%.
Wenn der Prozessor volle Power gibt (3400Mhz), dann ist die Auslastung durchgehend bei 0%.

Oder es kann auch sein, dass der WMP eigentlich grad garnichts macht, aber dann fällt ihm ein, "hey ich könnte doch jetzt mal die Festplatte nach neuen Medien scannen --> schon geht die CPU Last in nem Moment hoch, wo man das eigentlich nicht unbedingt erwartet hätte.

--> Was ich damit sagen will: Die CPU Last die ein Prozess erzeugt ist einfach von zu vielen Faktoren abhängig, als dass man sich darauf verlassen könnte.

Ein Feature auf das man sich nicht verlassen kann, frustriert die meisten User wohl eher, als dass es irgendwas nützt und frustrierte Nutzer möchte ich natürlich um jeden Preis vermeiden ;)
 
mannerwafferl schrieb:
hallo,

Diese Möglichkeit, die CPU- Auslastung für jeden Prozess einzeln fest zu legen würde die Justierung eben deutlich vereinfachen. Wenn ich möchte, dass Winamp während dem Musik abspielen das Bildschirm Abschalten verhindert, ist das derzeit relativ schwer, eine allgemein passende Einstellung zu finden. Winamp benötigt bei mir nu ca. 3% Prozessorlast währenddessen. Nachdem aber zusätzlich zu Winamp immer wieder andere Programme offen sind, ist die Gesamtlast immer verschieden und die 3% mehr sind relativ schwierig heraus zu finden. So ist es fast unmgölich für ein Programm mit geringer CPU-Last eine passende Grenze zu finden. Ich hoffe, es ist klar was ich meine.

Danke und lg,

Ich denke das ist sehr wohl möglich: im Hauptfenster Prozess hinzufügen und entsprechendes unterdrücken. Einzelzuweisung per CPU-Last in % wäre viel zu kompliziert und die meisten wüssten nicht mal wie viel % da einzustellen wäre. ;)

Ich sehe das so, meine Interpretation:
Die ganze Einstellung muss mit ein paar Klicks und in Sekunden ohne groß zu überlegen oder zweifeln erfolgen.
Die Funktion "Wenn CPU Last über:" unter "Einstellungen" ist eigentlich nicht notwendig, sondern eine Zugabe für den allgemeinen Auslastungszustand für alle Prozesse oder für den Fall, wenn ein neuer Prozess gerade mal nicht im Hauptfenster hinzugefügt wurde.

Bis jetzt kann ich die Logik bestätigen.

Manche würden sich aber ein kleines Hilfe-Menü wünschen oder Hilfe-Baloon bei Mouse-Over über Status (jedoch Baloons auch deaktivierbar, wie "Baloon Tipps anzeigen" ;)), wenn man also über nicht sofort verständliche Funktionen, nicht allen, fährt ("Auto Unterdrückung aktiv:" fixieren oder "Standby Unterdrückung immer aktiv:").
 
Habe heute morgen einen Bug entdeckt:

Wenn ich Total Commander in den Tray minimiere und wieder heraushole, dann "vergisst" NoSleep!, dass er läuft. Selbst mehrmaliges Wiederholen der Aktion macht das Symbol nicht wieder orange.

EDIT: Nachdem ich den Prozess gelöscht und wieder neu aktiviert habe, funktioniert es wieder, bzw. kann ich den Fehler nicht mehr reproduzieren. Werde das weiter beobachten.

EDIT: Ist doch wieder aufgetreten. Schwierig zu reproduzieren, es passiert, wenn mehrere TC offen sind und Firefox scheint auch nicht unschuldig zu sein.
 
Zuletzt bearbeitet:
Hier hat sich ja eine Menge getan seit meinen letzten Besuch.
Herzlichen Glückwunsch Grantig für dieses tolle Tool und all die Fortschritte die erzielt wurden.
Eine ganz dringende Bitte hätte ich aber an Dich!:

Windows fährt nicht immer nach der eingestellten Zeit in den Energiesparmodus.
Es ist schrecklich nervig, wenn der Rechner ohne ersichtlichen Grund einfach an bleibt und kostet zudem auch noch unötig Energie.
Könntest du deshalb einen einstellbaren Intervall implementieren, nachdem Windows in den standby geschickt wird? Wenn also keine vorher gesetzte Regel, oder ein Programm den standby unterdrückt, daß das System dann nach einer voreingestellten Zeit in den standby fährt. Also das was eigentlich Windows tun sollte, es aber oftmals nicht macht.
Wäre wirklich super wenn du so etwas implementieren könntest.
Das würde dein jetzt schon gutes Programm abrunden!

Viele Grüße
ganja_man
 
quityper schrieb:
Bis jetzt kann ich die Logik bestätigen.
Gut zu wissen, dann bin ich mit meiner Lösung zumindest nicht voll auf dem Holzweg ;)

Wegen den Tool Tips:
Ich hatte sogar schonmal geplant so was einzubauen, hab aber immer wieder anderen Features den Vorrang gegeben. Fürs nächste Release werd ich es dann wohl endlich mal anpacken^^

@10000 Fists
Welche Einstellungen hast du für den TotalCommander Prozess in NoSleep?
Klingt nach nem Bug im Caching der Autounterdrückung.
Ich werd mir TotalCommander mal runterladen und versuchen das nachzuvollziehen.

@ganja_man
Über so eine Option hab ich auch schon nachgedacht, aber eher um Vista Usern nen automatischen Energiesparmodus a la Windows 7 zu geben.

Wenn ein Win7 Rechner nicht automatisch in den Standby geht, hat das aber meist nen Grund.
Oft unterdrückt irgendeine Software den Standby, oder Windows selbst macht irgendwas wichtiges im Hintergrund (z.B. Updates laden/installieren)
Imo ist es nicht ratsam in solchen Fällen den Standby zu erzwingen.
Ich werd mir mal ein paar Gedanken darüber machen.
 
@ganja_man, das Tool heißt NoSleep! :D
Hast du W7?
Verstehe ich nicht, weil Windows 7 ist da ganz hart und fährt runter, daher gibt es jetzt NoSleep!
Ich würde auch sagen da stimmt etwas anderes nicht.
Was passiert, wenn du den Suspendmode manuell aktivierst, funktioniert es dann und wacht Windows 7 dann normal auf?
 
Das win7-System ist so eingestellt, das es nach 15 Minuten inaktivität in den standby fährt.
Das klappt jedoch nicht immer! Oftmals ist der Rechner ohne ersichtlichen Grund, stundenlang an! Wenn ich den suspendmode manuell oder durch NoSleep! einleite (hotkey), funktioniert alles einwandfrei. Auch das aufwachen war noch nie ein Problem.
In den besagten Fällen, ist für mich auch nicht ersichtlich, weshalb Windows nicht reagiert.
Es Fährt einfach nicht in den Energiesparmodus. Kein Defekt, keine Fehlfunktion und nichts was ich als störend ausmachen (Prozeß/AKtivität usw) könnte ist vorhanden!
Es funktioniert schlicht und ergreifend einfach nicht und das in mindestens 8 von 10 Fällen.
Das geht mir mittlerweile so sehr auf die Nerven, das ich deshalb nach einer entpsrechenden Option in NoSleep gefragt habe.
Mir ist klar daß das Prorgamm eigentlich den Energiesparmodus verhindern soll. Jedoch schwingt die Tür in beide Richtungen, so das ich in einer solchen Option, eine Vervollständigung des Programm sehe.

Gruß
g.m
 
Zurück
Oben