Seti@Home optimized science apps and information
Optimized Seti@Home apps => Windows => GPU crunching => Topic started by: efmer (fred) on 20 Dec 2009, 08:26:04 am
-
I want to know if the running feeder exe is storing its pid or other info on who he is, somewhere in a file?
Need to determine who (exe) is feeding a particular GPU (device).
-
I want to know if the running feeder exe is storing its pid or other info on who he is, somewhere in a file?
Need to determine who (exe) is feeding a particular GPU (device).
Hm... if you can link process PID with app slot in BOINC already, then you could parse stderr.txt in particular slot to determine what device was assigned to this particular slot -> process.
But how to link process PID and slot number... no idea.
-
I want to know if the running feeder exe is storing its pid or other info on who he is, somewhere in a file?
Need to determine who (exe) is feeding a particular GPU (device).
Hm... if you can link process PID with app slot in BOINC already, then you could parse stderr.txt in particular slot to determine what device was assigned to this particular slot -> process.
But how to link process PID and slot number... no idea.
Yes the link device <-> pid. The exe could include it in the stderr.txt, but that would only work for special builds.
I want to see if I can throttle a specific gpu or cpu (a lot harder)
A problem is that the slot in some projects (Seti), only holds a shortcut to the exe and not the actual exe.
-
Well, is it possible to extract working directory info from running project?
If yes, then you can
1) list all SETI processes running with their PIDs.
2) determine their working directories - these will be slots numbers
3) look into stderr.txt for particular PID->slot to determine its GPU devide ID.
then you will get whole chain PID->slot number->GPU device ID.
-
Well, is it possible to extract working directory info from running project?
If yes, then you can
1) list all SETI processes running with their PIDs.
2) determine their working directories - these will be slots numbers
3) look into stderr.txt for particular PID->slot to determine its GPU devide ID.
then you will get whole chain PID->slot number->GPU device ID.
2) tried that one but it's a link not the actual program so.. everyone is pointing to the same file. The directory is the project directory not the slot.
-
I don't know how much linux functionality cygwin implements in windows but you could try it. For example, in linux the command
ps -felL |grep setiathome-6 |grep -v grep
gives me everything I could wish for: PIDs, TIDs, CPU usage, commands used and much more. An example output:
0 S ek 2613 23219 2613 19 2 80 0 - 42163 - 01:41 pts/3 00:00:48 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 1
1 S ek 2613 23219 2614 0 2 80 0 - 42163 - 01:41 pts/3 00:00:00 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 1
0 R ek 3204 23219 3204 21 2 80 0 - 42371 - 01:42 pts/3 00:00:44 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 2
1 S ek 3204 23219 3205 0 2 80 0 - 42371 - 01:42 pts/3 00:00:00 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 2
0 S ek 31402 23219 31402 12 2 80 0 - 42538 - 01:36 pts/3 00:01:14 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 0
1 S ek 31402 23219 31403 0 2 80 0 - 42538 - 01:36 pts/3 00:00:00 ../../projects/setiathome.berkeley.edu/setiathome-6.08.CUDA_2.2_x86_64-pc-linux-gnu --device 0