Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compiler Sensitivity Study Different compilers, which are after all the interface between researchers expectations expressed in the model code and the.

Similar presentations


Presentation on theme: "Compiler Sensitivity Study Different compilers, which are after all the interface between researchers expectations expressed in the model code and the."— Presentation transcript:

1 Compiler Sensitivity Study Different compilers, which are after all the interface between researchers expectations expressed in the model code and the computer hardware, are very variable. Compilers differ in their  interpretation of computer language standards  response to bad or poor programming  advice, help, warnings given  behaviour when optimising code  performance of the compiled code See the Fortran compiler comparison from Polyhedron Software http://www.polyhedron.comhttp://www.polyhedron.com. Diagnostic test suite results for run time errors. Why is understanding compiler sensitivities of models important? While different compilers report errors, which are always investigated, they also report warnings if requested, which are rarely investigated. These warnings and cautions show great variability in number (see Table 1) and there is very limited commonality in the message type. The results when this bad code is run can also differ. The different compiler’s handling of this bad code could significantly change model results. The results of an example of bad/wrong coding shown in the TEST program are listed in Table 2 for a variety of compilers. The major issue for the modelling community is the variability of results for what is admittedly bad coding, which can even change with newer compiler releases. Worse still is the failure to warn of this bad coding. Do compilers really differ that much? Performance measurements on a computer system like HECToR must take into account ‘jitter’, the performance variability found on systems with large numbers of cores, a large user base and with a high utilisation. The error bars in Figure 1 represents some measure of the ‘jitter’ seen on HECToR. In general the Pathscale compiled UM code performs better than the PGI compiled code although there is evidence of an issue with input/output. This output performance difference is currently being investigated. How large are the performance differences of models with different compilers? This study is an example of the general technical support provided by the NCAS Computational Modelling Services (CMS) group Loïs Steenman-Clark Jeff Cole Simon Wilson William McGinty Rosalyn Hatcher Andy Heaps Annette Osprey Grenville Lister Gerry Devine Table 2. Using the TEST program several compilers and compiler versions were tested on different computer systems Figure 1. Performance differences on HECToR for the Unified Model (UM) version 6.1 with different compilers. The effect of changing resolution and input/output load can be seen. Compiler Number of cautions Number of warnings Pathscale2094 PGI3672 Cray2703 Table 1. A comparison of compiler messages on HECToR, Cray XT4, for a test case (Unified Model, UM, version 6.1, global atmosphere) compiled with three different compilers. CompilerWarningResult Intel 7.1.0.42yes 1.0 2.0 1.0 Intel 8.1.0.28no 1.0 1.0 1.0 Intel 9.0.0.21no 1.0 1.0 1.0 IBM xlf 8.1yes 1.0 2.0 1.0 IBM xlf 12.1.0.2yes 1.0 2.0 1.0 Pathscale 3.0no 1.0 2.0 1.0 PGI 7.1.4yes 1.0 1.0 1.0 Cray 7.0.4yes Memory fault program TEST real a(3) data a/3*1.0/ data a(2)/2.0/ print *, a stop end HECToR Cray XT4 units under construction (March 2007) at the Cray facility at Chippewa Falls, MN. CompilerAbsoftg95gfortranIntelLaheyNagPathscalePGISun Percentage passes 35%47%43%55%96%90%39%29%43% UM N216 - % output time per model day 124824 PGI5%28%33%61%63% Pathscale15%25%42%65%72% Contact: l.steenman-clark@reading.ac.ukNCAS Staff Meeting, Oxford, November 2009


Download ppt "Compiler Sensitivity Study Different compilers, which are after all the interface between researchers expectations expressed in the model code and the."

Similar presentations


Ads by Google