File tree Expand file tree Collapse file tree 5 files changed +13
-12
lines changed
inst/include/legacy/armadillo_bits Expand file tree Collapse file tree 5 files changed +13
-12
lines changed Original file line number Diff line number Diff line change 1313GTAGS
1414inst /include /armadillo_bits /config.hpp.cmake
1515inst /include /current /armadillo_bits /config.hpp.cmake
16+ inst /include /legacy /armadillo_bits /config.hpp.cmake
Original file line number Diff line number Diff line change @@ -615,7 +615,7 @@ Cube<eT>::get_mat_ptr(const uword in_slice) const
615615
616616 #if defined(ARMA_USE_OPENMP)
617617 {
618- #pragma omp atomic read
618+ #pragma omp atomic read seq_cst
619619 mat_ptr = mat_ptrs[in_slice];
620620 }
621621 #elif defined(ARMA_USE_STD_MUTEX)
@@ -634,12 +634,12 @@ Cube<eT>::get_mat_ptr(const uword in_slice) const
634634 {
635635 #pragma omp critical (arma_Cube_mat_ptrs)
636636 {
637- #pragma omp atomic read
637+ #pragma omp atomic read seq_cst
638638 mat_ptr = mat_ptrs[in_slice];
639639
640640 if (mat_ptr == nullptr ) { mat_ptr = create_mat_ptr (in_slice); }
641641
642- #pragma omp atomic write
642+ #pragma omp atomic write seq_cst
643643 mat_ptrs[in_slice] = mat_ptr;
644644 }
645645 }
Original file line number Diff line number Diff line change @@ -312,7 +312,7 @@ struct state_type
312312 int out;
313313
314314 #if defined(ARMA_USE_OPENMP)
315- #pragma omp atomic read
315+ #pragma omp atomic read seq_cst
316316 out = state;
317317 #elif defined(ARMA_USE_STD_MUTEX)
318318 out = state.load ();
@@ -328,7 +328,7 @@ struct state_type
328328 operator = (const int in_state)
329329 {
330330 #if defined(ARMA_USE_OPENMP)
331- #pragma omp atomic write
331+ #pragma omp atomic write seq_cst
332332 state = in_state;
333333 #elif defined(ARMA_USE_STD_MUTEX)
334334 state.store (in_state);
Original file line number Diff line number Diff line change 2323
2424#define ARMA_VERSION_MAJOR 14
2525#define ARMA_VERSION_MINOR 6
26- #define ARMA_VERSION_PATCH 2
26+ #define ARMA_VERSION_PATCH 3
2727#define ARMA_VERSION_NAME " Caffe Mocha"
2828
2929
Original file line number Diff line number Diff line change 394394
395395
396396#if !defined(ARMA_DONT_USE_OPENMP)
397- #if (defined(_OPENMP) && (_OPENMP >= 201107 ))
397+ #if (defined(_OPENMP) && (_OPENMP >= 201307 ))
398398 #undef ARMA_USE_OPENMP
399399 #define ARMA_USE_OPENMP
400400 #endif
401401#endif
402402
403403
404- #if ( defined(ARMA_USE_OPENMP) && (!defined(_OPENMP) || (defined(_OPENMP) && (_OPENMP < 201107 ))) )
404+ #if ( defined(ARMA_USE_OPENMP) && (!defined(_OPENMP) || (defined(_OPENMP) && (_OPENMP < 201307 ))) )
405405 // OpenMP 3.0 required for parallelisation of loops with unsigned integers
406- // OpenMP 3.1 required for atomic read and atomic write
406+ // OpenMP 3.1 required for atomic read/write
407+ // OpenMP 4.0 required for seq_cst memory order clause in atomic read/write
407408 #undef ARMA_USE_OPENMP
408409 #undef ARMA_PRINT_OPENMP_WARNING
409410 #define ARMA_PRINT_OPENMP_WARNING
410411#endif
411412
412413
413414#if defined(ARMA_PRINT_OPENMP_WARNING) && !defined(ARMA_DONT_PRINT_OPENMP_WARNING)
414- #pragma message ("WARNING: use of OpenMP disabled; compiler support for OpenMP 3.1 + not detected")
415+ #pragma message ("WARNING: use of OpenMP disabled; compiler support for OpenMP 4.0 + not detected")
415416
416- #if (defined(_OPENMP) && (_OPENMP < 201107 ))
417+ #if (defined(_OPENMP) && (_OPENMP < 201307 ))
417418 #pragma message ("NOTE: your compiler has an outdated version of OpenMP")
418- #pragma message ("NOTE: consider upgrading to a better compiler")
419419 #endif
420420#endif
421421
You can’t perform that action at this time.
0 commit comments