Windows 2000 Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Friday, 28 May 2010

Optimizing process icon memory use & New core feature coming..

Posted on 17:01 by Unknown
Two in one post. Yes, here at Bitsum we're going Green by conserving bandwidth ;). Of course, that's just a joke and I fully support the Green movement in every way.

Process Icon Memory Use

Process icons in the 'All processes' tab account for approximately 50% of the private virtual memory Process Lasso's GUI utilizes. I've always offered the option to turn these icons off, for the especially RAM conscious - and you can, of course, close the whole GUI.

However, in this new beta series I'm working on some optimizations to the icon code that will reduce the RAM they utilize by a good portion. Like any programmer writing a task manager style listview display of running process, I took the simple and least complex approach of allocating an individual icon for each instance of a process. With future builds (v3.86+), when multiple instances of a process exist, they will share the same icon. This means tracking the icon reference count and other internal changes, but its well worth the savings. Those little high resolution icons eat up so much RAM. For applications that tend to have lots of running instances (i.e. Google Chrome), it will really help. It will also substantially benefit applications without icons, as the 'standard' app icon will be shared amongst them.

I just wanted to mention this as one of MANY examples where I take some extra time to save system resources. I spend much more time saving CPU resources, turning everything 'off' when its not visible. It would be easier to just not care about such small amounts of resources, but that's not what I'm aiming for. Now, sometimes my efforts do result in bugs that wouldn't have otherwise existed, and that is frustrating -- but I am going to keep striving for optimality. I think users really appreciate it.

Now, you might say: Well, you should have done that to start with! I guarantee you nobody does. Why? In the grand scheme of things nobody considers it THAT much memory.. Plus, the extra complexity is never a good thing, and so the rational decision is to independently allocate process icons. Well, rational, maybe.. but rational is boring sometimes.

Not only will this save memory, but it could potentially save disk I/O (in the cases where it isn't cached). After all, the icon is actually retrieved from the physical image of the process executable.

If I wanted to take it a step further.. Being a PE guru (the Windows executable file format), I could easily extract the icons directly from the virtual image of the process executable, and may do that as well. Choosing the same icon as the Shell APIs would gets a bit confusing, as it has specific rules regarding which icon to pick at different color depths, and which to fall back to if unavailable. But, it can be done.

These little things aren't aspects that the big guys are ever going to care about. There's a compelling argument that I shouldn't either, but... I want to offer something better than the rest.

New core feature coming - second only to ProBalance

On other news - Depending on if I finish tonight or not, I'll introduce a new feature that really rocks. I have hesitated saying anything specific about it until I was completely done. You will love it. It is the more important functional addition since ProBalance.

This next evolution of Process Lasso is going to the best ever. I have really got great plans for it. It will take me a while to finish everything and get it polished, but it is coming fast. I am also going to have an official beta test program, as the minor GUI annoyances that slipped through QA in the first build of v3.80 haunt me to this day.
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • WARNING: Cracks for Process Lasso may modify HOSTS file
    WARNING:  Cracks for Process Lasso have been seen to modify your system HOSTS file so that you can no longer access  bitsum.com  and/or  bit...
  • Process Lasso and WDFME
    Since Process Lasso can be complex for the layman, something we are working on, I wanted to list a set of steps to address the commonly abu...
  • Tightening the Governor
    Most users of Process Lasso are familiar with its core engine, ProcessGovernor.exe. It is the silent background process that applies all pro...
  • The many instances of Chrome
    As many readers of this blog may know, Google Chrome is different from other Windows web browsers. It isolates each of its tabs into an indi...
  • Oh the frustration with this corporate crapware!!
    I now get uninstall feedback, as I solicit it (for better or worse). Once read, I can never go back, lol. Fortunately, most of it is actuall...
  • ParkControl updated to v1.0.0.0
    This nifty utility, included in Process Lasso v6, lets you enable or disable CPU core parking in REAL TIME , no reboot required. It also let...
  • Next update, Options menu gets some changes
    I decided to make the Options menu a little more consistent and move the ProBalnce configuration down with the rest of the rules configurati...
  • Anti-virus software - the #1 cause of PC performance troubles
    Many users realize their anti-virus software consumes massive amounts of system resources, and hope that Process Lasso will somehow keep it ...
  • If you are seeing random crashes of the GUI or core engine ...
    Many users of Process Lasso have experimented with various system 'optimization' utilities. Many of these make permanent changes to ...
  • CPU Parking revisited: How to enable or disable CPU Parking yourself without registry edits
    This post has been superceded by this newer, better, and more up to date one.. including a new freeware utility called ParkControl that can ...

Blog Archive

  • ►  2013 (1)
    • ►  March (1)
  • ►  2012 (6)
    • ►  September (1)
    • ►  July (1)
    • ►  June (2)
    • ►  January (2)
  • ►  2011 (166)
    • ►  December (3)
    • ►  November (2)
    • ►  October (2)
    • ►  September (6)
    • ►  August (12)
    • ►  July (14)
    • ►  June (17)
    • ►  May (19)
    • ►  April (13)
    • ►  March (27)
    • ►  February (31)
    • ►  January (20)
  • ▼  2010 (203)
    • ►  December (23)
    • ►  November (34)
    • ►  October (38)
    • ►  September (17)
    • ►  August (19)
    • ►  July (19)
    • ►  June (11)
    • ▼  May (16)
      • Memorial Day weekend releases
      • A new review of Process Lasso
      • Optimizing process icon memory use & New core feat...
      • New CPU Eater goes final
      • Process Lasso v3.85.1 beta released
      • Process Lasso v3.84.4 final
      • v3.85 beta series starts
      • New first time minimize to systray greeting (in fu...
      • The v4 release plan (lots of v3 updates)
      • CPUEater v4 early preview
      • Giveaway of the Day Promotion - Great success!
      • The difficulties of being an independent developer...
      • Yet another warning about these 'booster' utilitie...
      • Quick refresh of v3.84.2 - updated French and smal...
      • Example of real world software error condition tha...
      • v3.84.2 - another very minor update
    • ►  April (8)
    • ►  March (6)
    • ►  February (6)
    • ►  January (6)
  • ►  2009 (43)
    • ►  December (6)
    • ►  November (1)
    • ►  October (10)
    • ►  September (3)
    • ►  August (1)
    • ►  July (9)
    • ►  June (2)
    • ►  May (3)
    • ►  April (4)
    • ►  March (4)
Powered by Blogger.

About Me

Unknown
View my complete profile