Browse Prior Art Database

Avoiding interlock and minimising distortion when gathering operational data from multiple threads in a network of processing units

IP.com Disclosure Number: IPCOM000129864D
Original Publication Date: 2005-Oct-07
Included in the Prior Art Database: 2005-Oct-07
Document File: 2 page(s) / 88K

Publishing Venue

IBM

Abstract

In a network of cooperating processing units where there is a need to gather operational data, such as statistics. Gathering points are synchronized with the connectors between the processing units in a network so it is necessary to avoid distortion of the processing flow while gathering and accumulating the operational data. Therefore gathering and collecting points are not interlocked in this design. The solution is to provide an intermediate mechanism referred to here as the Conveyor which provides an asynchronous delivery of gathered operational data from the gathering point to the collecting and reporting point. Thus the relatively lightweight gathering mechanism is decoupled from the more processing intensive accumulation and output of the operational data.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 55% of the total text.

Page 1 of 2

Avoiding interlock and minimising distortion when gathering operational data from multiple threads in a network of processing units

This publication addresses the problem of avoiding interlock between separate instances of a mechanism that gathers operational data from a network of cooperating processing units which transfer computational flow. A collecting mechanism is described which accumulates operational data that is passed to it in gathering containers generated by one or more instances of the gathering mechanism.

    An example of this type of network of cooperating processing units is a message flow transaction in IBM's WebSphere* Message Brokers product. In such a network there is a need to gather operational data ( for example statistics of the progress of a computational flow through the network .) whilst avoiding instrumentation of the processing units. Please refer to Fig 1. below Figure 1:

Gathering Data From Message Flow

message flow transaction

Gatherer

Update

Calls to Gatherer to update Container

nodes

1 2

3

4

5

Container

Container

flow data

thread data

node 1 data

node 2 data

node 3 data

node 4 data

node 5 data

    Gathering points are synchronized with the connectors between the processing units in a network so it is necessary to avoid distortion of the processing flow while gathering and accumulating the operational data. Therefore gathering and collecting points are not interlocked in this design .

    The solution is to provide an intermediate mechanism referred to here as the Conveyor. This is a logical FIFO queue of containers that represent complete sets of operational data gathered during the flow of processing along the path of a network. Each gathering instance hands off a completed gathering container to the Conveyor, which is chained to the end of the Conveyor queue ( please refer to Fig 2.

1

[This page contains 2 pictures or other non-text objects]

Page 2 of 2

)

    When the Collector is ready to accumulate more data from the gatherin...