Process Lasso

main index ]

Clearing up Misconceptions

There has been some understandable user confusion about Process Lasso, so first let's clear up a few common misconceptions. If your question isn't answered here, then see the FAQ below.

Misconception #1: Process Lasso is yet another super-charged task manager

NO! Process Lasso is NOT a task manager at all. It has some task management capabilities, but its not meant to replace a task manager. Its meant to act in the background, automatically enforcing rules upon processes in order to improve your system responsiveness (or for whatever other purpose you desire).

Misconception #2: A user needs to set default priorities on their processes to rank their importance.

NO, PLEASE DON'T DO THIS. The idea isn't to reprioritize all your processes, rating them in importance to you. Doing that is risky and harmful to your PC performance. Just let Process Lasso do its job, UNLESS you know what you are doing.

Misconception #3: Process Lasso is only for older computers

It may be true that older computers get the most benefit from Process Lasso, but Process Lasso is helpful to even brand new 'top of the line' PCs. Additionally, its extra features are quite handy for anyone (such as anti-sleep processes and High Performance Power processes). Those with a lot of CPU cores may also enjoy the default CPU affinty feature, where they can limit programs to specific CPUs - keeping the others free for use by other procesess.

Misconception #4: Process Lasso makes my CPU work less hard, or harder

Process Lasso's ProBalance causes the CPU to allocate its computational time differently. The same amount of computation work is always done regardless of any priority or affinity adjustments (assuming there is a set amount of work to be done, and not some infinite amount).

Frequently Asked Questions (FAQ)

Questions

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 Bitsum Technologies.


Is the free build completely free?

Yes, home and academic users can freely use it for as long as they want. However, after the product has been installed a while, a couple features are disabled and some nags are shown to encourage the user to upgrade to Process Lasso Pro. These nags are tolerable, as they are meant to be reminders, not to annoy. Even after this point, the software is still quite usable and not by any means crippled. These actions help us to continue to publish a free edition. We encourage you to give Process Lasso a try. It may be just what you need, and the Pro build may be well worth the price of a couple cheese burgers.


What is the difference between the free and Pro versions of Process Lasso?

The differences are described here.


How do I Activate Process Lasso Pro with my Activation Code?

Please see the 'Help' menu or About box. If you do not see options to Activate there, then the product is already activated.


Does Process Lasso require the Performance Counter service be started, like most third-party task managers and competitors of Process Lasso?

NO. We carefully crafted our code so that the Performance Counter service does not need to be started.


What exactly is a 'process'?

When you run a program on your computer, it creates a process. Every program you have running is represented by a process. When you have multiple copies of a program running, it has multiple processes. For instance, if you were to run Microsoft Word, it would create a process named 'msword.exe'. Each process has its own memory and threads (you can think of threads as tasks for your CPU to execute). Furthermore, each process is isolated from other processes, so that a crash in one program won't cause a crash in another.


Why does Process Lasso show less total RAM than I actually have?

Process Lasso shows the total amount of usable RAM available to the OS. If this is less than you have installed, it may be because some is dedicated to your on-chip graphics adapter and/or your system can not address all avaialble RAM (e.g. a 32-bit Windows edition not having enough address space). You can verify this in the Windows Task Manager (Ctrl+Shift+Esc). In the 'Performance' tab, check to see the Total amount of physical memory it says you have. That should match what Process Lasso shows. We figured that you know what you have installed, and it would be better to tell you how much is actually available for use by Windows.


Some application is still bringing my system to a crawl, what can I do?

There is a setting that EXCLUDES the active foreground process (the one you are using, that has keyboard and mouse focus) from ProBalance restraint. It is in Options / ProBalance options. It could be the application was not restrained because it was in the foreground? If this is NOT the case and the process WAS lowered in priority, then there is some other bottleneck that Process Lasso can not address.

You may also wish to try a Default Priority of Below Normal for the offending process. This is often very successful, safe, and effective. It does not typically diminish performance of the application UNLESS you have a lot of other stuff going on as well (a lot of contention for the CPU).


I want a process to use X% CPU and no more

