IBM XL C/C++ Programming Guide for Linux

IBM XL C/C++ Advanced Edition V8.0 for Linux. Programming Guide ….. v OpenMP Application Program Interface Version 2.5, available at ….. the same as specifying the maximum system alignment (16 bytes on all. UNIX platforms). …

More PDF Content

XL C/C++ Programming Guide (Linux) – Bluefern

  • Contents
  • About this document
    • Who should read this document
    • How to use this document
    • How this document is organized
    • Conventions and terminology used in this document
      • Typographical conventions
      • Icons
      • How to read syntax diagrams
      • Examples
    • Related information
      • IBM XL C/C++ publications
      • Additional documentation
      • Related publications
    • Technical support
    • How to send your comments
  • Chapter 1. Using 32-bit and 64-bit modes
    • Assigning long values
      • Assigning constant values to long variables
      • Bit-shifting long values
    • Assigning pointers
    • Aligning aggregate data
    • Calling Fortran code
  • Chapter 2. Using XL C/C++ with Fortran
    • Identifiers
    • Corresponding data types
    • Character and aggregate data
    • Function calls and parameter passing
    • Pointers to functions
    • Sample program: C/C++ calling Fortran
  • Chapter 3. Aligning data
    • Using alignment modes
      • Alignment of aggregates
      • Alignment of bit fields
        • Rules for Linux PowerPC alignment
        • Rules for bit-packed alignment
        • Example of bit-packed alignment
    • Using alignment modifiers
      • Precedence rules for scalar variables
      • Precedence rules for aggregate variables
  • Chapter 4. Handling floating point operations
    • Floating-point formats
    • Handling multiply-add operations
    • Compiling for strict IEEE conformance
    • Handling floating-point constant folding and rounding
      • Matching compile-time and runtime rounding modes
    • Handling floating-point exceptions
  • Chapter 5. Using C++ templates
    • Using the -qtempinc compiler option
      • Example of -qtempinc
        • Template declaration file: stack.h
        • Template implementation file: stack.c
        • Function declaration file: stackops.h
        • Function implementation file: stackops.cpp
        • Main program file: stackadd.cpp
      • Regenerating the template instantiation file
      • Using -qtempinc with shared libraries
    • Using the -qtemplateregistry compiler option
      • Recompiling related compilation units
      • Switching from -qtempinc to -qtemplateregistry
  • Chapter 6. Constructing a library
    • Compiling and linking a library
      • Compiling a static library
      • Compiling a shared library
      • Linking a shared library to another shared library
    • Initializing static objects in libraries (C++)
      • Assigning priorities to objects
        • Using priority numbers
        • Example of object initialization within a file
        • Example of object initialization across multiple files
      • Order of object initialization across libraries
        • Example of object initialization across libraries
  • Chapter 7. Optimizing your applications
    • Using optimization levels
      • Getting the most out of optimization levels 2 and 3
    • Optimizing for system architecture
      • Getting the most out of target machine options
        • Using -qarch options
        • Using -qtune options
        • Using -qcache options
    • Using high-order loop analysis and transformations
      • Getting the most out of -qhot
    • Using shared-memory parallelism (SMP)
      • Getting the most out of -qsmp
    • Using interprocedural analysis
      • Getting the most from -qipa
    • Using profile-directed feedback
      • Example of compilation with pdf and showpdf
    • Other optimization options
  • Chapter 8. Coding your application to improve performance
    • Find faster input/output techniques
    • Reduce function-call overhead
    • Manage memory efficiently
    • Optimize variables
    • Manipulate strings efficiently
    • Optimize expressions and program logic
    • Optimize operations in 64-bit mode
  • Chapter 9. Using the high performance libraries
    • Using the Mathematical Acceleration Subsystem (MASS)
      • Using the scalar library
      • Using the vector libraries
        • Overlap of input and output vectors
        • Consistency of MASS vector functions
      • Compiling and linking a program with MASS
        • Using libmass.a with libm.a
    • Using the Basic Linear Algebra Subprograms (BLAS)
      • BLAS function syntax
      • Linking the libxlopt library
  • Chapter 10. Parallelizing your programs
    • Countable loops
    • Enabling automatic parallelization
    • Using OpenMP directives
    • Shared and private variables in a parallel environment
    • Reduction operations in parallelized loops
  • Notices
    • Programming interface information
    • Trademarks and service marks
    • Industry standards
  • Index
Download IBM XL C/C++ Programming Guide for Linux pdf from www.bluefern.canterbury.ac.nz, 90 pages, 917.07KB.
Related Books

Leave a Reply