the order of groups is consistent with the order of execution units, the control unit
needs to keep communication with the execution unit, and divide the 3D image into 2D
image slice groups that are as uniform as possible, and then send the grouped slices to
each execution unit. In the static grouping-based scheme, each execution unit has a
complete instruction stream. Each execution unit can be regarded as a separate subsystem, and its workflow is not affected by the outside. The control unit maintains a
correspondence between the grouped slices and the execution unit. When the processed
slices are received, the processed slices can be rearranged in the order of the original
slices by the correspondence. After all the slices have been processed, the 2D image
slices can be restored to a 3D image, which is ready to enter the reduction of false
positives stage.
2.2 Pipeline-Based Parallelization Scheme
The key problem of the static grouping-based scheme is that some information may not
be evenly distributed over the entire picture, such as edge recognition or region of
interest, which may result in different load between different execution units during
processing. To solve the problem, we introduced pipeline-based scheme. In the
pipeline-based scheme, the control unit needs to divide the input as small as possible.
In this paper, we take each 2D slice as input to the execution unit. For each execution
unit, it does not execute all the stages on each input, but only execute one specified
stage. The intermediate result will be transmitted to the next execution unit. In computer cluster, the order of execution units is critical, and it is the main task of the control
unit in a pipeline-based scheme. During the startup phase, the control unit assigns the
execution unit its stage and its delivery target of intermediate result. During execution,
the control unit is only in contact with the execution unit of the first stage and the one
of the last stage, for the input and output of pipelines. The output of the pipeline-based
parallelization scheme obviously remains in the same order as the input, so the control
unit does not need to reorder the processed slices.
2.3 Bus-Based Parallelization Scheme
Pipeline-based scheme lacks flexibility because the stage for execution unit to execute
is specified before image enters the system. For better flexibility, we designed a busbased parallelization scheme, which transmits data with information about stage in a
bus. The control unit needs to maintain two queues to store the intermediate data and
the processed data. Whenever data is transmitted back to the control unit, the control
unit determines which queue to put it into according to the stage of the data, and sends
the intermediate data to the idle execution unit. In bus-based scheme, execution units
receive slices and the stage of the slices, then performs the corresponding processing.
The control unit in computer cluster plays the role of bus, it sends the slices with stage
information to execution units and receives processed data.
The bus-based scheme requires that each input be as small as possible. It can make
the execution unit spend as little time as possible in executing an input. If the input is
too large and takes too long time to be executed, it will cause the overall execution time
to become uncontrollable, and affects load balancing. However, in order to achieve
586
J. Weng et al.
Précédent

- 598/679

Suivant