Log in

View Full Version : acbPocketSoft releases best WinMob process monitor acbTaskMan - highly recommended!!


Menneisyys
03-21-2007, 04:28 PM
Anyone having read my well-known articles on measuring the power consumption of Windows Mobile devices (see for example this Pocket PC & Smartphone Magazine article (http://www.pocketpcmag.com/_archives/aug06/battery.aspx)) knows the really excellent, free tool acbPowerMeter perfectly suited for the job.

Now, the same developer, acbPocketSoft (http://www.acbpocketsoft.com/), has (finally) released a vastly updated & enhanced version of the application, renamed to acbTaskMan.

The homepage of the application is here (http://www.acbpocketsoft.com/Products/acbTaskMan/acbTaskMan-Overview-6.html) and is highly recommended for a quick read so that you'll see what it's all about. In below, I explain why I recommend this application that much and how it compares to the alternates.

http://www.winmobiletech.com/032007abcTaskMan/acbTaskManOpChart2.bmp.png

acbTaskMan has a free version (not that the commercial one would be THAT expensive - actually, for $7.95 only, it's definitely cheaper than most of the comparable, but, charting-wise, still inferior alternatives), which is still pretty usable - unless you need quantitive CPU usage results and simple, non-app-specific chart is sufficient for you.

I’ve been using this utility (as a beta) for almost a year and have been absolutely pleased. It helped me hundreds of times in examining the CPU, memory or power usage of a particular application (actually, almost all my CPU usage reports in the last year have been based on the results measured with acbTaskMan – except for some where also the current CPU speed needed to be measured too – for example, in Everything you will ever need to know about the power consumption of Pocket PC audio players (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1656&more=1&c=1&tb=1&pb=1), where I also needed to turn to an alternative utility, Dogfood's RegTweak). All I can say it’s perfect and highly recommended, should you really want to maximize your battery life and, for some reason, I haven’t elaborated on the CPU usage of the application you’d like to test.

I also highly recommend the application to ALL software developers. Many applications / games are released with exceptionally high CPU usage, meaning greatly reduced battery life. Many of these games / applications are found by me (when I publish a review, I also check the CPU usage to find if a particular app is misbehaving in this respect.) By getting and using this monitor, you can be absolutely sure you can iron out the CPU usage-related bugs (for example, busy waiting causing 100% CPU usage) before you release it.

Why do I recommend it that much? In what way is it better than the alternatives? It’s pretty simple: it’s perfectly suited for the task, most importantly because it has sophisticated history graphing capabilities, as opposed to the alternates. Let me elaborate on this a bit more.

Say you want to measure the CPU usage of a game or an MP3 player. This situation is very common with Windows Mobile applications as you can be never sure what third-party game or application will chew through your battery if you (as far as multimedia players are concerned) enable the scrolling of the song title or the Real-Time Spectrum Analyzer (both of them are pretty CPU-hungry in general).

If the tested app is clever enough NOT to run the code in charge of doing these, you can’t use the most traditional task managers (for example, TekSoft’s SmartBar as of version 1.2.010 or FdcSoft’s Task Manager - two apps that are, otherwise, excellent) to benchmark the CPU usage of these applications because you only see the CPU usage numbers when the benchmark app’s window is maximized and not that of the just-checked app (and, in addition, the CPU usage meter of SmartBar doesn’t work on some devices; for example, the HTC Universal (http://www.winmobiletech.com/032007abcTaskMan/SmartBarCPU.bmp.png)). (Example screenshot here (http://www.winmobiletech.com/032007abcTaskMan/TaskManagerCPUUSage.jpg). Note that Task Manager also has a tendency NOT to display the normal CPU usage of a given app. In the screenshot above, WMPlayer.exe has 0.57% CPU usage (at 520 MHz), which, of course, isn’t valid. Not even the maximal 3% it reports – it’s way bigger.)

Dogfood's RegTweak is better in this respect, but, as it only uses a single bar at the bottom (no numeric and/or process-specific results; see screenshot here (http://www.winmobiletech.com/032007abcTaskMan/RegTweakCPUUsageMetering1.jpg) and here (http://www.winmobiletech.com/032007abcTaskMan/RegTweakCPUUsageMetering2.jpg) – note the two bars at the bottom; one of them showing the current CPU speed and the other showing the load) and has no filtering capabilities, is still far inferior to acbTaskMan. Also, the bars won’t be visible in most full-screen apps like games – that is, you won’t be able to check the CPU usage of a game.

SuperTasks (http://www.softwareandson.com/SuperTasks/) 2.0, the, in addition to Pocket Hack Master, only application that offers history and background graphing capabilities, doesn’t let for charting a given process only. This may result in some problems when you, for example, run two CPU-intensive tasks in the foreground and would like to separate the CPU usage of the two from each other. This is why, for example, the thread starter post in this thread (http://forum.xda-developers.com/showthread.php?t=268774) had to do twice as many tests to reliably get the CPU usage of a given task. Unfortunately, its chart drawing capabilities is far inferior to that of Pocket Hack Master (let alone acbTaskMan) – the chart only spans about a minute (http://www.winmobiletech.com/032007abcTaskMan/SuperTasksChart.bmp.png) (as opposed to the about 5 minutes of Pocket Hack Master) and has a bit higher (5-7% at 520 MHz) CPU usage when run in background mode: while, in that case, Pocket Hack Master only uses some 1-2% CPU time (at 520 MHz). Of course (as with Pocket Hack Master) you can’t chart just a given app and it has no file output capabilities. The only advantage is its taskbar icon, which shows the batter and the CPU load and can also be used to close / switch to apps (http://www.winmobiletech.com/032007abcTaskMan/SuperTasksTaskbarIconMenu.bmp.png). (However, if you do need monitoring, use RegTweak instead – it’s free and uses slightly less resources.)

Here’s (http://www.winmobiletech.com/032007abcTaskMan/SuperTasksProcessesCPUusage.bmp.png) a screenshot of the Process monitor and here’s (http://www.winmobiletech.com/032007abcTaskMan/SuperTasksTasksCPUusage.bmp.png) that of Tasks. Note that it, in the last screenshot, it listed abcTaskMan as consuming 15% of CPU time, and, in the next second, it listed it as a 0% task (http://www.winmobiletech.com/032007abcTaskMan/SuperTasksTasksCPUusage2.bmp.png); this means it’s pretty unreliable and much less dependable than abcTaskMan because the results will change all the time and you need to do the averaging yourself.

PHM Task Manager (http://www.phm.lu/Products/PocketPC/TaskMgr/) 0.1, while it’s free and running OK even under WM6, only shows the number of internal threads and the CPU time (http://www.winmobiletech.com/032007abcTaskMan/PHMTaskManagerTasking.bmp.png), the latter not really showing the CPU usage of a given app.

Wizcode LLC’s (ex-Anton Tomov’s) well-known Pocket Hack Master (http://www.wizcode.com/products/view/pocket_hack_master), as of version v4.14.033, has a CPU charter module (http://www.winmobiletech.com/032007abcTaskMan/PocketHackMasterCPUUsage.bmp.png) even being able to run in the background (and, as opposed to acbTaskMan, also using high-resolution on VGA devices); it, however, 1. can’t chart a given process only 2. you can’t set the timescale (as opposed to acbTaskMan), which means it’s impossible to make long-time measurements (for example, filesys.exe compaction measurements spanning 12-24 hours) with it – again, unlike with acbTaskMan. The latter is really a pain in the back for any long-time measurements; with short-time ones, not so. Incidentally, as can also be seen in this screenshot (http://www.winmobiletech.com/032007abcTaskMan/PocketHackMasterCPUUageInBackground.bmp.png), its CPU usage is pretty close to 0 (some 1-2%) when run in background (definitely better than that of acbTaskMan, comparing the two apps using the same refresh rate); on the other hand, when run in the foreground (http://www.winmobiletech.com/032007abcTaskMan/PocketHackMasterCPUUageInBackground2.bmp.png), it’s around 50% (run at 520 MHz). It can’t display task-level CPU usage figures at all as can be seen in here (http://www.winmobiletech.com/032007abcTaskMan/PocketHackMasterProcessViewer1.bmp.png) and here (http://www.winmobiletech.com/032007abcTaskMan/PocketHackMasterProcessViewer2.bmp.png). Unfortunately, the debug logging facilities only allow for logging of app-related information; that is, no CPU usage data can be logged.

emProcess (http://www.pocketgear.com/software_detail.asp?id=7270) by the infamous(?) emCon (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1676&more=1&c=1&tb=1&pb=1): it was last updated over 4 years ago (01/2003). The trial doesn’t support process / memory debugging and it seems it doesn’t support any kind of charting.

Bakisoft’s Task Manager PPC (http://www.pocketnow.com/index.php?a=portal_detail&t=reviews&id=384) has been discontinued and the developer has went out of business. In addition, it doesn’t have a trial version and doesn’t seem to support charting.

XCPUScalar 2007 (http://www.immiersoft.com/) 3.00 only displays a (relocatable) current CPU speed and CPU usage meter (in percents) on the taskbar as can be seen in here (http://www.winmobiletech.com/032007abcTaskMan/XCPUScalarMeter.bmp.png). It has no history either. This means it can’t be used to debug apps that hide the taskbar (for example, games). Definitely not recommended for this task only.

Finally, sure there are desktop-side tools (for example, Windows Mobile Developer Power Toys (http://www.microsoft.com/downloads/details.aspx?FamilyID=74473fd6-1dcc-47aa-ab28-6a2b006edfe9&displaylang=en)) to measure some parameters but most of them (for example, the SOTi Pocket Controller as of version 5.07 build 966 - see this screenshot (http://www.winmobiletech.com/032007abcTaskMan/PocketControllerProcessMonitor.png) of its process monitor tool) aren’t able to monitor CPU usage. (Not to mention they all require a desktop computer connected to the Windows Mobile device, which is not only awkward some times, but, in cases, also renders the application to be tested useless – for example, with many hardware 3D enhanced games like Toy Golf (see this (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1201&more=1&c=1&tb=1&pb=1) for more info on this problem).)

(Note that MemMaid (http://www.pocketgear.com/software_detail.asp?id=14279) 1.73 only displays the memory consumption of a given app.)

acbTaskMan to the rescue!

This application really excels in finding “rogue” programs because it, unlike its above-mentioned alternatives, is capable of storing a history (even back to the last 24 hours as can be seen in here (http://www.winmobiletech.com/032007abcTaskMan/Abctaksman24hrs.bmp.png)) of the CPU usage and drawing a chart of it. Furthermore, during drawing the chart, you can not only chart the full CPU usage of all applications, but, in addition, can instruct acbTaskMan to chart a selected one with a different color so that you can easily see how many percent of the full CPU usage has been consumed by the charted application (game).

For example, let’s assume you’d like to know how, say, Opera Mobile, the, in my opinion, best Windows Mobile Web browser behaves. All you need to do is bringing up the context menu of Opera Mobile in acbTaskMan and select Chart CPU (http://www.winmobiletech.com/032007abcTaskMan/abcTaskManChatOpera1.jpg). Then, a red graph, in addition to the standard green one, will be displayed; the former shows the CPU usage of the currently charted app (in this case, Opera). In this screenshot (http://www.winmobiletech.com/032007abcTaskMan/acbTaskManOpChart1.bmp.png), as you can see, Opera consumes about 0% CPU time (look at the red graph) after enabling its charting in abcTaskMan and waiting for some 4 minutes.

Now, let’s start actively using Opera Mobile – with abcTaskMan running in the background and actively monitoring the CPU usage of all apps, including Opera Mobile. Let’s do some active browsing and, after that, return to abcTaskMan to evaluate the results shown for example here (http://www.winmobiletech.com/032007abcTaskMan/acbTaskManOpChart2.bmp.png).

As can be seen, this application is really-really excellent at charting the CPU usage of applications, particularly when they can’t run in the background (most games), which would otherwise be needed with CPU usage meters not keeping the history.

The CPU usage of abcTaskMan itself

Note that abcTaskMan is also better than the alternatives in that it uses pretty few CPU cycles itself, particularly if you in Display / Update Speed, select Low or X-Low (screenshot here (http://www.winmobiletech.com/032007abcTaskMan/Abctaksmanxlow.bmp.png)). Then, from the default ~5%, the CPU usage decreases to ~1.7% and ~0.7%, respectively (all figures measured at 624MHz on the x51v). This is definitely lower than the CPU usage of most alternates (see for example the high CPU usage of FdcSoft’s Task Manager!) – except for RegTweak, which needs some 1% at 208 MHz (!).

Also note that, by selecting Display / CPU Chart / Subtract abcTaskMan CPU (http://www.winmobiletech.com/032007abcTaskMan/abcTaskManSubtractOwn.jpg), you can entirely “hide” the CPU usage of the app itself. That is, the results won’t be at all reflect the fact that the application, abcTaskMan, that has been collecting them, used some CPU time itself.

Problems

What I miss most is the ability to log the CPU usage figures to a file (with, of course, timestamps) for even more thorough or later examination. This would be VERY cool, even with “only” the ability to export these figures of the “charted” app (and not all of them). Nevertheless, this is more of nitpicking: the app is very cool even without this feature.

Otherwise, the app is very stable and during the long-long months and hundreds of apps and games of testing, I’ve never found any app that it couldn’t run with in the background.

Plans for the near future

The developer has just told me he’ll add support for native VGA mode. (Now, it uses pixel doubling in standard VGA mode.)

Links to the above-mentioned alternatives

(Note that the rest of the alternative applications have already been linked in from the article!)

FdcSoft’s Task Manager (http://buzzdev.net/index.php?option=com_phorum&Itemid=125&phorum_query=read,27,15027,page=1) – one of the best all-in-one system management, registry editor etc. tools. Make sure you check it out – you’ll love it!

TekSoft’s SmartBar (http://www.pocketpcmag.com/blogs/index.php?blog=3&title=review_great_all_in_one_task_manager_mac&more=1&c=1&tb=1&pb=1) - another highly capable all-in-one tools; highly recommended!

Dogfood's RegTweak (http://www.aximsite.com/boards/showthread.php?t=96798) (also see this (http://www.pocketpcmag.com/blogs/index.php?blog=3&p=1656&more=1&c=1&tb=1&pb=1)); note that the latest beta (2.2.0.0 beta) was released March 16, 2007. It still doesn’t support CPU usage and frequency monitoring; therefore, for the time being, you’ll want to stick with the old, stable, working 2.1.1.0 version.

I also recommend this XDA-Dev thread (http://forum.xda-developers.com/showthread.php?t=236135) for more information.

thierryb
03-21-2007, 09:48 PM
Just tested the software. It does not work well on my Acer N311.

Menneisyys
03-21-2007, 09:55 PM
Just tested the software. It does not work well on my Acer N311.

Yup, I should have elaborated on the TI / Samsung-compliance of the app. (Unfortunately, few battery load meter apps are able to correctly measure the parameters of these CPU's - as was the case with acbPowerMeter too).

The CPU utilization meter, however, should work on both TI and Samsung CPU's (the Acer has the latter).