]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | *CMZ : 11/11/94 14.40.52 by John Apostolakis CERN GP-MIMD 2 |
2 | *-- Author : John Apostolakis CERN GP-MIMD 2 13/07/94 | |
3 | C------------------------------------------------------------------------ | |
4 | C gpdynamic | |
5 | C Function: informs parallel Geant that events will be | |
6 | C dynamically distributed between nodes, ie | |
7 | C each "worker" node will request (the data of) an event | |
8 | C from a "master" or "leader". | |
9 | C | |
10 | C called by: <USER>, (if CERNLIB_PARA switch is used) | |
11 | C------------------------------------------------------------------------ | |
12 | #if defined(CERNLIB_PARA) | |
13 | subroutine gpdynamic | |
14 | implicit none | |
15 | #include "geant321/multiprox.inc" | |
16 | ||
17 | c | |
18 | c This routine overrides the default (set in gpinit) | |
19 | c of a static decomposition of events , with which | |
20 | c each processor would get 1/(number of processors) of the share | |
21 | c of events. | |
22 | c It should be used if an input file exists or the time per event | |
23 | c has a large standard deviation, the events can be dynamically assigned. | |
24 | c You will need to look at the routines gukine and muxread | |
25 | c in gexam3 for how to distribute events. | |
26 | ||
27 | c | |
28 | c The following initialises the "dynamic" configuration, | |
29 | c in which there is no "master" or "leader". | |
30 | c | |
31 | c -- Id of task expected to be a "master" | |
32 | npleader = 0 | |
33 | c -- Id of task expected to be 1st worker | |
34 | c (representative for printout ...) | |
35 | nfirstworker= 1 | |
36 | ||
37 | return | |
38 | end | |
62be6b28 | 39 | #else |
40 | SUBROUTINE GPDYNAMIC_DUMMY | |
41 | END | |
fe4da5cc | 42 | #endif |