WRITING AND RUNNING PARALLEL PROGRAMS
In the past, virtually all parallel program development was done using a text edi-tor such as vi or Emacs, and the program was either compiled and run from the command line or from within the editor. Debuggers were also typically started from the command line. Now there are also integrated development environments (IDEs) available from Microsoft, the Eclipse project, and others; see [16, 38].
In smaller shared-memory systems, there is a single running copy of the operat-ing system, which ordinarily schedules the threads on the available cores. On these systems, shared-memory programs can usually be started using either an IDE or the command line. Once started, the program will typically use the console and the key-board for input from stdin and output to stdout and stderr. On larger systems, there may be a batch scheduler, that is, a user requests a certain number of cores, and specifies the path to the executable and where input and output should go (typically to files in secondary storage).
In typical distributed-memory and hybrid systems, there is a host computer that is responsible for allocating nodes among the users. Some systems are purely batch systems, which are similar to shared-memory batch systems. Others allow users to check out nodes and run jobs interactively. Since job startup often involves com-municating with remote systems, the actual startup is usually done with a script. For example, MPI programs are usually started with a script called mpirun or mpiexec.
As usual, RTFD, which is sometimes translated as “read the fine documentation.”
Copyright © 2018-2020 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.