Multithreaded transactions in scientific computing. The Growth06_v2 program

Published: 1 July 2009| Version 1 | DOI: 10.17632/ryfz29dbhd.1
Andrzej Daniluk


Abstract Writing a concurrent program can be more difficult than writing a sequential program. Programmer needs to think about synchronization, race conditions and shared variables. Transactions help reduce the inconvenience of using threads. A transaction is an abstraction, which allows programmers to group a sequence of actions on the program into a logical, higher-level computation unit. This paper presents a new version of the GROWTHGr and GROWTH06 programs. Title of program: GROWTH06_v2 Catalogue Id: ADVL_v2_1 Nature of problem The programs compute the RHEED intensities during the growth of thin epitaxial structures prepared using the molecular beam epitaxy (MBE). The computations are based on the use of kinematical diffraction theory. Versions of this program held in the CPC repository in Mendeley Data ADVL_v1_0; GROWTH; 10.1016/j.cpc.2005.04.005 ADVL_v2_0; GROWTHgr, GROWTH06; 10.1016/j.cpc.2006.06.013 ADVL_v2_1; GROWTH06_v2; 10.1016/j.cpc.2009.01.024 ADVL_v3_0; Growth09; 10.1016/j.cpc.2009.11.011 ADVL_v4_0; GrowthCP; 10.1016/j.cpc.2011.02.014 This program has been imported from the CPC Program Library held at Queen's University Belfast (1969-2018)



Computer Graphics, Computer Hardware, Software, Surface Science, Condensed Matter Physics, Crystallography, Programming Languages, Computational Physics, Computational Method