"-Qopenmp_report1 = display diagnostics indicating loops, regions, and sections successfully parallelized (Default).
-Qopenmp_report2 = same as -Qopenmp_report1 plus diagnostics indicating master construct, single construct, critical sections, order construct, atomic directive, etc. successfully handled."
我对你下面这两句中的successfully理解不清,难道icc编译器有时候不会根据openmp directive进行处理,从而导致某些情况下失败?
"-Qopenmp_report1 = display diagnostics indicating loops, regions, and sections successfully parallelized (Default).
-Qopenmp_report2 = same as -Qopenmp_report1 plus diagnostics indicating master construct, single construct, critical sections, order construct, atomic directive, etc. successfully handled."
Arguments
n
Is a value denoting which diagnostic messages to report. Possible values are:
0
Tells the auto-parallelizer to report no diagnostic information.
1
Tells the auto-parallelizer to report diagnostic messages for loops successfully auto-parallelized. The compiler also issues a "LOOP AUTO-PARALLELIZED" message for parallel loops.
2
Tells the auto-parallelizer to report diagnostic messages for loops successfully and unsuccessfully auto-parallelized.
3
Tells the auto-parallelizer to report the same diagnostic messages specified by 2 plus additional information about any proven or assumed dependencies inhibiting auto-parallelization (reasons for not parallelizing).
The -Qopenmp_report{0|1|2} option controls the OpenMP parallelizer's diagnostic levels 0, 1, or 2 as follows:
-Qopenmp_report0 = no diagnostic information is displayed.
-Qopenmp_report1 = display diagnostics indicating loops, regions, and sections successfully parallelized (Default).
-Qopenmp_report2 = same as -Qopenmp_report1 plus diagnostics indicating master construct, single construct, critical sections, order construct, atomic directive, etc. successfully handled.
另外,通过ICC后,你可以用Intel Parallel Debugger Extension来深入调试你的OpenMP程序,它可以:
1、检测 data racing
2、检测 函数重入
3、提供对OpenMP的强大支持,包括:
1) Serialize OpenMP* threaded application execution on the fly
2) Insight into thread groups, barriers, locks, wait lists, &c.