I would forget about the exact % CPU utilization and focus more on the perceived problems you see with its CPU utilization. With a lowered priority (as ProBalance would do dynamically or a default priority would do), *IF* something else needs the CPU, then its CPU usage will drop MORE than it would have otherwise. It is a matter of contention between processes for the CPU(s). In other words, no reason to let the CPU cycles go underutilized if nothing else needs them. So, in my opinion, I would forget about the exact % CPU utilization and focus more on the perceived problems you see with its CPU utilization. You should find those effects mitigated with priority and affinity adjustments. And, like I said, it should use less CPU as other processes need the CPU.

We do offer actual throttling within Process Lasso, but it is very unnatural for Windows and for Windows applications. Therefore, it only works in limited cases.


What do the various Virtual Memory metrics indicate?

Ah, the ever-so-confusing virtual memory defintions. Even programmers are sometimes confused by them. Here I'll try to clear them up. I haven't much time, so its just a quick explanation. You will need to know the basics of virtual memory to understand it.

Virtual memory is an abstraction layer, allowing what you (and processes) think of as 'memory' to be stored in any combination of phsyical media and shared between processes. It has numerous benefits. For one, it lets you have a very large amount of memory, since virtual memory is limited only by the space available on the page files' storage medium (hard drives or SSDs). Secondly, it is easily shared since duplicated memory can simply 'point' to the first copy of it. There are many sother benefits as well.

When virtual memory is accessed (a hard page fault), it is moved into RAM (page in or swapped in). When it is unused for a longe period, it is moved to the SWAP file (paged out). All this is transparent to the process. The process simply accesses memory at address X, and the OS makes sure it is in RAM (if not already). Ideally, you WANT all frequently accessed virtual memory to be in RAM, so it doesn't have to be read from the much slower page file.

Commit Charge can be best defined as the amount of virtual memory committed to that application (whether it resides in RAM on the page file). This in in contrast to the 'Working set', which excludes memory that is swapped out.

Working Set is the amount of virtual memory actively in RAM, excluding the portion swapped out to the page file.

Private Bytes is the amount of virtual memory in the process space that is not shared from some other process. When virtual memory pages are duplicated, they can be shared between different processes in memory.

Private Working Set is the amount of RAM used exclusively by this process. This value is normally equal to the Commit Charge, but could vary if the process is sharing a lot of its memory with another process (i.e. another instance of itself). Google Chrome is an example where this will vary a lot. This metric requires more CPU cycles to compute, and is therefore not recommended to use unless you absolutely must know it. You will see a warning when enabling it.

Total Virtual Memory Usage is the sum of all virtual memory mapped into a process's address space. This value will seem huge, but it includes stack space and other reserved virtual memory that isn't used. Most users should ignore this field.


I do not see some of my processes, why not?

Process Lasso ignores processes it has no access to. In Windows Vista+ (including Windows 7), this means you must set Process Lasso to run with 'Highest' rights. You can do this through the menu option 'Options / General Process Lasso Settings / Reconfigure the way Process Lasso starts ...'. There are some caveats to running Process Lasso in this mode, so you may see some warnings. However, you will see ALL processes, and it will manage ALL processes when in this mode. MANY ANTI-VIRUS PRODUCTS ARE IGNORED AND NOT LISTED DUE TO THEIR TAMPER DETECTION TECHNOLOGIES.


How do get Process Lasso to manage the processes of all users currently logged in, not just my own?

During the install, you are asked if you want to run Process Lasso with 'elevated' rights, and also if you wish to have your instance of Process Lasso manage the processes of all users. Both options are in the last configuration dialog. Simply check these boxes during install and any instance of Process Lasso will manage the processes of all users.

However, this is not normally recommended. The default configuraton concept is that each user should get an instance of the governor (core engine) running that manages his or her own processes.


How do I get Process Lasso to start with HIGHEST rights in Vista+, but with NO UAC prompt?

Install version 4. It will properly create a new login task in the revamped Task Scheduler present in Vista+. This will allow it to start with UAC elevated permissions without any UAC elevation dialog. To manage or change the entries it creates, goto the 'Task Scheduler'.


If I stop Process Lasso Core Engine, what does it mean?

The 'core engine' (processgovernor.exe) is what actually 'does the work'. It applies ALL automated process rules, including ProBalance, default priorities, default affinities, disallowed processes.. everything. So, you can use the GUI (processlasso.exe) to create/edit process and settings, then close it completely when not needed. This minimizes resource usage. The core engine is silent though (not even a system tray icon), but it does write all its actions to a log you can view later with the GUI.


