aboutsummaryrefslogtreecommitdiff
path: root/libgupc/libgupc.texi
diff options
context:
space:
mode:
Diffstat (limited to 'libgupc/libgupc.texi')
-rw-r--r--libgupc/libgupc.texi215
1 files changed, 215 insertions, 0 deletions
diff --git a/libgupc/libgupc.texi b/libgupc/libgupc.texi
new file mode 100644
index 00000000000..eb13093abb3
--- /dev/null
+++ b/libgupc/libgupc.texi
@@ -0,0 +1,215 @@
+\input texinfo @c -*-texinfo-*-
+
+@c %**start of header
+@setfilename libgupc.info
+@settitle GNU libgupc
+@c %**end of header
+
+
+@copying
+Copyright @copyright{} 2006-2016 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with the
+Invariant Sections being ``Funding Free Software'', the Front-Cover
+texts being (a) (see below), and with the Back-Cover Texts being (b)
+(see below). A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
+
+(a) The FSF's Front-Cover Text is:
+
+ A GNU Manual
+
+(b) The FSF's Back-Cover Text is:
+
+ You have freedom to copy and modify this GNU Manual, like GNU
+ software. Copies published by the Free Software Foundation raise
+ funds for GNU development.
+@end copying
+
+@ifinfo
+@dircategory GNU Libraries
+@direntry
+* libgupc: (libgupc). GNU UPC runtime library
+@end direntry
+
+This manual documents the GNU implementation of the UPC runtime.
+multi-platform shared-memory parallel programming in C/C++ and Fortran.
+
+Published by the Free Software Foundation
+51 Franklin Street, Fifth Floor
+Boston, MA 02110-1301 USA
+
+@insertcopying
+@end ifinfo
+
+
+@setchapternewpage odd
+
+@titlepage
+@title The GNU UPC Implementation
+@page
+@vskip 0pt plus 1filll
+@comment For the @value{version-GCC} Version*
+@sp 1
+Published by the Free Software Foundation @*
+51 Franklin Street, Fifth Floor@*
+Boston, MA 02110-1301, USA@*
+@sp 1
+@insertcopying
+@end titlepage
+
+@summarycontents
+@contents
+@page
+
+
+@node Top
+@top Introduction
+@cindex Introduction
+
+This manual documents the usage of libgupc, the GNU runtime library
+implementation of the
+@w{@uref{http://upc.lbl.gov/publications/upc-spec-1.3.pdf, UPC}}
+language extensions for shared-memory parallel programming in C.
+
+@comment
+@comment When you add a new menu item, please keep the right hand
+@comment aligned to the same column. Do not use tabs. This provides
+@comment better formatting.
+@comment
+@menu
+* Enabling UPC:: How to enable UPC for your applications.
+* Configuring Libgupc:: How to configure the UPC runtime library.
+* Runtime Library Routines:: The UPC runtime application programming
+ interface.
+* The libgupc ABI:: Notes on the external ABI presented by libgupc.
+* Environment Variables:: Influencing runtime behavior with environment
+ variables.
+* Reporting Bugs:: How to report bugs in GNU UPC.
+* Copying:: GNU general public license says
+ how you can copy and share libgupc.
+* GNU Free Documentation License::
+ How you can copy and share this manual.
+* Funding:: How to help assure continued work for free
+ software.
+* Library Index:: Index of this documentation.
+@end menu
+
+@c ---------------------------------------------------------------------
+@c Enabling UPC
+@c ---------------------------------------------------------------------
+
+@node Enabling UPC
+@chapter Enabling UPC
+
+To activate the UPC extensions for C, the compile-time
+flag @command{-fupc} must be specified. This enables the UPC language
+extensions which include the @code{shared} type qualifier
+and various synchronization statements such as @code{upc_barrier}.
+The flag also arranges for automatic linking of the UPC runtime library
+(@ref{Runtime Library Routines}).
+
+Alternatively, two command line drivers can be invoked: @command{upc}
+and @command{gupc}. These drivers are wrappers around the @command{gcc}
+and will automatically supply the @option{-fupc} option and
+will default the compilation of @file{*.c} files as UPC language source.
+
+The @samp{libgomp} runtime library supports both a single-node
+Symmetric Memory Processor (@samp{smp}) and a multi-node distributed
+(@samp{portals4}) target configurations. The target configuration
+is selected via the @command{configure} command when the library is
+built. See @ref{Configuring Libgupc} for details.
+
+@c ---------------------------------------------------------------------
+@c Configuring Libgupc
+@c ---------------------------------------------------------------------
+
+@node Configuring Libgupc
+@chapter Configuring Libgupc
+
+@menu
+* SMP Configuration:: How to configure libgupc for SMP single-node
+ operation.
+* Portals4 Configuration:: How to configure libgupc for multi-node
+ operation using the Portals4 communication
+ library.
+@end menu
+
+@node SMP Configuration
+@section SMP Configuration
+@cindex Configuration
+@cindex SMP Configuration
+
+@node Portals4 Configuration
+@section Portals4 Configuration
+@cindex Configuration
+@cindex Portals4 Configuration
+
+@c ---------------------------------------------------------------------
+@c Runtime Library Routines
+@c ---------------------------------------------------------------------
+
+@node Runtime Library Routines
+@chapter Runtime Library Routines
+
+@c ---------------------------------------------------------------------
+@c The libgupc ABI
+@c ---------------------------------------------------------------------
+
+@node The libgupc ABI
+@chapter The libgupc ABI
+
+@c ---------------------------------------------------------------------
+@c Environment Variables
+@c ---------------------------------------------------------------------
+
+@node Environment Variables
+@chapter Environment Variables
+
+@c ---------------------------------------------------------------------
+@c
+@c ---------------------------------------------------------------------
+
+@node Reporting Bugs
+@chapter Reporting Bugs
+
+Bugs in the GNU UPC implementation should be reported via
+@uref{http://gcc.gnu.org/bugzilla/, Bugzilla}. For all cases, please add
+"UPC" to the keywords field in the bug report.
+
+
+
+@c ---------------------------------------------------------------------
+@c GNU General Public License
+@c ---------------------------------------------------------------------
+
+@include gpl_v3.texi
+
+
+
+@c ---------------------------------------------------------------------
+@c GNU Free Documentation License
+@c ---------------------------------------------------------------------
+
+@include fdl.texi
+
+
+
+@c ---------------------------------------------------------------------
+@c Funding Free Software
+@c ---------------------------------------------------------------------
+
+@include funding.texi
+
+@c ---------------------------------------------------------------------
+@c Index
+@c ---------------------------------------------------------------------
+
+@node Library Index
+@unnumbered Library Index
+
+@printindex cp
+
+@bye