How to know number of user threads from /proc
Hi, I'm running a multithreaded program in OpenMP on linux to study CPU overloading. As the subject says, I need to know the number of threads this program creates (assuming in this case, number of threads in this program is same as the number of user threads) from the information kernel provides. I'm looking something similar to run-queue length from "sar -q 0" that gives me exact picture of number of user threads. From the implementation of sar, I found that this information is fetched from /proc filesystem. So is there anyway that /proc fs gives me the number of threads running in the system, apart from /proc/cpuinfo that gives me a static information of existing CPUs. -- Thanks, Kris
Hi Kris, On Sun, Feb 26, 2012 at 3:15 AM, emani murali <murali132@gmail.com> wrote:
Hi, I'm running a multithreaded program in OpenMP on linux to study CPU overloading. As the subject says, I need to know the number of threads this program creates (assuming in this case, number of threads in this program is same as the number of user threads) from the information kernel provides.
I'm looking something similar to run-queue length from "sar -q 0" that gives me exact picture of number of user threads. From the implementation of sar, I found that this information is fetched from /proc filesystem.
So is there anyway that /proc fs gives me the number of threads running in the system, apart from /proc/cpuinfo that gives me a static information of existing CPUs.
There is a directory in /proc/PID/task for each thread contained within a process. -- Dave Hylands Shuswap, BC, Canada http://www.davehylands.com
Hi, You will get Number of Threads info your process is created is in /proc/pid/status root@kernel:/proc# ls /proc/1951/task/ 1951 1957 2162 root@kernel:/proc# root@kernel:/proc# cat /proc/1951/status | grep -i Threads: Threads: 3 root@kernel:/proc# root@kernel:/proc# cat /proc/self/status | grep -i Threads: Threads: 1 root@kernel:/proc# Thanks & Regards, PraviN On Sun, Feb 26, 2012 at 11:11 PM, Dave Hylands <dhylands@gmail.com> wrote:
Hi Kris,
On Sun, Feb 26, 2012 at 3:15 AM, emani murali <murali132@gmail.com> wrote:
Hi, I'm running a multithreaded program in OpenMP on linux to study CPU overloading. As the subject says, I need to know the number of threads this program creates (assuming in this case, number of threads in this program is same as the number of user threads) from the information kernel provides.
I'm looking something similar to run-queue length from "sar -q 0" that gives me exact picture of number of user threads. From the implementation of sar, I found that this information is fetched from /proc filesystem.
So is there anyway that /proc fs gives me the number of threads running in the system, apart from /proc/cpuinfo that gives me a static information of existing CPUs.
There is a directory in /proc/PID/task for each thread contained within a process.
-- Dave Hylands Shuswap, BC, Canada http://www.davehylands.com
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
-- Thanks & Regards,* ---------PraviN---------*
participants (3)
-
Dave Hylands -
emani murali -
Pravin Shedage