BIRCH
Settings for multiprocessor systems



On machines with multiple CPUs, some programs can utilize the extra CPUs by dividing tasks into parallel threads. In the default BIRCH distribution, the only programs that do this are the FASTA programs, which are compiled in both threaded and unthreaded versions.

The problem arises when a variety of login hosts are available, some with one CPU, others with more. By default, platform.source and platform.profile.source set the environment variable THREADED to the empty string. One way to tell BIRCH when multiple CPUs are available is to set THREADED to a non-blank value (in this case, "_t") for multiprocessor hosts. An example is shown in comments.

local/platform.source (for brevity, platform.profile.source is not shown)
# ------------------------  THREADING ------------------------------
# On machines with multiple CPUs, threaded versions of fasta programs
# are available. All end with _t. $THREADED is added to fasta program
# names in .GDEmenus.
# Note that setenv, and not set, must be used, to export THREADED
# so that the Bourne shell can use it.
setenv THREADED ""
#if ($HOSTNAME == castor | $HOSTNAME == deneb    | $HOSTNAME == mira |\
#    $HOSTNAME == pollux | $HOSTNAME == antares  | \
#    $HOSTNAME == hadar  | $HOSTNAME == goad     | $HOSTNAME == polaris) then
#   setenv THREADED _t
#else
#   setenv THREADED ""
#endif


If anyone knows of a better way to find out when a host has multiple CPUs, I'd love to hear about it.  - BF


Please send suggestions of comments regarding this page to frist@cc.umanitoba.ca