BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:Domain-specific languages and code generation for scientific compu
 ting - Garth N. Wells\, Department of Engineering\, University of Cambridg
 e
DTSTART:20111013T140000Z
DTEND:20111013T150000Z
UID:TALK32660@talks.cam.ac.uk
CONTACT:Carola-Bibiane Schoenlieb
DESCRIPTION:Increasing model complexity\, method diversity and evolving ha
 rdware present particular challenges when developing computer code for bot
 h new and existing problems. An approach to dealing with this is the devel
 opment and use of domain-specific languages (DSL) that reflect the mathema
 tical structure of the problem at hand.  A DSL allows expressive\, compact
  computer input that is near-identical to conventional mathematical notati
 on\, and it preserves the richness of the abstract representation.\nFrom t
 he DSL representation\, lower-level\, and possibly hardware-dependent\, co
 de can be generated.  The DSL maintains a separation between the mathemati
 cal representation\, the low-level code implementation and hardware detail
 s. This can lead to a reduction in errors\, accelerated model development 
 and scope for hardware specialisation.  Moreover\, preserving the mathemat
 ical abstraction makes correctness checks and the automated creation of au
 xiliary problems possible.  A specific DSL for solving variational problem
 s is presented\, as too is a compiler for generating optimised low-level c
 omputer code from the abstract input. It is shown that in the domain-speci
 fic environment it is possible to bring to bear specialised optimisations 
 that require domain-specific knowledge\,\nand which cannot be expected of 
 a general purpose compiler. This\nfacilitates the rapid development of hig
 h-performance solvers.  Examples of this will be presented for a range of 
 problems.  All presented software elements are available under open source
  licenses.\n
LOCATION:MR14\, CMS
END:VEVENT
END:VCALENDAR