What is the difference between stopping the Core Engine and shutting down Process Lasso?

When shutting down Process Lasso, you are asked if you also want to stop the core engine. So, shutting down allows you to either close only the GUI, or both the GUI and core engine.


Is Gaming Mode recommended?

For Gaming and similar tasks it can be useful, but YMMV. This puts your PC in a high performance Power Profile and tweaks ProBalance settings to help give the foreground process as much attention as it can. Now, it also does a temporary foreground boost, but only to Above Normal priority class. For this reason, I recommend simply trying it out. It may work great to avoid micro-lags, but that isn't guaranteed as interoperability issues with the priority class change could theoretically exist in rare cases. If it doesn't work, it won't cause any big problems.. For the vast majority for which it does work, it is just another little optimization to improve their PC gaming experience ;).


Does Process Lasso tame the Memory Usage of the various processes or does it tame the CPU Usage of the various processes?

Process Lasso's ProBalance doesn't tame anything, it just reprioritizes the importance of the processes (the threads of them) in the view of the Windows CPU scheduler. This allows it to give CPU cycles to preferred threads in periods of high CPU contention.

Virtual memory usage is NEVER changed/tweaked/adjusted. Now, for Vista and Windows 7, the SuperFectch priority of memory pages can be partially derived from the process priority class. Therefore, in an indirect way I suppose it might also aid that.. lol. That'd be a huge market-sleeze type claim there, and I won't make that one ;).

Process Lasso does have optional features to do things similar to those 'memory cleaners', but will see strong advice agaisnt utilizing them.


How do I assign a shortcut key combination to show the Process Lasso main window?

While there isn't a built in shortcut key to show the Process Lasso main window, you can easily add one yourself. To do this, right click on the Process Lasso start menu shortcut and select 'Properties'. There is a field 'shortcut key'. Using that field, you can assign Process Lasso a shortcut key (e.g. CTRL+ALT+K). Now when you press that shortcut combination, you'll see Process Lasso's main window pop up.


Why isn't Process Lasso's ProBalance acting on the processes associated with my anti-virus software?

Since anti-virus software processes are sensitive to priority adjustments, many common anti-virus softwares are excluded from restraint. Consider the real-time scanner of your anti-virus software. Whenever a file is opened, the process opening the file must WAIT for the scanning to complete. So, you don't want to lower the priority of the real-time scanner, as that would not make things happen quicker. In fact, it would have just the opposite effect. Other software isn't as careful as Process Lasso, but we wanted to DO THINGS RIGHT! .. even if it means sometimes people think that the product isn't not working because it skips a process that is using a lot of CPU.

If your anti-virus software isn't on our hard-coded exclusion list, that's no big deal because it probably would never get acted on anyway. However, if you see Process Lasso's ProBalance acting upon it, then you may want to exclude it from restraint. Most of the time, this isn't an issue since ProBalance would only act on a non-excluded critical process of anti-virus software under rare conditions. In the majority of cases, the default settings themselves implicitly exclude critical anti-virus processes.


Will Process Lasso's ProBalance adversely interefere with any of my progams?

No. All dynamic adjustments Process Lasso makes are completely safe and have virtually no possibility of severe complications. Additionally, after years of real-world testing, we've identified and fixed many specific interoperability issues that could have affected performance. Process Lasso is a very mature and well tested product.

What is the white line I sometimes see on the graph?

This line represents the CPU history of the process(es) you have currently selected. Yes, this is not indicated on the graph legend.


Process Lasso does not seem to take any action to 'restrain' overly active processes. What is going on?

By default, Process Lasso excludes the foreground process (the one that has keyboard and mouse focus). You should click to another window to allow Process Lasso to restrain the process. Alternatively, you can turn off exclusion of foreground processes. The occasional restraint of foreground processes won't hurt anything since any active background processes will also be restrained at the same time. Of course, by restraint we simply mean temporarily lower the priority class, not any sort of actual limit on CPU usage (see ProBalance docs).

Is Process Lasso recommended for gaming?

Yes, it will help improve the responsiveness of your games and reduce the occurances of lags and freezes. Older versions of Process Lasso required you to manually exclude your game processes from ProBalance restraint, but newer versions will not ever restrain foreground processes (by default).

