[Openmp-commits] [openmp] r339771 - [OMPT] Remove OMPT idle callback

Joachim Protze via Openmp-commits openmp-commits at lists.llvm.org
Wed Aug 15 06:54:28 PDT 2018


Author: jprotze
Date: Wed Aug 15 06:54:28 2018
New Revision: 339771

URL: http://llvm.org/viewvc/llvm-project?rev=339771&view=rev
Log:
[OMPT] Remove OMPT idle callback

The idle callback was removed from the spec as of TR7.
This removes it from the implementation.

Patch provided by Simon Convent

Reviewers: hbae, protze.joachim

Differential Revision: https://reviews.llvm.org/D48362

Removed:
    openmp/trunk/runtime/test/ompt/misc/idle.c
Modified:
    openmp/trunk/runtime/src/include/50/ompt.h.var
    openmp/trunk/runtime/src/kmp_wait_release.h
    openmp/trunk/runtime/src/ompt-event-specific.h
    openmp/trunk/runtime/test/ompt/callback.h

Modified: openmp/trunk/runtime/src/include/50/ompt.h.var
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/src/include/50/ompt.h.var?rev=339771&r1=339770&r2=339771&view=diff
==============================================================================
--- openmp/trunk/runtime/src/include/50/ompt.h.var (original)
+++ openmp/trunk/runtime/src/include/50/ompt.h.var Wed Aug 15 06:54:28 2018
@@ -151,7 +151,6 @@
     macro (ompt_callback_flush,             ompt_callback_flush_t,             29) /* after executing flush           */ \
                                                                                                                          \
     macro (ompt_callback_cancel,            ompt_callback_cancel_t,            30) /* cancel innermost binding region */ \
-    macro (ompt_callback_idle,              ompt_callback_idle_t,              31) /* begin or end idle state         */
 
 
 
@@ -490,10 +489,6 @@ typedef void (*ompt_callback_master_t) (
     const void *codeptr_ra                /* return address of runtime call      */
 );
 
-typedef void (*ompt_callback_idle_t) (
-    ompt_scope_endpoint_t endpoint        /* endpoint of idle time               */
-);
-
 typedef enum ompt_work_type_t {
     ompt_work_loop            = 1,
     ompt_work_sections        = 2,

Modified: openmp/trunk/runtime/src/kmp_wait_release.h
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/src/kmp_wait_release.h?rev=339771&r1=339770&r2=339771&view=diff
==============================================================================
--- openmp/trunk/runtime/src/kmp_wait_release.h (original)
+++ openmp/trunk/runtime/src/kmp_wait_release.h Wed Aug 15 06:54:28 2018
@@ -142,11 +142,6 @@ static inline void __ompt_implicit_task_
         ompt_callbacks.ompt_callback(ompt_callback_implicit_task)(
             ompt_scope_end, NULL, tId, 0, ds_tid);
       }
-#if OMPT_OPTIONAL
-      if (ompt_enabled.ompt_callback_idle) {
-        ompt_callbacks.ompt_callback(ompt_callback_idle)(ompt_scope_begin);
-      }
-#endif
       // return to idle state
       this_thr->th.ompt_thread_info.state = omp_state_idle;
     } else {
@@ -266,13 +261,6 @@ final_spin=FALSE)
       pId = NULL;
       tId = &(this_thr->th.ompt_thread_info.task_data);
     }
-#if OMPT_OPTIONAL
-    if (ompt_entry_state == omp_state_idle) {
-      if (ompt_enabled.ompt_callback_idle) {
-        ompt_callbacks.ompt_callback(ompt_callback_idle)(ompt_scope_begin);
-      }
-    } else
-#endif
         if (final_spin && (__kmp_tasking_mode == tskm_immediate_exec ||
                            this_thr->th.th_task_team == NULL)) {
       // implicit task is done. Either no taskqueue, or task-team finished
@@ -453,11 +441,6 @@ final_spin=FALSE)
     }
 #endif
     if (ompt_exit_state == omp_state_idle) {
-#if OMPT_OPTIONAL
-      if (ompt_enabled.ompt_callback_idle) {
-        ompt_callbacks.ompt_callback(ompt_callback_idle)(ompt_scope_end);
-      }
-#endif
       this_thr->th.ompt_thread_info.state = omp_state_overhead;
     }
   }

