Programs for Programmers

Unique to Polyhedron - Training videos

Using OpenMP & Intel VTuneUsing OpenMP & Intel® VTune for Faster Code and Improved ROI

This training video shows the performance effect adding a single OpenMP statement to some Fortran code which is then compiled with Intel® Fortran.

Since the example being used contains a load balance problem, Intel® VTune is used to analyse the performance of this demonstration program.

VTune pin-points the hot-spot that causes the imbalance.

Then, after explaining the imbalance situation, it is shown how to change the OpenMP statement, so that the run-time performance of the example program is further increased.

Steps taken to improve run-time performance

Adding an OpenMP Statement
Adding an OpenMP statement to the Fortran code

Performance Analysis with VTune
Setting up the performance analysis in VTune

Explaining Load Imbalance
Explaining the load imbalance and
how to change the OpenMP code

Performance Comparisions
The results: serial / with OpenMP /
with OpenMP load-balanced /
with OpenMP load-balanced and optimised binary code

Finally it is shown that the performance could be maximised by using the optimization possibilities of Intel Fortran.

The maximum speed-up on an Intel Core i7 (4 cores): 3.6 faster than the regular serialised running code.


Creating Dynamic-Link Libraries (DLLs) using Intel Visual Fortran

Materials of Training Video

The training materials contain three videos and a fully programmed example. They are provided in a .zip file (60 MB).

  • The first video (IVFDLL-part_1.mp4, 18.6 MB, duration 7:15) provides general information about dynamic-link libraries (DLLs) and explains in "Powerpoint" manner how to create them.
    Click here to download the "teaser" IVFDLL-part_1_teaser.mp4 (16803160 Bytes, 16 MB, duration 5:39).
    If the video isn't shown in your browser, you can run it in Windows Media Player, for example.
    Part 1 of training video
  • The second video (IVFDLL-part_2.mp4, 45.1 MB, duration 18:51) demonstrates by means of a practical example how a DLL is created, and also shows its use in a console application which calls functions contained in that DLL.
    Click here to download the "teaser" IVFDLL-part_2_teaser.mp4 (15400681 Bytes, 14.6 MB, duration 7:50).
    If the video isn't shown in your browser, you can run it in Windows Media Player, for example.
    Part 2 of training video and Intel Fortran / Visual Studio Project

The example is set up as a Microsoft Visual Studio Solution (.sln) which consists of three Intel Visual Fortran projects (.vfproj):

  • a dynamic-link library project (generating a .dll)
  • a static library project (generating a .lib)
  • a console application project (generating a .exe)

If you own Intel® Parallel Studio XE for Fortran, Windows, then this video will enable you to create DLLs and to use them in your Intel Visual Fortran applications.


Using the Intel® Math Kernel Library

Using the Intel Math Kernel Library

The training materials provide a video (duration: 33mins 51secs) and a Microsoft Visual Studio solution which show how to call an Intel Math Kernel Library routine to solve a system of linear equations.

Matrix A times vector x gives vector b

It is demonstrated

  • how to get started with the MKL,
  • how to set up an Intel Visual Fortran project so that the MKL modules are found by the compiler and the proper MKL libraries are linked.
  • It explains which MKL variants exist and shows the performance gain by simply using a threaded MKL library set.

Performance gain using the OpenMP variant of the MKL

The training materials are provided in a .zip file (86823640 Bytes, 82.8 MB).

SQL Database Access with Intel® Visual Fortran

Together with ForDBC, a library which provides an interface to Windows' ODBC functions, it is easily possible to access relational databases using SQL statements in your Fortran program. All you need is an Intel® Parallel Studio XE edition for Windows that contains the Intel® Fortran compiler, an ODBC driver for your database (most database vendors provide these on installation of the database) and ForDBC (there is a version free of charge that can be used until the end of the year).

Illus: ForDBC example program (T_ODBCAccessRd) in Visual Studio with Solution- & Server-Explorer

Illus: ForDBC example program (T_ODBCAccessRd) in Visual Studio with Solution- & Server-Explorer

We provide several videos that help you to get ready for to read from or to write to relational databases:


Size & Duration

ForDBC Installation
The video shows the download of ForDBC and its subsequent installation, and describes the structure and its essential elements. Then the MS/Visual Studio Solution (.sln) is launched in VS2013 which shows the automatic conversion of the VS2008 projects.
25,7 MB
8:40 min
Introduction into the Usage of ForDBC
By means of ForDBC example Visual Studio projects the structure of the Intel Visual Fortran projects (.vfproj) and their essential compiler and linker properties are shown. After the "Build" of a ForDBC example program that program's process is shown in a debug run to explain the essential elements of an ODBC program.
139 MB
53:41 min
Creating an ODBC Datasource
Some ForDBC example programs use ODBC data source names (DSN). This video demonstrates how to define a DSN.
49,1 MB
15:11 min
Installation of Microsoft ODBC Drivers
For those who don't own MS/Excel or MS/Access but who nevertheless want to test the ForDBC examples, or those who want to access Excel files (.xls, .xlsx) or Access files (.mdb, .accdb) from within a Fortran program, here you will see from where to download the free ODBC drivers (Microsoft Data Access Components - MDAC for 32-Bit, and MS/Access Runtime Distributables for 64-Bit), and how to install them.
16,7 MB
6:10 min


At present we provide the complete video and training file sets for free to customers who purchase Intel software & tools from us. Contact us if this is true for you and we send you the link to download the file set (.zip) and the password for unpacking.