Multithreaded transactions in scientific computing: New versions of a computer program for kinematical calculations of RHEED intensity oscillations

Published: 15-11-2006| Version 1 | DOI: 10.17632/j3h3jysxwg.1
Marcin Brzuszek,
Andrzej Daniluk


Abstract Writing a concurrent program can be more difficult than writing a sequential program. Programmer needs to think about synchronisation, 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 multithreaded versions of the GROWTH program, which allow to calculate the layer coverages d... Title of program: GROWTHgr, GROWTH06 Catalogue Id: ADVL_v2_0 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 [1]. 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)