topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Sunday December 15, 2024, 12:27 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Problem with emule being repeatedly tamed  (Read 12315 times)

Zeph

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13
    • View Profile
    • The Z Project
    • Donate to Member
Problem with emule being repeatedly tamed
« on: December 09, 2005, 06:34 AM »
I've come across a problem when running PT with emule. When emule starts and uses 100% cpu PT tames it as it should, but then when emule goes back to lower cpu usages, PT keeps trying to increase the priority on it, constantly.

I think emule might be trying to set its own priority and is fighting with PT, but when you set the priority via taskmanager the priority stays at what you set it too, so it seems task manager can set priority but PT simply fights with emule.

Here's the logs it continues until you quit emule.
Fri Dec 09 12:21:50 2005  -> Lowering Process Priority  | emule.exe
Fri Dec 09 12:21:55 2005  -> Lowering Process Priority  | emule.exe
Fri Dec 09 12:22:10 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:15 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:20 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:25 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:30 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:35 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:40 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:45 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:50 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:22:55 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:00 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:05 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:10 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:15 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:20 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:25 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:30 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:35 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:42 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:47 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 12:23:52 2005  -> Increasing Process Priority | emule.exe

I'm going to go back to process lasso I think and see if the same happens, I'm pretty sure it doesn't though. But I'll let you know.

I hope this can be fixed for v3 because atm it means I have to put emule on ignore if I want to use PT, which kinda defeats the object of using PT in the first place.

Thanks.
A proud member of The Z Project, developers of the HLGuard & AutoBan anticheat systems, Z-Tweaked drivers and more...

Zeph

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13
    • View Profile
    • The Z Project
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #1 on: December 09, 2005, 07:39 AM »
A update.

I'm pretty sure this problem with emule is related to PT having a lack of system privliges i.e not running as a service, I'll confirm about emule in a little while after some more tests but the issue with PT not being able to control all process is definitly because of lack of privliges.

To test this I used FireDaemon to install ProcessTamerTray.exe as a system service and then tried to tame winlogin.exe, BINGO, we have control! PT can now control winlogin's priority, and from first tests looks like it can control all processes now. I'm just going to grab some lunch then I'll test emule, see if we have full control over that too. ;)

I'll let you know how I get on...
A proud member of The Z Project, developers of the HLGuard & AutoBan anticheat systems, Z-Tweaked drivers and more...

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #2 on: December 09, 2005, 08:39 AM »
im looking forward to the reply about running pt as a service.

regardless, you have found a bug.  Process Tamer has code that should tell it when it fails to be able to raise the priority back (for example if an app insists on setting its own priority) and thereafter stop trying to "re-raise it".  I'll put this on the todo list.

Zeph

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13
    • View Profile
    • The Z Project
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #3 on: December 09, 2005, 09:16 AM »
PT running as a service via firedaemon works great, it controls the processes it couldnt before e.g. winlogin.exe without problem. It doesn't change the 'fighting with emule' thing though, but I have found a way to fix it and it might explain why PT is doing this.

Even if you run run PT as a service, it still keeps setting the priority of emule.exe, like so...
Fri Dec 09 15:06:10 2005  -> Lowering Process Priority  | emule.exe
Fri Dec 09 15:06:27 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:32 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:37 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:42 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:47 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:52 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:06:57 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:02 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:07 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:12 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:17 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:22 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:27 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:32 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:37 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:42 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:47 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:52 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:07:57 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:02 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:07 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:12 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:17 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:22 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:27 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:32 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:37 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:42 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:47 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:52 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:08:57 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:02 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:07 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:12 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:17 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:22 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:27 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:32 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:37 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:42 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:47 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:52 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:09:57 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:10:02 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:10:07 2005  -> Increasing Process Priority | emule.exe
Fri Dec 09 15:10:12 2005  -> Increasing Process Priority | emule.exe

It seems like when PT is querying emule's priority it's expecting emule to reply in a certain way but because its not it trys to set the priority, then querys again, repeat. I found that in emule's settings there is a option to control it's process priority, which by default is set to 'above normal', so I tried setting it to normal and restarted emule. It seems that fixes the problem and PT stops trying to constantly increase emules process priority.

The simple facts I found are:

