ProcAff

Sart a processon a machine with more than one CPU on one dedicated processor
Download

ProcAff Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Publisher Name:
  • Stefan Albrecht Kuhr
  • Operating Systems:
  • Windows All
  • File Size:
  • 67 KB

ProcAff Tags


ProcAff Description

The ProcAff application was designed to start a process (an application) on a machine with more than one processor (CPU) on one dedicated processor or on a subset of the available processors. Its name stands for "Processor Affinity" which is the one property, ProcAff changes for the process it creates or changes. The processor affinity is simply a number that every process is associated with. It serves as a bit array that determines on which CPUs in a system the threads of a particular process are allowed to run. For instance a processor affinity of 2 means that the process can only run on CPU 1, because only the bit at index 1 is set (if the processor affinity is regarded as a bit array with indexing starting at the rightmost bit with zero). A processor affinity of 1 means, that the process, or better yet, the threads of that process, can only run on CPU 0. A processor affinity of 3 means that the process may run on both CPUs 0 and 1. A processor affinity of 0 means that there is no CPU that this process may run on, and is therefore not possible. The processor affinity is normally inherited from the parent process that starts a particular process, but it can also be changed at runtime from another process. Both these things are implemented in procaff. With /wait, a new process will be started synchronuosly, i.e. procaff will wait until the new process terminates and will then issue the exit code of the new process in its console. With /run, the new process will start asynchronuosly, i.e. procaff will not wait for the new process to terminate and thus will not be able to determine the newly started processes' exit code (coz' it simply doesn't bother about that processes termination). For both /wait and /run, the second command line parameter is the processor affinity of the new process. The last parameter is the command line of the new process. With /set as the first command line parameter, the second command line parameter is again the processor affinity of the process, but this time the processor affinity of an already existing process that you have to specify with the third command line parameter. The third parameter is to be specified as the process id of the existing process or the name of the process.


ProcAff Related Software