Automatic parallelization is most useful on large programs with the following characteristics:
KAP is unable to automatically parallelize loops with data
dependencies between loop iterations or loops with calls to external
routines. You may be able to cause KAP to parallelize such loops by
using C*$*
assertions and directives to give KAP more
information.
To compile a program for automatic parallel execution, use the KAP
-concurrentize
switch, abbreviated -conc
, with the kf77
driver, as follows:
kf77 -fkapargs='-conc' myprog.f
The -conc
switch tells KAP to automatically restructure
code for parallel processing. When you use the -conc
switch with the kf77
command, the driver sets the
compiler switch -automatic
by default to ensure correct
execution of a multithreaded program. Do not override the -
automatic
switch.
The -conc
switch causes the kf77
driver
to set the correct linker switches for your versions of the DIGITAL
UNIX parallel run-time and DECthreads libraries. For example, the
-conc
switch sets the following DIGITAL UNIX compiler
and linker switches:
-automatic
-fast
-lkmp_osf
or -lkmp_osfp10
-threads
or -pthread
-call_shared
-tune host
Section 3.4 explains these switches.
Copyright © Digital Equipment Corporation. 1997.
All Rights Reserved.