Saurabh Mishra's Weblog

20050524 Tuesday May 24, 2005

::cpupart -v for mdb(1m)

Most of you would have used ::cpupart in mdb(1m) to determine the partitions you have on your system. For those who don't know what's partition, then it's an objecct (or kernel entity) which consists of set of CPUs and a global dispatch queue (or global preemption queue). In fact processor sets (which are created from userland using psrset(1M) are abstraction of CPU partitions.

One of the thing which I'm currently working on is to introduce a new option to ::cpupart which will print all the runnable threads in the global dispatch queue of a CPU partition. It's very similar to what ::cpuinfo -v does. Here is the sample output :-

On x86 :-
---------
> ::cpupart -v
 ID     ADDR NRUN #CPU CPUS
  0 fec2a1f8  298    2 0-1
                |
                +-->  PRI THREAD   PROC
                      100 d19b1000 sema
                      100 d19aca00 sema
                      100 d19ab200 sema
                      100 d19a7000 sema
                      100 d0b90a00 sema
                      100 d19a5a00 sema
                      100 d19a2e00 sema
                      100 d19aea00 sema
                      100 d19b4200 sema
                      [.]
>

On SPARC :-
-----------
> ::cpupart -v
 ID             ADDR NRUN #CPU CPUS
  0          18a8c50   25    8 4-11
                        |
                        +-->  PRI THREAD      PROC
                              100 3000a7b1660 sema
                              100 3000a7c55e0 sema
                              100 3000a7b0d00 sema
                              100 3000a7c4960 sema
                              100 3000a7b5c80 sema
                              100 3000a7b4380 sema
                              100 300084a2c80 sema-1
                              100 3000826c3a0 sema-1
                              [.]
>

(2005-05-24 19:44:25.0) Permalink Comments [1]


archives
links
referers