1 - If PT starts trying to constantly increase emule's priority, change emules in built process control from above normal to normal and restart emule. The problem will go.

2 - If PT is started as a service it gains the ability to control processes it couldn't previously.

There you go, mouser, a little something for you to think about while coding away on v3. :)
A proud member of The Z Project, developers of the HLGuard & AutoBan anticheat systems, Z-Tweaked drivers and more...

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #4 on: December 09, 2005, 09:26 AM »
that's a great report.
i will fix the bug that is causing repeat attempts to restore priority.

and it sounds like i should either and a built-in option for pt3 to run as service, or make it the only way pt3 runs.
any opinion on this? is their a downside to having pt3 run as a service?

Zeph

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13
    • View Profile
    • The Z Project
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #5 on: December 09, 2005, 09:41 AM »
I dont see any downside to running PT as a service, I run a few different things via firedaemon as services and none have ever given me a problem. The plus side about running as a service is that if a xp user has multiple accounts on their pc and using xp's fastswitch to switch between them, PT would be running in the background for all accounts, rather than the one who installed PT as is the case with starting normally at user login.

I would try to make sure you offer running as a service as a optional feature, explaining why it's prefered to run PT in this manner, rather than forcing everyone to run it as a service. This way people who like PT as it is can keep using it like this, but others who require more control can start as a service. Keeps everyone happy.

:)

Edit: One thing to add though, if your running as a service you really need the service process to use as little resources as possible, because it is constantly running. Using 2 seperate .exe's like you do with the tray.exe and config.exe should keep this minimal though, just having a service.exe and a config.exe should be good but if you can reduce the resource footprint of the service.exe then thats better still.

P.s. Feel free to give me a shout if you need a beta tester for this new version. I do a lot of beta testing and might be able to help spot any bugs. :)
A proud member of The Z Project, developers of the HLGuard & AutoBan anticheat systems, Z-Tweaked drivers and more...
« Last Edit: December 09, 2005, 09:54 AM by Zeph »

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #6 on: December 09, 2005, 10:28 AM »
sounds good -
by the way as you noted, the whole design of the tiny process tamer main exe that stays running in the background is that it should be as light as possible on resources (cpu+memory).

Zeph

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13
    • View Profile
    • The Z Project
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #7 on: December 09, 2005, 11:36 AM »
the whole design of the tiny process tamer main exe that stays running in the background is that it should be as light as possible on resources (cpu+memory).
I must admit it is very resource friendly. That's part of the reason I am happy leaving it running as a service via fredaemon until v3 comes out. I really dislike resource eating apps that want to startup @ login, I disable anything like that (*cough* logitec keyboard software anyone? *cough*). But credit where it's due, PT is safe regarding resources. :)
A proud member of The Z Project, developers of the HLGuard & AutoBan anticheat systems, Z-Tweaked drivers and more...

bigbadbuu

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 5
    • View Profile
    • Donate to Member
Re: Problem with emule being repeatedly tamed
« Reply #8 on: January 05, 2006, 04:39 AM »
Great find Zeph,

I'll be using FireDaemon to set PT as a service aswell.

I'll report back here to let you guys know how it turns(ed) out.

-Buu


*EDIT!

Okay, I've installed Firedaemon (w/ the included libraries) and installed PT as a service w/ the default settings.

Everything works as it should w/ all of the windows services now properly having their priorities set.  A few small observations, however:

1.  The tray-app no longer shows, which is fine by me; however, configurator needs to be run from the start menu short-cut (again, fine by me).
2.  Priorities set in configurtor do not update automatically anymore.  The Firedaemon-PT service needs to be restarted for the process priorities to take effect, but once set they stick.

I'm excitedly awaiting v3-- having PT run as a service will make this the perfect app.  Good job, Mouser!


*ANOTHER ADDITION!

I'm *now* [edit: had "not" before! whoops!] using microsoft's srvany.exe, which comes with the win2k3 server resource kit to run PT as a service.

It doesnt have the same GUI nice-ness as Firedaemon, but its free and just as nice.

Also, I've resolved the "tray-app not working" problem simply by setting the service to "interact w/ the desktop".  Now everything's working perfectly-- tray app is showing and configuration app properly interacts with PT once again!

cheers!
« Last Edit: January 07, 2006, 02:23 PM by bigbadbuu »