Does Process Lasso's ProBalance 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 ProBalance 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.

What are the unattended setup details (silent, command line)?

Process Lasso supports completely unattended installation. All necessary settings can be supplied on the command line, including the license key. Please see this page for more info.


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.


Why don't you recommend using the trim virtual memory function?

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). For more information, try this (very old) article.


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, AND/OR it means your system is having a sustained 100% CPU load period (giving all it can give).


What are the highlighted portions of the graph?

These are times when a process's priority was temporarily lowered to improve system responsiveness. Seeing the highlight helps visualize the effects on system responsiveness, as shown by the green line on the graph.

What is 'More strictly enforce default priorities and affinities', aka 'forced mode'?

Sometimes applications like to control their own priorities. Process Lasso doesn't try to fight with them, instead only making a single attempt to set the default priority and/or affinity for the process. If you want Process Lasso to aggressively and forcibly enforce your default priorities and affinities, forced mode will do that. If you have a process that isn't staying at the default priority or affinity, you can use this option. It should be noted though that application that set their own priorities or affinities may be doing so for a good reason.


What is this 'thread boost' or 'Windows dynamic thread priority boosting' in the process priority setting?

When this is enabled for a process, Windows temporarily boosts the priority of threads for that process under certain conditions (when it leaves a wait state). For specific information, see this MSDN page about Windows dynamic thread priority boosting. Turning this off can severely impact the performance of applications that have a graphical user interface (a window). For background applications, this setting is not usually important.


What is the '(*)' shown after priorities in the process list?

That indicates whether or not Windows dynamic thread priority boosting is enabled for that process (see other question about thread priority boosting for explanation).


What about I/O prioritization?

New in v4.1 (v4.09 beta), Process Lasso has explicit current and default I/O priority settings available those who require them. This only applies to NT6+ (Vista,Win7,...).

HOWEVER, Vista's I/O prioritization is 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. There are actually only two levels of priority usable by applications, Normal and Very Low. Although there are technically 5, only these two are implemented or usable by processes.

Therefore, adjustment of the thread priorities will propagate to the I/O of that thread. In this way, Process Lasso already does I/O prioritization. Microsoft recommends applications adjust their I/O priority based by setting the calling thread's priority (directly or by adjustment of the process priority base class).


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 about virtual memory prioritization?

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 purchased the product, but am still seeing nags. What is wrong?

The Pro build is a completely separate download from the free build. Therefore, you likely mistakenly reinstalled the free version. You must be sure to install the copy you download from our User Services area.

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.

Process Lasso never stays set to start at boot. What is wrong?

Every report I've heard of this is caused by third-party software that monitors new additions to your start-at-login registry keys. The most common culprit has been WinPatrol, which some users reported didn't give them the indication they expected when it blocked Process Lasso. If you install Process Lasso, but then it doesn't start at boot, and you go check the settings only to see they say 'Do not start at login', then SOME third-party software deleted the registry value. Please double check any software that watches your startup entries.


Are there known processes Process Lasso works well with?

Yes, please see our case studies (under construction).


Does Process Lasso work with Windows 7?

Yes, Process Lasso is designed to work with Windows Vista and Windows 7. It will have the same benefits as it does under XP. Furthermore, Process Lasso has some specific features that compliment the Vista and Windows 7 CPU and I/O scheduler enhancements.


How can I run the core engine as a service under a specific user account in Windows Vista Home Edition? It doesn't include secpol.msc.

Since Vista Home and Starter editions don't include the local security policy management console snap-in, you must manually assign the SeServiceLogonRight token to user(s). You can do this by using Microsoft's NTRIGHTS console mode utility (download, info). Open an administrative console and run 'NTRIGHTS -u myusername +r SeServiceLogonRight'. From this point forward, the user you specified will have the right to logon as a service.

Alternatively, you could chose to run the Process Lasso core engine as a system service, instead of a service under a specific user account.

For most other editions of Windows, run 'secpol.msc' and edit "Local Security Policies \ User Rights Assignment \ Logon as a service".


Can I do some further reading on how the Windows CPU scheduler works?

Sure, here are some links, and I'll add more as time allows. These are all third party links and articles.

What are Power Profiles?

For more information, please see this page: About Power Profiles.