Fortran Specialist Group One Day Meeting

11.00 a.m. Thursday 2nd October, 2014
Wilkes Room 4, BCS London Office,
First Floor, The Davidson Building, 5 Southampton Street, London WC2E 7HA
(nearest Underground stations: Charing Cross, Covent Garden, Embankment and Leicester Square)

Annual General Meeting 2014


Tea, coffee and biscuits
AGM Business
  1. Apologies for absence
  2. Minutes of the previous AGM (26th September 2013)
  3. Matters arising
  4. Chairman's report
  5. Treasurer's report
    SG Development Fund report
  6. Membership Secretary's report
  7. Web Editor's report
  8. Election of Officers and Committee members
    (The following is taken from the Fortran SG Constitution:
    The name of any member accepting nomination for election or re-election as an Officer or as a Committee member shall be submitted in writing to the Secretary 7 clear days prior to the date of the AGM by two members of the Group with the written consent of the nominee.
    "In writing" applies equally to email or paper copy.)
  9. Future activities for the Group

  10. Any other business
  11. Date of next meeting
Buffet Lunch and networking

Joint meeting with Computational Physics Group of Institute of Physics

"How Software Engineering can help you"
Prof Chris Greenough, Software Engineering Group, Rutherford Appleton Laboratory

Much of existing scientific software is of low "quality" from the point of view of standards of "best practice" in professional software engineering. Ensuring that code is clearly structured and readily intelligible to new users through reading the code is not currently a priority for scientific research.

Those involved in developing codes feel justified in believing that they are of good "quality" because they generate valid scientific results that pass peer review. However, codes can have a long life cycle, being used and revised by successive generations in collaborative research teams. Repositories of long-life software are being set up by funding bodies.

We will demonstrate that scientific software can benefit from the pragmatic application of software engineering tools and techniques. Productivity is increased and the software becomes more readily shareable and re-useable.

"The Craftsperson and the Scholar"
James Hetherington, Research Software Development Team Leader, University College London

At Digital Research 2012 I presented a position paper with colleagues regarding the role of the Research Software Engineer. This paper followed on from a discussion I led at the Collaborations Workshop and some very interesting blog posts by Dirk Gorissen and Ilian Todorov.

Afternoon Tea
"Fortran 2008 coarrays"
Anton Shterenlikht, Mech Eng Dept, The University of Bristol, Bristol BS8 1TR

Coarrays are a Fortran 2008 standard feature intended for SPMD type parallel programming. The runtime environment starts a number of identical executable images of the coarray program, on multiple processors, which could be actual physical processors or threads. Each image has a unique number and its private address space. Ordinary variables are private to an image. Coarray variables are available for read/write access from any other image. Coarray communications are of "single sided" type, i.e. a remote call from image A to image B does not need to be accompanied by a corresponding call in image B. This feature makes coarray programming a lot simpler than MPI.

The standard provides synchronisation intrinsics to help avoid race conditions or deadlocks. Any ordinary variable can be made into a coarray - scalars, arrays, intrinsic or derived data types, pointers, allocatables are all allowed. Coarrays can be declared in, and passed to, procedures.

Coarrays are thus very flexible and can be used for a number of purposes. For example a collection of coarrays from all or some images can be thought of as a large single array. This is precisely the inverse of the model partitioning logic, typical in MPI programs. A coarray program can exploit functional parallelism too, by delegating distinct tasks to separate images or teams of images. Coarray collectives are expected to become a part of the next version of the Fortran standard. A major unresolved problem of coarray programming is the lack of a standard parallel I/O facility in Fortran. In this talk several simple complete coarray programs are shown and compared to alternative parallel technologies - OpenMP, MPI and Fortran 2008 intrinsic "do concurrent". Inter image communication patterns and data transfer are illustrated. Finally an example of a materials microstructure simulation coarray program scaled up to 32k cores is shown. Problems with coarray I/O at this scale are highlighted and addressed with the use of MPI-I/O.

"Fortran and Massive Concurrency"
Wayne Gaudin, AWE

The ability to accurately model complex physics requires the use of the largest, cutting edge supercomputers. User thirst for more compute remains despite orders of magnitude in performance increases over the last two decades.

The past 20 years have been a golden era of clock speed based performance increases which left computational physicists to concentrate on modelling with little attention paid to performance.

The fact that memory bandwidth failed to keep up with increasing clock speeds with the inevitable consequence of reduced relative peak performance generally went unnoticed. Now clock speeds are stagnating as power constraints and energy to solution are increasingly important.

Extra compute will now come through "wider" computing based on increased core counts even on commodity solutions, the re-emergence of big vector units and accelerator technology based on large numbers of low power cores. Heterogeneous solutions are also becoming more common.

At AWE, the majority of our scientific code base is Fortran, some almost 50 years old, with many man years of development and millions of lines of code.

Is Fortran still a viable language for scientific computing at the massive concurrency provided by the next generation of supercomputers?

This talk hopes to answer that question by presenting the research AWE and its partners have carried out over the past three years into using many core technologies at scale on Fortran code.


Comments on this or any other of the Group's pages should be sent by email to the FSG Web Editor.
Valid XHTML 1.0 Transitional Valid CSS!

Last modified: Wed 28 Sep 2016 21:40:25