================================================================================ Fujitsu PRIMEPOWER flags/tunables description (June 13, 2003) ================================================================================ ================================================================================ Fujitsu Parallelnavi 2.2 compiler flag description Parallelnavi consists of the following three main function groups: (a) Program development and execution environment functions; (b) High-speed application execution functions; and (c) Job operation management functions. The first group consists of a program development environment that supports Fortran, C, and C++ in accordance with international standards, and allows the use of parallel technology. Mathematical libraries, incl. the parallel version, and program development support tools are included. The second group contains an harmonized scheduling function to ensure a uniform level of execution performance for a parallelized program and a large page function, which improves the execution performance of applications that handle large volumes of data. The third group provides for the execution control and management of jobs, including parallel jobs, using the network queuing system (NQS). NQS allows one to submit batch jobs to queues on local or remote machines and have the log file returned to the originating machine or another machine. It is possible to disallow the sharing of CPUs by multiple jobs. The system resources can be effectively applied using the NQS scheduling functions, and a flexible scheduling for each user and group is provided by the Network Queuing System Job Manager (NQS-JM). The following compiler options have been used for both Fortran 90 and C compilers, except where specified otherwise. Compiler options Remark -------------------------------------------------------------------------------- -KOMP Recognizes OpenMP directives in the source code and generates multiprocessing code. -Kfast_GP2[={1|2|3}] This performs optimization for the SPARC64 V series. 1: This performs optimization suitable for SPARC64 V including the global instruction scheduling. 2: This performs reordering of expression evaluation in addition to -Kfast_GP2=1. 3: This option specifies the optimization of moving the evaluation of invariant expressions beyond the branch in addition to -Kfast_GP2=2. -KV9 Indicates that SPARCV9 instructions are generated. -Klargepage[={1|2}] Specifies the generation of an executable program which utilizes the Parallelnavi largepage facility. 1: The largepage facility applies to the data and heap areas 2: The largepage facility applies to the data, heap, and stack areas -Khardbarrier Specifies the generation of an executable program which utilizes the Parallelnavi thread hardware barrier facility. The synchronization performance is improved. -x- Inline expansion, instead of function calls, is performed. -Kprefetch_line=N When the prefetch instruction is generated, the target of prefetch is cache after N line. It means -Kprefetch={2|3|4|5} option is in effect. -Kprefetch[={1|2|3|4|5}] Generate prefetch instruction correspond to each prefetch level. -Kprefetch option is valid when -KV9 option is effective. 1: Basic level prefetch for array elements in only the inner-most loop. However, in case of multiloop, only the array data in the most inner loop is targeted. 2: In addition to the -Kprefetch=1, generate the prefetch instruction for array elements within the loop pre-header which accesses the first iteration in the loop. 3: In addition to the -Kprefetch=2, when the stride of access for array elements are larger than cache line size, compiler generates prefetch instruction for each cache line size access. 4: In addition to -Kprefetch=3, prefetch with address calculation is executed. 5: In addition to -Kprefetch=4, prefetching is applied to array data which are accessed indirectly. -Nautoobjstack Allocates an automatic data object on the stack. (F90 only) -Am Required if a source file contains modules which will be referenced by USE statements in other source files or if a source file contains USE statements that reference modules in another source file. (F90 only) -Fixed Specifies that Fortran source programs are written in fixed source form. (F90 only) -w In fixed source form, the length of all source lines is 255 characters. (F90 only) -Kfast_GP[={0|1|2}] This performs optimization for SPARC64 GP series. 0: This performs optimization suitable for SPARC64 GP including the global instruction scheduling. 1: This generates multiply and add instruction in addition to -Kfast_GP=0. (default) 2: This performs reordering of expression evaluation in addition to -Kfast_GP=1. -KV9FMADD Indicates that SPARCV9 instructions and multiply add/subtract are generated. -D name[=tokens] Associates name with the specified tokens in the same way as for a #define preprocessing directive. If =tokens is not specified, the token 1 is used. -KOMP_fast_reduction Use a reduction facility which is valid only if the parallel regions are not nested. -Kgs Perform global instruction scheduling. This is activated if -Kfast_GP2 is specified. -Kparallel Specifies automatic parallelization. -Knogs Do not perform global instruction scheduling. -Kpreex This option specifies the optimization of moving the evaluation of invariant expressions beyond the branch. -Kloop Restructures DO loops by performing interchange and blocking for better cache use. -Kilfunc This option replaces single and double precision mathematical functions, sin, cos, log10, log and exp with compiler built-in functions. -Kcfunc This uses high speed mathematical functions and library functions (malloc, calloc, realloc, free) prepared by this compilation system. (C only) -Kmfunc This uses high speed mathematical functions prepared by this compilation system. (C only) -lmtmalloc Use Solaris mtmalloc library. malloc() and free() provide a simple general-purpose memory allocation package that is suitable for use in high performance multithreaded applications. -SSL2 Combine with SSL II library. This library contains the optimized BLAS functions. ================================================================================ ================================================================================ Solaris system configuration information file description All flags are specified in '/etc/system'. System Tunables Remark -------------------------------------------------------------------------------- shmsys:shminfo_shmmax Maximum size of system V shared memory segment that can be created. shmsys:shminfo_shmmni System wide limit on number of shared memory segments that can be created. shmsys:shminfo_shmseg Limit on the number of shared memory segments that any one process can create. autoup Period of execution of the fsflush daemon in units of second. This daemon periodically scans memory to find unwritten data and meta-data and writes this into disks. memscrub_period_sec Period of execution of the memory patrol daemon in units of seconds. This daemon periodically scans memory to confirm no ECC error. ================================================================================ ================================================================================ Fujitsu Parallelnavi 2.2 Large page management information file description All flags are specified in '/etc/opt/FJSVpnrm/lpg.conf'. Tunables Remark -------------------------------------------------------------------------------- JOB=size[unit] Size of total memory, to be used for large page segments. At start of the system, this amount of memory is reserved and initialized for NQS jobs. "unit" can be M for mega-byte and G for giga-byte. SHMSEGSIZE=size[unit] Size of large page segment. "unit" can be M for mega-byte and G for giga-byte. ================================================================================ ================================================================================ Fujitsu Parallelnavi 2.2 CPU resource information file description All flags are specified in '/etc/opt/FJSVpnrm/cpursc.conf'. Tunables Remark -------------------------------------------------------------------------------- CPU_USE=tss-cpuid:io-cpuid The CPUs for TSS are specified by tss-cpuid and the CPUs interruptible by I/O devices are specified by io-cpuid. cpuid can be ranges of two numbers separated by a dash. ================================================================================ ================================================================================ Fujitsu Parallelnavi 2.2 NQS parameters description The Network Queuing System (NQS) parameters are managed by the qmgr command. Selecting the execution mode 'Simplex' disallows the sharing of CPUs by multiple jobs. Tunables Remark -------------------------------------------------------------------------------- Per-process data size limit The limit of data segment size. Per-process permanent file size limit The limit of permanent file size. Per-process memory size limit The limit of memory size. Per-request memory size limit The limit of largepage memory size. Per-process number of cpus limit The limit of the number of CPUs Per-process stack size limit The limit of stack segment size. Per-process CPU time limit The CPU time limit for each process. Execution mode Selection of execution mode. Simplex means sharing CPUs by multiple jobs is not permitted. Jobclass Assigning sub group. On a non-clustered system, this value is zero. ================================================================================