[LLVMdev] libiomp, not libgomp as default library linked with -fopenmp

Andrey Bokhanko andreybokhanko at gmail.com
Thu May 7 03:43:31 PDT 2015


Jack,

Thanks for testing! -- nice to see things are improving so fast. :-)

Also, perhaps it is better to start a new thread (on openmp-dev list
for sure, maybe cfe-dev as well) and put both existing and new testing
results there? -- as this thread is completely derailed of its initial
meaning.

Andrey


On Thu, May 7, 2015 at 6:12 AM, Jack Howarth
<howarth.mailing.lists at gmail.com> wrote:
> FYI,  at r236592 with...
>
> http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20150504/128555.html
> http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20150504/128561.html
> http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20150504/128567.html
>
> llvm 3.7svn now exceeds clang-omp 3.5 in the results of the
> OpenMP3.1_Validation test suite.
>
> #Tested Directive         t ct ot oct
> has_openmp                 100 100 100 100
> omp_atomic                 100 100 100 100
> omp_barrier               100 100 100 100
> omp_critical               100 100 100 100
> omp_flush                 100 100 100 100
> omp_for_firstprivate       100 100 100 100
> omp_for_lastprivate       100 100 100 70
> omp_for_ordered           100 100 100 100
> omp_for_private           100 100 100 100
> omp_for_reduction         100 100 100 100
> omp_for_schedule_dynamic   100 100 100 100
> omp_for_schedule_guided   100 100 100 100
> omp_for_schedule_static   100 100 100 100
> omp_for_nowait             100 100 100 100
> omp_get_num_threads       100 100 100 100
> omp_get_wtick             100 100 100 100
> omp_get_wtime             100 100 100 100
> omp_in_parallel           100 100 100 100
> omp_lock                   100 100 100 100
> omp_master                 100 100 100 100
> omp_nest_lock             100 100 100 100
> omp_parallel_copyin       100 100 100 100
> omp_parallel_for_firstprivate 100 100 100 100
> omp_parallel_for_lastprivate 100 100 100 100
> omp_parallel_for_ordered   100 100 100 100
> omp_parallel_for_private   100 100 100 100
> omp_parallel_for_reduction 100 100 100 100
> omp_parallel_num_threads   100 100 100 100
> omp_parallel_sections_firstprivate 100 100 100 100
> omp_parallel_sections_lastprivate 100 100 100 100
> omp_parallel_sections_private 100 100 100 100
> omp_parallel_sections_reduction 100 100 100 90
> omp_section_firstprivate   100 100 100 100
> omp_section_lastprivate   100 100 100 100
> omp_section_private       100 100 100 100
> omp_sections_reduction     100 100 100 100
> omp_sections_nowait       100 100 100 100
> omp_parallel_for_if       100 100 100 100
> omp_single_copyprivate     100 100 100 100
> omp_single_nowait         100 100 100 100
> omp_single_private         100 100 100 100
> omp_single                 100 100 100 100
> omp_test_lock             100 100 100 100
> omp_test_nest_lock         100 100 100 100
> omp_threadprivate         100 100 - -
> omp_parallel_default       100 100 100 100
> omp_parallel_shared       100 100 100 100
> omp_parallel_private       100 100 100 100
> omp_parallel_firstprivate 100 100 100 100
> omp_parallel_if           100 100 100 100
> omp_parallel_reduction     100 100 100 100
> omp_for_collapse           100 100 100 100
> omp_master_3               100 100 100 100
> omp_task                   100 100 100 100
> omp_task_if               100 100 100 100
> omp_task_untied           0 - 0 -
> omp_task_shared           100 100 100 100
> omp_task_private           100 100 100 100
> omp_task_firstprivate     100 100 100 100
> omp_taskwait               100 100 100 100
> omp_taskyield             100 95 10 -
> omp_task_final             0 - 0 -
>
>
> Summary:
> S Number of tested Open MP constructs: 62
> S Number of used tests:                123
> S Number of failed tests:              5
> S Number of successful tests:          118
> S + from this were verified:           115
>
> Normal tests:
> N Number of failed tests:              2
> N + from this fail compilation:        0
> N + from this timed out                0
> N Number of successful tests:          60
> N + from this were verified:           59
>
> Orphaned tests:
> O Number of failed tests:              3
> O + from this fail compilation:        0
> O + from this timed out                0
> O Number of successful tests:          58
> O + from this were verified:           56
>
> On Thu, Apr 30, 2015 at 3:10 PM, Jack Howarth
> <howarth.mailing.lists at gmail.com> wrote:
>>
>> For comparison, the OpenMP3.1_Validation results on x86_64-apple-darwin14
>> for original clang-omp 3.5.2 are...
>>
>> #Tested Directive         t ct ot oct
>> has_openmp                 100 100 100 100
>> omp_atomic                 100 100 100 100
>> omp_barrier               100 100 100 100
>> omp_critical               100 100 100 100
>> omp_flush                 100 100 100 100
>> omp_for_firstprivate       100 100 100 100
>> omp_for_lastprivate       100 100 100 80
>> omp_for_ordered           100 100 100 100
>> omp_for_private           100 100 100 100
>> omp_for_reduction         100 100 100 100
>> omp_for_schedule_dynamic   100 100 100 100
>> omp_for_schedule_guided   35 - 10 -
>> omp_for_schedule_static   100 100 100 100
>> omp_for_nowait             100 100 100 100
>> omp_get_num_threads       100 100 100 100
>> omp_get_wtick             100 100 100 100
>> omp_get_wtime             100 100 100 100
>> omp_in_parallel           100 100 100 100
>> omp_lock                   100 100 100 100
>> omp_master                 100 100 100 100
>> omp_nest_lock             100 100 100 100
>> omp_parallel_copyin       100 100 100 100
>> omp_parallel_for_firstprivate 100 100 100 100
>> omp_parallel_for_lastprivate 100 100 100 100
>> omp_parallel_for_ordered   100 100 100 100
>> omp_parallel_for_private   100 100 100 100
>> omp_parallel_for_reduction 100 100 100 100
>> omp_parallel_num_threads   100 100 100 100
>> omp_parallel_sections_firstprivate 100 100 100 100
>> omp_parallel_sections_lastprivate 100 100 100 100
>> omp_parallel_sections_private 100 100 100 100
>> omp_parallel_sections_reduction 100 95 100 90
>> omp_section_firstprivate   100 100 100 100
>> omp_section_lastprivate   100 100 100 100
>> omp_section_private       100 100 100 100
>> omp_sections_reduction     100 100 100 100
>> omp_sections_nowait       100 100 100 100
>> omp_parallel_for_if       100 100 100 100
>> omp_single_copyprivate     100 100 100 100
>> omp_single_nowait         100 100 100 100
>> omp_single_private         100 100 100 100
>> omp_single                 100 100 100 100
>> omp_test_lock             100 100 100 100
>> omp_test_nest_lock         100 100 100 100
>> omp_threadprivate         100 100 - -
>> omp_parallel_default       100 100 100 100
>> omp_parallel_shared       100 100 100 100
>> omp_parallel_private       100 100 100 100
>> omp_parallel_firstprivate 100 100 100 100
>> omp_parallel_if           100 100 100 100
>> omp_parallel_reduction     100 100 100 100
>> omp_for_collapse           100 100 100 100
>> omp_master_3               100 100 100 100
>> omp_task                   100 100 100 100
>> omp_task_if               100 100 100 100
>> omp_task_untied           0 - 0 -
>> omp_task_shared           100 100 100 100
>> omp_task_private           100 100 100 100
>> omp_task_firstprivate     100 100 100 100
>> omp_taskwait               100 100 100 100
>> omp_taskyield             100 100 10 -
>> omp_task_final             0 - 0 -
>>
>>
>> Summary:
>> S Number of tested Open MP constructs: 62
>> S Number of used tests:                123
>> S Number of failed tests:              7
>> S Number of successful tests:          116
>> S + from this were verified:           113
>>
>> Normal tests:
>> N Number of failed tests:              3
>> N + from this fail compilation:        0
>> N + from this timed out                0
>> N Number of successful tests:          59
>> N + from this were verified:           58
>>
>> Orphaned tests:
>> O Number of failed tests:              4
>> O + from this fail compilation:        0
>> O + from this timed out                0
>> O Number of successful tests:          57
>> O + from this were verified:           55
>>
>> and for current llvm/cfe trunk with the two outstanding OPENMP patches
>> applied are...
>>
>> #Tested Directive         t ct ot oct
>> has_openmp                 100 100 100 100
>> omp_atomic                 100 100 100 100
>> omp_barrier               100 100 100 100
>> omp_critical               100 100 100 95
>> omp_flush                 100 100 100 95
>> omp_for_firstprivate       100 100 100 100
>> omp_for_lastprivate       100 100 100 95
>> omp_for_ordered           100 100 100 100
>> omp_for_private           100 100 100 100
>> omp_for_reduction         0 - 0 -
>> omp_for_schedule_dynamic   100 100 100 100
>> omp_for_schedule_guided   100 100 100 100
>> omp_for_schedule_static   100 100 100 100
>> omp_for_nowait             100 100 100 100
>> omp_get_num_threads       100 100 100 100
>> omp_get_wtick             100 100 100 100
>> omp_get_wtime             100 100 100 100
>> omp_in_parallel           100 100 100 100
>> omp_lock                   100 100 100 100
>> omp_master                 100 100 100 100
>> omp_nest_lock             100 100 100 100
>> omp_parallel_copyin       100 100 100 100
>> omp_parallel_for_firstprivate 100 100 100 100
>> omp_parallel_for_lastprivate 100 100 100 100
>> omp_parallel_for_ordered   100 100 100 100
>> omp_parallel_for_private   100 100 100 100
>> omp_parallel_for_reduction 0 - 0 -
>> omp_parallel_num_threads   100 100 100 100
>> omp_parallel_sections_firstprivate 100 100 100 100
>> omp_parallel_sections_lastprivate 100 100 100 100
>> omp_parallel_sections_private 100 100 100 100
>> omp_parallel_sections_reduction 0 - 0 -
>> omp_section_firstprivate   100 100 100 100
>> omp_section_lastprivate   100 100 100 100
>> omp_section_private       100 100 100 100
>> omp_sections_reduction     0 - 0 -
>> omp_sections_nowait       100 100 100 100
>> omp_parallel_for_if       100 100 100 100
>> omp_single_copyprivate     100 100 100 100
>> omp_single_nowait         100 100 100 100
>> omp_single_private         100 100 100 100
>> omp_single                 100 100 100 100
>> omp_test_lock             100 100 100 100
>> omp_test_nest_lock         100 100 100 100
>> omp_threadprivate         100 100 - -
>> omp_parallel_default       100 100 100 100
>> omp_parallel_shared       100 100 100 100
>> omp_parallel_private       100 100 100 100
>> omp_parallel_firstprivate 100 100 100 100
>> omp_parallel_if           100 100 100 100
>> omp_parallel_reduction     0 - 0 -
>> omp_for_collapse           100 100 100 100
>> omp_master_3               100 100 100 100
>> omp_task                   100 100 100 100
>> omp_task_if               100 100 100 100
>> omp_task_untied           0 - 0 -
>> omp_task_shared           100 100 100 100
>> omp_task_private           100 100 100 100
>> omp_task_firstprivate     100 100 100 100
>> omp_taskwait               100 100 100 100
>> omp_taskyield             100 100 10 -
>> omp_task_final             0 - 0 -
>>
>>
>> Summary:
>> S Number of tested Open MP constructs: 62
>> S Number of used tests:                123
>> S Number of failed tests:              15
>> S Number of successful tests:          108
>> S + from this were verified:           105
>>
>> Normal tests:
>> N Number of failed tests:              7
>> N + from this fail compilation:        0
>> N + from this timed out                0
>> N Number of successful tests:          55
>> N + from this were verified:           55
>>
>> Orphaned tests:
>> O Number of failed tests:              8
>> O + from this fail compilation:        0
>> O + from this timed out                0
>> O Number of successful tests:          53
>> O + from this were verified:           50
>
>



More information about the llvm-dev mailing list