News:

Follow BoincTasks on Twitter Facebook        Visit our website here.
BoincTasks cloud login is working again

Main Menu

TTh 4.10 questionnaire

Started by Pepo, June 01, 2011, 08:43:51 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Pepo

I'd have a few questions to new TTh 4.10:

  • Is the driver started when the OS boots, or with the first TTh startup? If the former, how far is it functional alone? Under which process is the driver executed, System(4)?
  • Does TTh work just as the driver's GUI, or does it do some more work (obtaining list of BOINC+other processes - just the TTh process (well, except BT, BM and WUProp) seems to have an open TCP connection to the client, etc.)? What amount of the former TTh's work is done by the driver?
  • The driver seems to be throttling even while TTh process is terminated. Does it just keep the same set of processes and temp levels?
  • In the very past, the complete processes (i.e. all their threads at once) were being suspended, which could be visually observed in Process Explorer as grayed-out tasks' processes. Later due to the randomization, usually (or mostly/always?) at least some threads were not suspended and kept ready/running, and the process did not appear grayed-out. Now with 4.10 the processes again appear grayed, which suggests that their threads are being suspended in unisono. Is the randomization not in use?
  • Starting TTh as a plain user UA or an admin user UB seem to deliver different preferences (throttling temperatures and levels, TJunction, not sure about Rules and other settings) and immediately modify the throttling behavior. Shouldn't the settings be stored by the driver and TTh be just accessing and modifying them like a GUI?
  • I'm working on my Win7 machines like a plain user and using UAC to do any administrative tasks. But if my TTh runs as a plain user, it refuses to do anything except Graphs and About... neither exit the GUI, even if I'm able to authenticate myself as an admin. Could TTh be able to request authentication to open its window or exit itself? Or at least allow it to exit without the need to be killed (if it is not required for communication - which unfortunately seems to be the case)?
  • My system (well, TCPView) lists around 40 TCP connection to port 31417 in TIME_WAIT state, new ones are appearing each second and the oldest ones disappear with the same frequency, apparently all initiated from BT. Could BT keep one open connection instead?
    • Do I correctly remember some message thread about someone connecting from Linux machine to TTh? (I'm not able to find it.) Could WUProp task's process be able to periodically connect to TTh to obtain and report CPU + GPU temperatures + throttling levels?
Peter

fred

Quote from: Pepo on June 01, 2011, 08:43:51 AM
I'd have a few questions to new TTh 4.10:
A driver is always started at system boot. In runs in ring0 or 1 depending on the OS.
The driver is just like any other program, runnning on its own. But it's only comming to live when TThrottle sends it requests.
TThrottle communicates with the driver over a text communication buffer. So sending text packages to and from it.
The driver keeps on working when TThrottle isn't closed properly, that is untill the process that it's throttling is still there at the same throtlling level
It does not regulate as it's unable to communicate with the BOINC client.

But the TThrottle is only activate on Vista and up, because XP lacks sertain driver functions.
So XP uses the "old" throttling in the exe.

In the future I want to add an extra layer, a service that communicates with BOINC and the driver.
Leaves the TThrottle.exe as a GUI only, interacting with the service, that interacts with the driver.

In the new driver mode there is a function that can suspend the entire process. This will probably halt the threads more effeciently and almost at the same time.
The driver has 16 regulators (different system threads). The GPU uses up to 8 of them, the rest is used by the CPU as cores/2, with a max of 16 cores. So 8 cores = 4 regulators.
But the CPU regulators use the same throttling interval, but a bit shifted in time. As there is no way of telling what CPU the process is running on.

The TThrottle settings are stored in the registry as user, so different users, different settings.
When I switch to a server that will change as well, but one thing at a time.

When you activate the Administrator only mode, you are not to allowed to change anything or exit the program, only the graph can be seen.
And when setup properly, you shouldn't be able to kill it.. But this is a temp fix for the switch to a service.
BOINC connection mode is needed, otherwise you need BOINC folder access as well.

When communicating with BT it is on a new connection for every request, but it keeps the same socket.
This shouldn't be any problem.

BeemerBiker uses a Lunix interface.

Pepo

#2
Thanks for extended clarification!
Quote from: fred on June 01, 2011, 11:51:50 AM
In the future I want to add an extra layer, a service that communicates with BOINC and the driver.
Leaves the TThrottle.exe as a GUI only, interacting with the service, that interacts with the driver.
[...]
The TThrottle settings are stored in the registry as user, so different users, different settings.
When you activate the Administrator only mode, you are not to allowed to change anything or exit the program, only the graph can be seen.
And when setup properly, you shouldn't be able to kill it.. But this is a temp fix for the switch to a service.
This means, that until the service will exist, it is necessary to prepare TThs with valid settings for each existing user. Understand.

Quote
BeemerBiker uses a Lunix interface.
Bingo, BeemerBiker! These were the threads I've remembered: "BoincTasks Beta Testing » 64 bit version", "BoincTasks Beta Testing » 56: losing temps from tthrottle", "BoincTasks Wish List » temp warning (too high and too cold)".
If an external box can imitate TTh and report its temperature to BT, then an other app can surely query TTh for its temps... I believe at least.
(I've tried a bit with PuTTY, but without any success so far :()
Peter

fred

Quote from: Pepo on June 01, 2011, 12:39:27 PM
If an external box can imitate TTh and report its temperature to BT, then an other app can surely query TTh for its temps... I believe at least.
(I've tried a bit with PuTTY, but without any success so far :()
Only one connection with the driver is allowed. So when TThrottle uses the driver, no other access is possible.

Pepo

Quote from: fred on June 01, 2011, 12:41:37 PM
Quote from: Pepo on June 01, 2011, 12:39:27 PM
If an external box can imitate TTh and report its temperature to BT, then an other app can surely query TTh for its temps... I believe at least.
(I've tried a bit with PuTTY, but without any success so far :()
Only one connection with the driver is allowed. So when TThrottle uses the driver, no other access is possible.

Not the driver, I've meant obtaining data from TTh. I believe that BTs from any external machine would contact TTh on 1 800 31417 ;)
Peter

fred

Quote from: Pepo on June 01, 2011, 12:43:43 PM
Not the driver, I've meant obtaining data from TTh. I believe that BTs from any external machine would contact TTh on 1 800 31417 ;)
Right, From BT there can be more than one connection to TThrottle, should be no problem.
So computer 1 & computer 2 can access TThrottle on computer 3.