Process Groups, Part 2

 

Last week's tip showed how TotalView places processes into one control group and two share groups. If you haven't read that tip, you should read it now or what you'll read here may not make much sense.

Many of your programs will run on more than one chip. For example, you could have a blade server with multiple multi-core chips within it and your blade servers will be connected in a cluster. What do you think is the structure of control and share groups in this kind of environment? Actually, it really doesn't change.

The following illustration shows three quad-core chips.
 

The first thing to notice is that there is still just one control group and there are still just two share groups. The major difference is that the share groups contains more elements. In addition, I've added additional details:

  • Core 4 on each chip is now in a different color. This indicates that it is not executing anything. That is, these three cores are not in the share group.
  • The black lines between the quad-core chip is the communication channel between chips or between boards. What this channel is doesn't really matter.
  • The blue box in the left chip represents TotalView. The brown rectangles in the other two represent the TotalView Debugger Server (tvdsvr).

As processes are created on other chips TotalView launches a tvdsvr process on each. This is a light-weight process that sends information back to TotalView and interacts in minor ways with the processes running on your chip. Only one is needed for each chip as it can handle the interactions for all cores on a chip.

To be continued ...


You can find tips that we've already sent out in our Tip Archive

Help us improve these tips!