Differences between revisions 27 and 28
Revision 27 as of 2008-08-23 04:07:13
Size: 7533
Editor: MartinSebor
Comment: Corrected a typo.
Revision 28 as of 2009-09-20 23:02:56
Size: 7635
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
The table below summarizes [http://openmp.org OpenMP] and parallelization capabilities and options in popular compilers. The versions of the OpenMP specification referenced in the table can be obtained by following these links: The table below summarizes [[http://openmp.org|OpenMP]] and parallelization capabilities and options in popular compilers. The versions of the OpenMP specification referenced in the table can be obtained by following these links:
Line 3: Line 3:
 * [http://www.openmp.org/mp-documents/spec30.pdf OpenMP 3.0], May 2008
 * [http://www.openmp.org/mp-documents/spec25.pdf OpenMP 2.5], May 2005
 * [http://www.openmp.org/mp-documents/cspec20.pdf OpenMP for C/C++ 2.0], May 2002
 * [http://www.openmp.org/mp-documents/cspec10.pdf OpenMP for C/C++ 1.0], October 1998
 * [[http://www.openmp.org/mp-documents/spec30.pdf|OpenMP 3.0]], May 2008
 * [[http://www.openmp.org/mp-documents/spec25.pdf|OpenMP 2.5]], May 2005
 * [[http://www.openmp.org/mp-documents/cspec20.pdf|OpenMP for C/C++ 2.0]], May 2002
 * [[http://www.openmp.org/mp-documents/cspec10.pdf|OpenMP for C/C++ 1.0]], October 1998
Line 9: Line 9:
||<rowstyle="background-color:powderblue;font-weight:bold">COMPILER|| Released || OpenMP [[BR]] Version||OpenMP [[BR]] Option||Load [[BR]] Balancing ||Auto-Parallelization [[BR]] Option||
|| HP aCC 6.20 || Sep 2008 || [http://docs.hp.com/en/14487/parallelprog.htm 2.5] || [http://docs.hp.com/en/14487/options.htm#opt+Onoopenmp +Oopenmp] || ? || [http://docs.hp.com/en/14487/options.htm#opt+Onoautopar +Oautopar] (C/C++) ||
|| HP aCC 6.15 || Sep 2007 || [http://docs.hp.com/en/10946/parallelprog.htm 2.5] || [http://docs.hp.com/en/10946/options.htm#opt+Onoopenmp +Oopenmp] || No || [http://docs.hp.com/en/10946/options.htm#opt+Onoautopar +Oautopar] (C only) ||
|| HP aCC 3.80 || Sep 2007 || [http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/parallelprog.htm 2.0] || [http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoopenmp +Oopenmp] || ? || [http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoautopar +Oautopar], [http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoparallel +Oparallel] ||
|| HP aCC 3.70 || Jun 2006 || [http://www.docs.hp.com/en/7762/5991-4874/parallelprog.htm 2.0] || [http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoopenmp +Oopenmp] || ? || [http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoautopar +Oautopar], [http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoparallel  +Oparallel] ||
||HP aCC 3.33 || Dec 2001 || N/A || N/A || N/A || [http://www.docs.hp.com/en/1837/options.htm#option+Oautopar +Oautopar], [http://www.docs.hp.com/en/1837/options.htm#option+Oparallel +Oparallel] ||
||HP aCC 3.13 || Dec 1999 || N/A || N/A || N/A || [http://docs.hp.com/en/8/options.htm#option+Oautopar +Oautopar], [http://docs.hp.com/en/8/options.htm#option+Oparallel +Oparallel] ||
||<rowstyle="background-color:powderblue;font-weight:bold">COMPILER|| Released || OpenMP <<BR>> Version||OpenMP <<BR>> Option||Load <<BR>> Balancing ||Auto-Parallelization <<BR>> Option||
|| HP aCC 6.20 || Sep 2008 || [[http://docs.hp.com/en/14487/parallelprog.htm|2.5]] || [[http://docs.hp.com/en/14487/options.htm#opt+Onoopenmp|+Oopenmp]] || ? || [[http://docs.hp.com/en/14487/options.htm#opt+Onoautopar|+Oautopar]] (C/C++) ||
|| HP aCC 6.15 || Sep 2007 || [[http://docs.hp.com/en/10946/parallelprog.htm|2.5]] || [[http://docs.hp.com/en/10946/options.htm#opt+Onoopenmp|+Oopenmp]] || No || [[http://docs.hp.com/en/10946/options.htm#opt+Onoautopar|+Oautopar]] (C only) ||
|| HP aCC 3.80 || Sep 2007 || [[http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/parallelprog.htm|2.0]] || [[http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoopenmp|+Oopenmp]] || ? || [[http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoautopar|+Oautopar]], [[http://docs.hp.com/en/11920/HP%20aC++%20Online%20Programmer's%20Guide/options.htm#opt+Onoparallel|+Oparallel]] ||
|| HP aCC 3.70 || Jun 2006 || [[http://www.docs.hp.com/en/7762/5991-4874/parallelprog.htm|2.0]] || [[http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoopenmp|+Oopenmp]] || ? || [[http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoautopar|+Oautopar]], [[http://www.docs.hp.com/en/7762/5991-4874/options.htm#opt+Onoparallel|+Oparallel]] ||
||HP aCC 3.33 || Dec 2001 || N/A || N/A || N/A || [[http://www.docs.hp.com/en/1837/options.htm#option+Oautopar|+Oautopar]], [[http://www.docs.hp.com/en/1837/options.htm#option+Oparallel|+Oparallel]] ||
||HP aCC 3.13 || Dec 1999 || N/A || N/A || N/A || [[http://docs.hp.com/en/8/options.htm#option+Oautopar|+Oautopar]], [[http://docs.hp.com/en/8/options.htm#option+Oparallel|+Oparallel]] ||
Line 18: Line 18:
||gcc 4.3 || Mar 2008 || 2.5 || [http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/C-Dialect-Options.html#index-fopenmp-109 -fopenmp] || OpenMP || [http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/Optimize-Options.html#index-ftree_002dparallelize_002dloops-700 -ftree-parallelize-loops]`=n` ||
||gcc 4.2 || May 2007 || 2.5 || [http://gcc.gnu.org/onlinedocs/gcc-4.2.4/gcc/C-Dialect-Options.html#index-fopenmp-107 -fopenmp] || ? || N/A ||
||gcc 4.3 || Mar 2008 || 2.5 || [[http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/C-Dialect-Options.html#index-fopenmp-109|-fopenmp]] || OpenMP || [[http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/Optimize-Options.html#index-ftree_002dparallelize_002dloops-700|-ftree-parallelize-loops]]`=n` ||
||gcc 4.2 || May 2007 || 2.5 || [[http://gcc.gnu.org/onlinedocs/gcc-4.2.4/gcc/C-Dialect-Options.html#index-fopenmp-107|-fopenmp]] || ? || N/A ||
Line 22: Line 22:
||IBM XLC/C++ 10.1 || Jul 2008 || [http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/getstart/omp3.html 3.0] || [http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/compiler_ref/opt_smp.html -qsmp]`=omp` || ? || [http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/compiler_ref/opt_smp.html -qsmp]`=auto` || ||IBM XLC/C++ 10.1 || Jul 2008 || [[http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/getstart/omp3.html|3.0]] || [[http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/compiler_ref/opt_smp.html|-qsmp]]`=omp` || ? || [[http://publib.boulder.ibm.com/infocenter/comphelp/v101v121/index.jsp?topic=/com.ibm.xlcpp101.aix.doc/compiler_ref/opt_smp.html|-qsmp]]`=auto` ||
Line 24: Line 24:
||IBM XLC/C++ 8.0 || 2006 || [http://publib.boulder.ibm.com/infocenter/comphelp/v8v101/index.jsp?topic=/com.ibm.xlcpp8a.doc/getstart/overview/gs_new.htm 2.5] || `-qsmp=omp` || OpenMP || `-qsmp=auto` ||
||IBM XLC/C++ 7.0 || 2004 || [http://publib.boulder.ibm.com/infocenter/comphelp/v7v91/index.jsp?topic=/com.ibm.vacpp7a.doc/getstart/overview/new_features.htm 2.0] || `-qsmp=omp` || OpenMP || `-qsmp=auto` ||
||IBM XLC/C++ 8.0 || 2006 || [[http://publib.boulder.ibm.com/infocenter/comphelp/v8v101/index.jsp?topic=/com.ibm.xlcpp8a.doc/getstart/overview/gs_new.htm|2.5]] || `-qsmp=omp` || OpenMP || `-qsmp=auto` ||
||IBM XLC/C++ 7.0 || 2004 || [[http://publib.boulder.ibm.com/infocenter/comphelp/v7v91/index.jsp?topic=/com.ibm.vacpp7a.doc/getstart/overview/new_features.htm|2.0]] || `-qsmp=omp` || OpenMP || `-qsmp=auto` ||
Line 29: Line 29:
||Intel C++ 10.1 || Nov 2007 || 2.5 || [http://www.intel.com/software/products/compilers/docs/clin/main_cls/mergedProjects/copts_cls/common_options/option_openmp.htm -openmp] || OpenMP || [http://www.intel.com/software/products/compilers/docs/clin/main_cls/mergedProjects/copts_cls/common_options/option_parallel.htm -parallel] || ||Intel C++ 10.1 || Nov 2007 || 2.5 || [[http://www.intel.com/software/products/compilers/docs/clin/main_cls/mergedProjects/copts_cls/common_options/option_openmp.htm|-openmp]] || OpenMP || [[http://www.intel.com/software/products/compilers/docs/clin/main_cls/mergedProjects/copts_cls/common_options/option_parallel.htm|-parallel]] ||
Line 31: Line 31:
||Intel C++ 9.0 || Jun 2005 || [ftp://download.intel.com/support/performancetools/c/linux/v9/optaps_cls.pdf 2.5] || `-openmp` || OpenMP || `-parallel` || ||Intel C++ 9.0 || Jun 2005 || [[ftp://download.intel.com/support/performancetools/c/linux/v9/optaps_cls.pdf|2.5]] || `-openmp` || OpenMP || `-parallel` ||
Line 33: Line 33:
||Intel C++ 8.0 || Dec 2003 || [ftp://download.intel.com/support/performancetools/c/linux/v8/c_ug_lnx.pdf 2.0] || `-openmp` || ? || `-parallel` || ||Intel C++ 8.0 || Dec 2003 || [[ftp://download.intel.com/support/performancetools/c/linux/v8/c_ug_lnx.pdf|2.0]] || `-openmp` || ? || `-parallel` ||
Line 35: Line 35:
||Intel C++ 7.0 || Nov 2002 || [ftp://download.intel.com/support/performancetools/c/linux/c70lnx_ug.pdf 2.0] || `-openmp` || ? || `-parallel` ||
||Intel C++ 6.0 || Apr 2002 || [ftp://download.intel.com/support/performancetools/c/linux/c60lnx_ug.pdf 1.0] || `-openmp` || ? || `-parallel` ||
||Intel C++ 7.0 || Nov 2002 || [[ftp://download.intel.com/support/performancetools/c/linux/c70lnx_ug.pdf|2.0]] || `-openmp` || ? || `-parallel` ||
||Intel C++ 6.0 || Apr 2002 || [[ftp://download.intel.com/support/performancetools/c/linux/c60lnx_ug.pdf|1.0]] || `-openmp` || ? || `-parallel` ||
Line 38: Line 38:
||SGI MIPSpro 7.4.1 || || [http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/Pragmas/sgi_html/ch10.html 2.0] || `-mp` || ? || [http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/CC_PG/sgi_html/ch05.html -apo] ||
||Sun Studio 12 || Jun 2007 || [http://docs.sun.com/app/docs/doc/819-5270 2.5] || [http://docs.sun.com/app/docs/doc/819-5265/bjavr -xopenmp] || OpenMP ||[http://docs.sun.com/app/docs/doc/819-5265/bjata -xautopar] (SPARC) ||
||Sun Studio 11 || Nov 2005 || [http://docs.sun.com/source/819-3694/index.html 2.5] || [http://docs.sun.com/source/819-3688/cc_ops.app.html#pgfId-1001209 -xopenmp] || OpenMP || [http://docs.sun.com/source/819-3688/cc_ops.app.html#pgfId-1030294 -xautopar] (SPARC) ||
||Sun Studio 10 || Jan 2005 || [http://docs.sun.com/source/819-0501/index.html 2.0] || [http://docs.sun.com/source/819-0494/cc_ops.app.html#pgfId-1001209 -xopenmp] || OpenMP || [http://docs.sun.com/source/819-0494/cc_ops.app.html#pgfId-1030294 -xautopar] (SPARC) ||
||SGI MIPSpro 7.4.1 || || [[http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/Pragmas/sgi_html/ch10.html|2.0]] || `-mp` || ? || [[http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/CC_PG/sgi_html/ch05.html|-apo]] ||
||Sun Studio 12 || Jun 2007 || [[http://docs.sun.com/app/docs/doc/819-5270|2.5]] || [[http://docs.sun.com/app/docs/doc/819-5265/bjavr|-xopenmp]] || OpenMP ||[[http://docs.sun.com/app/docs/doc/819-5265/bjata|-xautopar]] (SPARC) ||
||Sun Studio 11 || Nov 2005 || [[http://docs.sun.com/source/819-3694/index.html|2.5]] || [[http://docs.sun.com/source/819-3688/cc_ops.app.html#pgfId-1001209|-xopenmp]] || OpenMP || [[http://docs.sun.com/source/819-3688/cc_ops.app.html#pgfId-1030294|-xautopar]] (SPARC) ||
||Sun Studio 10 || Jan 2005 || [[http://docs.sun.com/source/819-0501/index.html|2.0]] || [[http://docs.sun.com/source/819-0494/cc_ops.app.html#pgfId-1001209|-xopenmp]] || OpenMP || [[http://docs.sun.com/source/819-0494/cc_ops.app.html#pgfId-1030294|-xautopar]] (SPARC) ||
Line 44: Line 44:
||Visual Studio 2008 || Nov 2007 || [http://msdn.microsoft.com/en-us/library/tt15eb9t.aspx 2.0] || [http://msdn.microsoft.com/en-us/library/fw509c3b.aspx  /openmp] || ? || N/A ||
||Visual Studio 2005 || Oct 2005 || [http://msdn.microsoft.com/en-us/library/tt15eb9t(VS.80).aspx 2.0] || [http://msdn.microsoft.com/en-us/library/fw509c3b(VS.80).aspx /openmp] || ? || N/A ||
||Visual Studio 2008 || Nov 2007 || [[http://msdn.microsoft.com/en-us/library/tt15eb9t.aspx|2.0]] || [[http://msdn.microsoft.com/en-us/library/fw509c3b.aspx|/openmp]] || ? || N/A ||
||Visual Studio 2005 || Oct 2005 || [[http://msdn.microsoft.com/en-us/library/tt15eb9t(VS.80).aspx|2.0]] || [[http://msdn.microsoft.com/en-us/library/fw509c3b(VS.80).aspx|/openmp]] || ? || N/A ||

The table below summarizes OpenMP and parallelization capabilities and options in popular compilers. The versions of the OpenMP specification referenced in the table can be obtained by following these links:

OpenMP and Parallelization Support

COMPILER

Released

OpenMP
Version

OpenMP
Option

Load
Balancing

Auto-Parallelization
Option

HP aCC 6.20

Sep 2008

2.5

+Oopenmp

?

+Oautopar (C/C++)

HP aCC 6.15

Sep 2007

2.5

+Oopenmp

No

+Oautopar (C only)

HP aCC 3.80

Sep 2007

2.0

+Oopenmp

?

+Oautopar, +Oparallel

HP aCC 3.70

Jun 2006

2.0

+Oopenmp

?

+Oautopar, +Oparallel

HP aCC 3.33

Dec 2001

N/A

N/A

N/A

+Oautopar, +Oparallel

HP aCC 3.13

Dec 1999

N/A

N/A

N/A

+Oautopar, +Oparallel

Borland C++ 6

N/A

N/A

N/A

N/A

gcc 4.4

3.0

-openmp

OpenMP

-ftree-parallelize-loops=n

gcc 4.3

Mar 2008

2.5

-fopenmp

OpenMP

-ftree-parallelize-loops=n

gcc 4.2

May 2007

2.5

-fopenmp

?

N/A

gcc 4.1

Mar 2006

N/A

N/A

N/A

N/A

gcc 4.0

Apr 2005

N/A

N/A

N/A

N/A

IBM XLC/C++ 10.1

Jul 2008

3.0

-qsmp=omp

?

-qsmp=auto

IBM XLC/C++ 9.0

-qsmp=omp

OpenMP

-qsmp=auto

IBM XLC/C++ 8.0

2006

2.5

-qsmp=omp

OpenMP

-qsmp=auto

IBM XLC/C++ 7.0

2004

2.0

-qsmp=omp

OpenMP

-qsmp=auto

IBM VisualAge C++ 6.0

Jul 2002

2.0

-qsmp=omp

OpenMP

-qsmp=auto

IBM VisualAge C++ 5.0

Mar 2000

1.0

-qsmp=omp

?

?

Intel C++ 11.0

Fall 2008

3.0

-openmp

OpenMP

-parallel

Intel C++ 10.1

Nov 2007

2.5

-openmp

OpenMP

-parallel

Intel C++ 10.0

Jun 2007

2.5

-openmp

OpenMP

-parallel

Intel C++ 9.0

Jun 2005

2.5

-openmp

OpenMP

-parallel

Intel C++ 8.1

Intel C++ 8.0

Dec 2003

2.0

-openmp

?

-parallel

Intel C++ 7.1

Intel C++ 7.0

Nov 2002

2.0

-openmp

?

-parallel

Intel C++ 6.0

Apr 2002

1.0

-openmp

?

-parallel

Portland Group C++ 7.2

2008

2.5

SGI MIPSpro 7.4.1

2.0

-mp

?

-apo

Sun Studio 12

Jun 2007

2.5

-xopenmp

OpenMP

-xautopar (SPARC)

Sun Studio 11

Nov 2005

2.5

-xopenmp

OpenMP

-xautopar (SPARC)

Sun Studio 10

Jan 2005

2.0

-xopenmp

OpenMP

-xautopar (SPARC)

Sun Studio 9

Jul 2004

2.0

-xopenmp

OpenMP

-xautopar

Sun Studio 8

May 2003

?

Visual Studio 2008

Nov 2007

2.0

/openmp

?

N/A

Visual Studio 2005

Oct 2005

2.0

/openmp

?

N/A

Visual Studio 2003

Apr 2003

N/A

N/A

N/A

N/A

Visual Studio .NET

Feb 2002

N/A

N/A

N/A

N/A

Visual Studio 6.0

Jun 1998

N/A

N/A

N/A

N/A

Parallelization (last edited 2009-09-20 23:02:56 by localhost)