Process Lasso
Frequently Asked Questions (FAQ)
First, its worth noting that there's a real problem here with jargon. Non-technical users may seem overwhelmed. I'll
try to switch between technical jargon and layman terms to help give some contextual reference that may aid in
deducing the meaning of jargon.
If the question you have isn't here, or isn't answered well enough here, send an email to
the editor.
What is this Out-of-Control Process Restraint?
In fact, its not restraint at all. A program isn't 'held back' in any way. Its priority amongst the other programs (processes) is simply lowered so that the other processes can execute if they so require.
Does Process Lasso's out-of-control restraint slow down processes?
No. Process Lasso 'restrains' processes by temporarily lowering their priority.
This simply allows other processes more of a chance to use the CPU,
IF there are any processes needing the CPU. If there aren't, and until there aren't, the restrained process is still able to consume as many CPU
cycles as are available to it. Therefore, a restrained process doesn't really slow down, though it can now yield to another process like a nice citizen of your computer.
That little yield will make a big difference in responsiveness, but not a big
difference in the speed of the background process ;).
For more information, see How Does Process Lasso's Restraint Work?
How will out-of-control Process Restraint affect CD/DVD Optical burners?
CD/DVD Burners typically don't use enough of the processor to be restrained,
as they are usually waiting on disk or optical drive I/O. It is actually more
likely that a buffer underrun would be prevented by Process Lasso because if
you were in such a high-load situation, the other offending processes would
have their priorities lowered, there-by giving the burning application more
access to CPU cycles. Even if the burning process itself got lowered in priority,
it'd be no worse off than without Process Lasso since the other active processes would
surely have been lowered as well, there-by giving it equal footing, as it had
originally.
Also, some burners raise their own priority and Process Lasso will NOT lower
the priority of processes that have raised their own priorities, depending
on the configuration of Process Lasso.
The bottom line is: Process Lasso is most likely to HELP, and even in a worst
case scenario it shouldn't make things worse. That said, adding Optical Burning
apps to the Process Restraint Exclusions list is probably a good idea, but far
from necessary.
Process Lasso was designed to, above all, 'do no harm'.
Should I turn on foreground boosting?
Windows already does foreground boosting by giving foreground threads 3x longer time slices than background threads [depending on Windows version and configuration] and slightly increasing the thread priority. Process Lasso is capable of doing additional foreground boosting is a 'smart' way that compliments this built in mechanism. However, unless you require it, we generally don't recommend this option be on because the foreground process/thread is probably already boosted as much as will be effective by Windows. Additional boosting probably won't make a difference for most people, but it can in some situations. You can play with foreground thread and/or process boosting and see if you like it, as it should cause no harm -- but just may not benefit as much as you'd hope. The background process 'restraint' is more important function of Process Lasso and the proper way to handle situations where background processes are interfering with the foreground thread, which is already boosted in priority by Windows.
What is the difference between foreground priority class and foreground thread boosting?
Foreground priority class boosts the priority class of the entire process (aka application, or program) that is in the foreground (meaning it has the focus of the keyboard and/or mouse).
In contrast, foreground thread boosting only boosts the single thread in that in the foreground. A layman could consider a thread as a piece of a program, instead of the entire program. Its brother and sister threads in the same process are not boosted.
How can I make Process Lasso use even less RAM and CPU cycles?
Process Lasso is light on its feet and RAM use can be further reduced by completely shutting down the graphical user interface (GUI) unless you need it. The core engine (processgovernor.exe) can run just fine by itself and uses almost no system resources when doing so. You won't see a system tray icon or balloon tips, but log events will be written to the log and can be seen when you next open the GUI.
If you want to keep the GUI running, you can turn on more aggressive memory trimming in the 'Options / Program Settings / Memory Options' menu. However, be aware that this will cause an increase in page faults.
For more information, read this.
This other program that does something similar seemed to act when Process Lasso didn't, or vice-versa. What's the deal?
Automatically managing process/thread priorities
without interferring with system and application operation,
and
effectively increasing system responsiveness is a delicate business. It could be done in a dumb sort of way
that 'just does it'. That's not Process Lasso. Process Lasso was designed to interfere as little as possible with the
Windows scheduler. In fact, it is designed to compliment and work along-side the Windows scheduler. Unfortunately, many
other products that have a less sophisticated approach may not be so elegant. However, in some cases alternate products
may be desireable. Our product is free. We invite you to find what's right for you.
What is a page fault, as shown in the processes list?
This question is no longer relevant since Process Lasso (as of v2.82) no longer shows this field. However, the answer is: A page faults means that a process accessed a page of virtual memory that wasn't already loaded at that address because its been swapped out or not yet loaded. Some of these page faults are 'soft' faults where the page file need not be accessed, while the remainder are 'hard' faults. Generally, the more page faults a process is consuming the more it degrades system performance as well as its own application performance. The processes list has a 'total page faults' and a 'recent page faults' column, the latter of which represents the page faults since the last refresh of the list.
Why don't I want to trim the working set of all processes on the system to free up RAM?
RAM is your fastest storage medium. You generally want to keep as much data in it as possible, not force pages out to the page file so you have more 'free' RAM for the system cache or new application launches. When you force pages out, they simply have to be reloaded again later as page faults occur on them (see other answer for explanation of page faults).
What does the system responsiveness metric indicate?
It represents the ability of the thread messages subsystem to keep up with thread/window message demand. The exact way we calculate this we don't publish, but its a pretty simple and accurate measurement.
What does it mean when the system tray icon changes to the traffic light?
If your settings are the default, that means a process priority was automatically lowered via the process restraint mechanism.
What's the difference between the free and Pro versions of Process Lasso?
Currently there are no functional differences between the two variants.
Why do you ask for donations instead of making people pay?
I want my software to help the world. I want it to be free and live on. But, I have to pay bills so must do something to make a profit. Therefore, I encourage
users to donate what they think this software is worth. That seems fair to everyone and I trust that if Process Lasso is enjoyed enough, I will make a sufficient
amount in donations.
Process Lasso isn't minimizing when it is start at login, what is wrong?
This is probably due to the '/tray' parameter getting lost from the startup entry in the registry. The easiest way to fix it is to reinstall Process Lasso (no need to uninstall first, so your settings should be kept).
What are the highlighted portions of the graph?
These are approximately times when a processes priority was lowered due to out-of-contrl restraint. Seeing the highlight helps visualize the effects on system responsiveness, as shown by the green line on the graph.
What is 'forced mode'?
Sometimes applications like to control their own priorities. Process Lasso usually doesn't try to fight with them, and only tries to set
default priorities and affinities for an instance of a process once. If you want Process Lasso to agressively and forcibly enforce your
default priorities adn affinities, forced mode will do that.
What about I/O prioritization?
I/O prioritization support is being worked on, but Vista's I/O prioritization is largely based on the priority of the thread doing the I/O, which is dependent on the priority class of the process doing the I/O.
What about virtual memory priorization?
Vista and above tag virtual memory pages with a priority, assigned by ReadyBoost. These priorities can be read, but are less easily adjusted. We are implementing a way to work with them, but we generally recommend
users stay away from messing with default memory priorities. Remember, Windows and ReadyBoost are designed to work as optimal as possible. Too much tweaking can make matters worse. Process Lasso does a great job
as is, so maybe you don't really need this feature.. though we will add it eventually.
I added critical system processes to the 'disallowed proceses' list and now my I've got problems. What do I do?
You need to delete your Process Lasso settings (located in the INI file). If you can't get to it, and can't use the GUI, try booting into safe mode. You can see where it
is located at in the about box of Process Lasso. Uninstalling Process Lasso will also allow you to recover from this situation.
Can I do some further reading on how the Windows scheduler works, and how Process Lasso helps?
Sure, here's some lines, I'll to as time allows: