PGI Visual Fortran

Parallel Fortran Compilers and Tools for Microsoft Windows

PGI Visual Fortran® (PVF®) brings the PGI suite of high-performance 64-bit and 32-bit parallel Fortran compilers to Microsoft Windows developers using Microsoft Visual Studio.

PGI Visual Fortran® integrates PGI parallel Fortran into Microsoft Windows through Visual Studio

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 multi-core processor-based systems as well as 32-bit x86 systems.

PGI Fortran compilers offer world-class performance and features including both automatic and OpenMP 3.1 parallelization support for optimizing performance on multi-core processors. Advanced compiler technologies found in PVF include vectorization, parallelization, interprocedural analysis, memory hierarchy optimization, cross file function inlining, CPU-specific optimization and more. PVF includes full support for 64-bit addressing, native integrated scalar, and vector SSE code generation—including the latest Intel and AMD AVX extensions.

In addition to its comprehensive support for multi-core processors, PGI Visual Fortran includes PGI's two models for programming HPC accelerators. The OpenACC programming model is a high-level implicit model similar to OpenMP for multi-core x64 systems. Use OpenACC compiler directives to incrementally offload compute-intensive loops and code regions from a host CPU to a GPU accelerator. OpenACC directives are treated as Fortran comments by other Fortran compilers, so programs incorporating them remain 100% standard-compliant and portable. Developed in cooperation with NVIDIA, CUDA Fortran is an analog to the NVIDIA CUDA C compiler. CUDA Fortran gives expert programmers direct control over all aspects of NVIDIA GPU accelerator programming.

About PVF Accelerator

PGI offers separate products for x64+accelerator and-x64 only platforms. PVF Accelerator—the x64+accelerator platform product—includes support for the directive-based OpenACC programming model and CUDA Fortran. PVF Accelerator is supported on all Intel and AMD x64 processor-based systems with CUDA-enabled NVIDIA GPUs and select AMD Radeon GPUs running 32-bit or 64-bit Windows operating systems. CUDA Fortran is supported on NVIDIA GPUs only.
PVF Accelerator (including CUDA Fortran) is included in all PVF 2010 or later download packages. Trial license keys or permanent license keys are required to enable these features.

Please note that all for-fee PGI Visual Fortran academic licenses include support for x64+GPU. US and German academics can qualify for a free limited time license to PGI Visual Fortran for x64.

PGI Unified Binary™ technology provides the ability to generate a single executable file with code sequences optimized for multiple AMD, Intel and NVIDIA processors. The PGI Unified Binary technology enables Independent Software Vendors (ISVs) and custom applications developers to leverage the latest processor innovations while treating x64 or x64+GPU as a single platform, maximizing flexibility and eliminating the need to target and optimize for separate processors.

Visual Studio Integration

PVF has features to help with rapid code development. PVF adds syntax coloring, Fortran intrinsics tips and keyword completion to the Visual Studio editor. PVF includes a complete Fortran build environment for Visual Studio with Fortran specific features such as automatic build dependency management. 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 illustrate building console applications, Windows applications, DLLs and static libraries, configuring and coding PGI Accelerator and CUDA Fortran GPU applications, and using Visual C++ in tandem with PVF.

PVF includes a Fortran language specific custom debug engine. The PVF debug engine supports debugging of single and multi-thread, OpenMP, multi-thread MS-MPI and hybrid MS-MPI+OpenMP Fortran applications. It enables debugging of 64-bit or 32-bit applications using source code or assembly code, and it provides full access to the registers and hardware state of the processors. The PVF debug engine is interoperable with Visual C++.

PVF can manage the multi-process MPI capabilities built into Microsoft HPC Server 2008. MS-MPI capabilities within PVF include Visual Studio property pages for configuring compile-time options, launching applications locally on a workstation and debugging of programs running. Both PVF and PVF Server support running and debugging MS-MPI programs on your local system.

A Complete Fortran Development Solution

PGI Visual Fortran includes the Visual Studio 2013 Shell†—a complete stand-alone Windows Fortran development environment. No additional software is required. PVF also supports existing installations of Visual Studio 2012, Visual Studio 2010 and/or Visual Studio 2008.

Documentation includes the PVF User's Guide, PVF Reference Manual, PVF Release Notes, PVF Installation Guide and the PGI Fortran Reference.

Visual Studio 2012 Partner

A license for PVF is included with all PGI Fortran products for Windows. It may also be purchased separately. License options include single user node-locked (PVF) and multi-user network floating (PVF Server). Compiling 64-bit applications requires a 64-bit operating system.

The IMSL Fortran numerical library for PGI Visual Fortran is also available separately.

†The Visual Studio Shell included with PVF contains PGI compilers only.

Technical Features

Visual Studio Integration
  • Fortran syntax coloring
  • Fortran intrinsics tips
  • Keyword completion
  • Fortran debug engine
  • Automatic dependency analysis
  • Interoperable with Microsoft Visual C++
  • Sample projects
  • Bundled Visual Studio 2013 IDE
  • Bundled ACML high-performance math library
  • Supports multi-threaded execution with Intel MKL 10.1 and later
  • Optional IMSL Fortran numerical library available
  • Build, launch and debug Microsoft MPI (MS-MPI) applications
Fortran Compilers
  • Features
    • Native OpenMP and auto-parallel Fortran 2003 compiler with optional support for OpenACC 2.0 directives and CUDA extensions
    • Full 64-bit support on AMD64, Intel 64, NVIDIA CUDA-enabled GPUs and select AMD Radeon GPUs
    • PGI Unified Binary technology—combine code optimized for multiple AMD64 processors, Intel 64 processors, NVIDIA GPUs or AMD GPUs into a single executable file
    • Full 32-bit support and optimization for x86/x87 targets
    • Auto-parallelization
    • OpenMP 3.1 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
    • Full support for Fortran 2003
    • Support for select Fortran 2008 features
  • Optimizations
    • AMD64 and Intel 64 cross-target optimizations
    • Interprocedural Analysis (IPA)
    • Function inlining
    • Loop fusion
    • Profile feedback optimization
    • Memory hierarchy and memory allocation optimization
    • Huge pages support
    • Instruction scheduling
    • Data prefetching
    • 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 auto-parallelization
    • 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/AVX code generation
    • Software prefetching
Parallel Debug Engine
  • 64-bit and 32-bit targets
  • Debug Fortran and Visual C++
  • Debug single and multi-thread, parallel OpenMP, multi-thread MS-MPI and hybrid MS-MPI+OpenMP programs
  • Variable roll-over
  • One touch breakpoint setting
  • Step into, over, out of functions
  • Attach to running processes
  • One touch symbolic display
  • Multiple format display of values or strings
  • Track register states

System Requirements

  • Processor: 64-bit AMD64, 64-bit Intel 64 or 32-bit x86 processor-based workstation or server with one or more single core or multi-core microprocessors.
  • Accelerator (optional): NVIDIA CUDA-enabled GPU with compute capability 2.0 or later. AMD Radeon HD 77xx, 78xx, 79xx, and R7 series GPUs (Cape Verde, Tahiti or Spectre).
  • Operating System: (Building 64-bit applications requires a 64-bit operating system.)
    • Visual Studio: All versions of Visual Studio 2013, 2012, 2010 and 2008 are supported except Visual Studio Express.
    • Operating System: Microsoft Windows 10/8.1/8/7, Server 2012, and Server 2008 R2. Both 64-bit and 32-bit versions are supported where available.
  • Memory: 256 MB or more.
  • Hard Disk: 1 GB during installation, 500 MB to hold installed software.
  • Peripherals: Mouse or compatible pointing device. DVD disk drive for installation, unless products are downloaded and installed electronically.
  • Other: Adobe Acrobat Reader for viewing documentation.
Other PGI Products for Windows
PGI Fortran/C/C++ Workstation
PGI's full suite of parallelizing Fortran, C and C++ compilers and development tools. Includes the OpenMP parallel debugger/profiler. Single user node locked license.
PGI Fortrran/C/C++ Server
PGI's full suite of parallelizing Fortran, C and C++ compilers and development tools. Includes the OpenMP parallel debugger/profiler. Multi-seat network floating license.
Click me