![]() |
||||||||
|
||||||||
|
||||||||
IFS documentation Front PageTable of contentsCHAPTER 1 Incremental
formulation of 3D/4D variational assimilation-an overview CHAPTER 2 3D variational assimilation CHAPTER 3 4D variational assimilation CHAPTER 4 Background term CHAPTER 5 Conventional observational
constraints CHAPTER 6 Satellite observational
constraints CHAPTER 7 Background, analysis
and forecast errors CHAPTER 8 Gravity-wave control CHAPTER 9 Data partitioning (OBSORT) CHAPTER 10 Observation screening CHAPTER 11 Analysis of snow CHAPTER 12 Land surface analysis CHAPTER 13 SST and sea-ice analysis CHAPTER 14 Reduced-rank Kalman filter |
Next
Section Previous Section 10.7 A massively-parallel computing environmentThe migration of operational codes at the ECMWF to support a massively-parallel computing environment has set a requirement for reproducibility. The observation screening needs to result in exactly the same selection of observations when different numbers of processors are used for the computations. As mentioned earlier, in the observation screening there are the two basic types of decision to be made. Independent decisions, on one hand, are those where no information concerning any other observation or decision is needed. In a parallel-computing environment these decisions can be happily made by different processors fully in parallel. For dependent decisions, on the other hand, a global view of the observations is needed which implies that some communication between the processors is required. The observation array is, however, far too large to be copied for each individual processor. Therefore, the implementation of observation screening at the ECMWF is such that only the minimum necessary information concerning the reports is communicated globally. The global view of the observations is provided in the form of a global `time-location' array for selected observation types. That array contains compact information concerning the reports that are still active at this stage. For instance, the observation time, location and station identifier as well as the owner processor of that report are included. The time-location array is composed at each processor locally and then collected for merging and redistribution to each processor. After the redistribution, the array is sorted locally within the processors according to the unique sequence number. Thus, every processor has exactly the same information to start with, and the dependent decisions can be performed in a reproducible manner independently of the computer configuration. The time-location array is just large enough for all the dependent decisions, except for the redundancy checking of the multilevel temp and pilot reports. This is a special case, in the sense that the information concerning each and every observed variable from each level is needed. Hence, the whole multilevel report has to be communicated. The alternative to this would be to force the observation clusters of the multilevel reports always into one processor without splitting them. In that case the codes responsible for the creation of the observation arrays for assimilation would need to ensure the geographical integrity of the observation arrays distributed amongst the processors. This is, however, not possible in all the cases, and the observation screening has to be able to cope with this. Currently, it is coded in such a way that only a limited number of multilevel temp and pilot reports, based on the time-location array, are communicated between the appropriate processors as copies of these common stations. Next Section Previous Section |
|||||||
|
|
|||||||