http://www.aertia.com

PGI Visual Fortran

by The Portland Group

PGI Visual Fortran (PVF) fully integrates the PGI suite of high-performance 64-bit and 32-bit parallel Fortran compilers and tools from The Portland Group into Microsoft Visual Studio 2005.

High-performance PGI Compilers
PVF features the latest version of PGI's native OpenMP and auto-parallel Fortran compilers. PGI compilers are supported on and can generate fully optimized code for a broad range of popular high-performance computing platforms including 64-bit x64 and 32-bit x86 processor-based systems.

PGI Fortran compilers offer world-class performance and features including auto-parallelization, support for multi-core processors, OpenMP 2.5, and the the PGI Unified Binary™, The PGI Unified Binary streamlines cross-platform support by combining into a single executable file code optimized for both x64 processor families. State-of-the-art compiler technologies found in PVF include vectorization, parallelization, interprocedural analysis, memory heirarchy optimization, function inlining (including library functions), CPU-specific optimizations and more.

Visual Studio Integration
PVF includes features to enable rapid code development. The Fortran aware text editor supports syntax coloring, Fortran intrinsics tips and keyword completion. PVF also automatically manages all build dependencies. PVF is interoperable with Microsoft Visual C++ so Fortran sub-programs can call C functions and vice versa. PVF includes a number of DVF/CVF compatibility features including full support for the Win32 API. Sample projects include building Fortran dialog boxes, console and Windows applications, DLLs and static libraries.

PVF augments the Visual Studio debugger with a custom debug engine that provides the language-specific debugging capability required for Fortran. The PVF debug engine supports graphical symbolic debugging of single-thread, multi-thread, and OpenMP applications. It enables debugging of 64-bit or 32-bit applications symbolically using source code or with interleaved assembly code, and it provides full access to the registers and hardware state of the processor. The PVF debug engine is interoperable with the Visual C++.

Documentation includes the PVF User's Guide, PVF Release & Installation Notes and the PGI Fortran Language Reference Manual. Extensive online help for PVF is built into the Visual Studio help system. The PVF User's Guide and PGI Fortran Reference are also part of PVF online help.

A Complete Fortran Development Solution
PGI Visual Fortran is available in two configurations. PVF Workstation Complete includes a bundled copy of the Microsoft Visual Studio 2005 IDE†—the premier Integrated Development Environment for the Windows platform, the current MSDN* documentation library, assembly-optimized BLAS/LAPACK/FFT math library routines, PGI's PGPROF® parallel performance profiler, and a full boxed media kit with CD-ROM's and printed documentation. PVF Worksation Complete has everything you need to start developing Fortran applications in minutes. There is no need to acquire or install any third party software packages.

If you already have Visual Studio 2005, PGI Visual Fortran Standard Edition is a complete production-quality parallel Fortran project system "plug-in" for developing optimized Fortran solutions for both Intel and AMD processors.

PVF is available in single-seat node-locked licenses. Each license includes both 64-bit and 32-bit compilers. Compiling 64-bit applications requires a 64-bit Windows operating system (e.g. Microsoft Windows Server 2003 x64 Edition or Microsoft Windows XP Professional x64 Edition).

Technical Features

Visual Studio Integration

  • Fortran aware text editor
  • Fortran intrinsics tips
  • Keyword completion
  • Fortran debug engine
  • Automatic Dependency Analysis
  • Interoperable with Microsoft Visual C++
  • Sample projects
  • Bundled Visual Studio 2005*
  • Bundeld Microsoft MSDN documentation library*
  • Bundled ACML high-performance math library*

Fortran Compilers

  • Features
    • Full 64-bit support on AMD64 and EM64T
    • PGI Unified binary optimized for both AMD64 and EM64T
    • Full 32-bit support and optimization for x86/x87 targets
    • Auto-parallelization
    • OpenMP 2.5 parallelization
    • Inter-language calling
    • IEEE arithmetic options
    • Vectorization/Optimization directives
    • Integrated cpp pre-processor
    • Fast compile times
    • Compile-time optimization listings
    • Annotated assembly code listings
    • Online and printed documentation
       
  • Optimizations
    • AMD64 and EM64T cross-target optimization
    • Interprocedural Analysis (IPA)
    • Scalar SSE code generation
    • Function inlining
    • Loop fusion
    • Profile-feedback optimization
    • Instruction scheduling
    • Invariant code and conditional hoisting
    • Common sub-expression elimination
    • Global constant propagation
    • Global dependence analysis
    • Global flow analysis
    • Integrated local, global and vector register allocation
    • Induction variable analysis
    • Load/store analysis
    • Tail recursion elimination
    • Scalar expansion, scalar replacement
    • Value propagation, strength reduction
    • Dead code elimination
       
  • Vector/Parallel Transformations
    • State-of-the-art dependence analysis
    • Nested loop autoparallelization
    • Nested loop vectorization
    • Loop interchange
    • Loop splitting, unroll & jam
    • Iteration peeling
    • Aligned access optimizations
    • Scalar promotion
    • Temporary vector creation
    • Stripmining, Cache Tiling
    • Concurrent call support
    • Inline concurrent code segments
    • Vector SSE code generation
    • Software prefetching

Parallel Debug Engine

  • 64-bit and 32-bit targets
  • Debug Fortran and Visual C++
  • Debug parallel OpenMP and multi-threaded programs
  • Interleaved source and assembly language
  • One-touch breakpoint setting
  • Step into, over, out of functions
  • Attach to running processes
  • Traceback, Log files, Help
  • One-touch symbolic display
  • Multiple format display of values or strings
  • Track register states
  • Control multiple threads at one time*
  • Program status visualizer*

Parallel Performance Profiler*

  • 64-bit and 32-bit targets
  • Profile parallel OpenMP and multithreaded Fortran programs
  • Function-level and source line-level displays
  • Multiple format displays: Histogram, Percentage, Bar charts, Counts, Absolute value
  • Sort by line number, value, time
  • Extensive online help

* Features available in PVF Workstation Complete only.



2004, Aertia, S.L.