Under linux, how do I find out if some specific thread is run with real-time priority?

4

1

I have a process (jackd) that runs several threads. One of the threads it runs should be in realtime, the others run on normal priorities. I'd like to check if it actually runs on realtime. What program can I use for this task?

Turion

Posted 2012-07-30T14:45:05.130

Reputation: 153

Answers

4

You can use ps with the -m switch to show all threads, and -l ("long" format) to show the priority. The full command would look like:

ps -m -l [TASK PID]

Breakthrough

Posted 2012-07-30T14:45:05.130

Reputation: 32 927

1Cool, didn't know about the -m switch! It seems it is also possible to list all threads with their realtime priorities (if available) with something like ps -eO rtprio -m. – Turion – 2012-08-01T15:42:34.263

1

(1)Command which gives the Process ID of a process is

ps -e | grep

(2)Command which gives a process related all the ThreadIds scheduling policy and priority is

chrt -a -p < PId >

(3)Command which gives the list of processes and its ThreadIDs with name

ps -eL

Now you can map the ThreadId to ThreadName from step 3) command and see the corresponding IDs scheduling policy and priority from step 2).

Sundeep R

Posted 2012-07-30T14:45:05.130

Reputation: 11