Modified: openmp/trunk/runtime/src/ompt-event-specific.h
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/src/ompt-event-specific.h?rev=339771&r1=339770&r2=339771&view=diff
==============================================================================
--- openmp/trunk/runtime/src/ompt-event-specific.h (original)
+++ openmp/trunk/runtime/src/ompt-event-specific.h Wed Aug 15 06:54:28 2018
@@ -105,6 +105,4 @@
 
 #define ompt_callback_cancel_implemented ompt_event_MAY_ALWAYS_OPTIONAL
 
-#define ompt_callback_idle_implemented ompt_event_MAY_ALWAYS_OPTIONAL
-
 #endif

Modified: openmp/trunk/runtime/test/ompt/callback.h
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/test/ompt/callback.h?rev=339771&r1=339770&r2=339771&view=diff
==============================================================================
--- openmp/trunk/runtime/test/ompt/callback.h (original)
+++ openmp/trunk/runtime/test/ompt/callback.h Wed Aug 15 06:54:28 2018
@@ -414,21 +414,6 @@ on_ompt_callback_cancel(
 }
 
 static void
-on_ompt_callback_idle(
-  ompt_scope_endpoint_t endpoint)
-{
-  switch(endpoint)
-  {
-    case ompt_scope_begin:
-      printf("%" PRIu64 ": ompt_event_idle_begin:\n", ompt_get_thread_data()->value);
-      break;
-    case ompt_scope_end:
-      printf("%" PRIu64 ": ompt_event_idle_end:\n", ompt_get_thread_data()->value);
-      break;
-  }
-}
-
-static void
 on_ompt_callback_implicit_task(
     ompt_scope_endpoint_t endpoint,
     ompt_data_t *parallel_data,
@@ -732,7 +717,6 @@ int ompt_initialize(
   register_callback(ompt_callback_control_tool);
   register_callback(ompt_callback_flush);
   register_callback(ompt_callback_cancel);
-  register_callback(ompt_callback_idle);
   register_callback(ompt_callback_implicit_task);
   register_callback_t(ompt_callback_lock_init, ompt_callback_mutex_acquire_t);
   register_callback_t(ompt_callback_lock_destroy, ompt_callback_mutex_t);

Removed: openmp/trunk/runtime/test/ompt/misc/idle.c
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/test/ompt/misc/idle.c?rev=339770&view=auto
==============================================================================
--- openmp/trunk/runtime/test/ompt/misc/idle.c (original)
+++ openmp/trunk/runtime/test/ompt/misc/idle.c (removed)
@@ -1,32 +0,0 @@
-// RUN: %libomp-compile-and-run | FileCheck %s
-// REQUIRES: ompt
-#include "callback.h"
-#include <omp.h>
-
-int main()
-{
-  int x = 0;
-  #pragma omp parallel num_threads(3)
-  {
-    #pragma omp atomic
-    x++;
-  }
-  #pragma omp parallel num_threads(2)
-  {
-    #pragma omp atomic
-    x++;
-  }
-
-
-  printf("x=%d\n", x);
-
-  // Check if libomp supports the callbacks for this test.
-  // CHECK-NOT: {{^}}0: Could not register callback 'ompt_callback_idle'
-
-  // CHECK: 0: NULL_POINTER=[[NULL:.*$]]
-
-  // CHECK: {{^}}[[THREAD_ID:[0-9]+]]: ompt_event_idle_begin:
-  // CHECK: {{^}}[[THREAD_ID]]: ompt_event_idle_end:
-
-  return 0;
-}




More information about the Openmp-commits mailing list