brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.6 KiB · 450faa1 Raw
106 lines · c
1// clang-format off2// RUN: %libomptarget-compile-run-and-check-generic3// REQUIRES: ompt4// REQUIRES: gpu5// clang-format on6 7/*8 * Example OpenMP program that shows that map-EMI callbacks are not supported.9 */10 11#include <assert.h>12#include <omp.h>13#include <stdio.h>14 15#include "callbacks.h"16#include "register_emi_map.h"17 18int main() {19  int N = 100000;20 21  int a[N];22  int b[N];23 24  int i;25 26  for (i = 0; i < N; i++)27    a[i] = 0;28 29  for (i = 0; i < N; i++)30    b[i] = i;31 32#pragma omp target parallel for33  {34    for (int j = 0; j < N; j++)35      a[j] = b[j];36  }37 38#pragma omp target teams distribute parallel for39  {40    for (int j = 0; j < N; j++)41      a[j] = b[j];42  }43 44  int rc = 0;45  for (i = 0; i < N; i++)46    if (a[i] != b[i]) {47      rc++;48      printf("Wrong value: a[%d]=%d\n", i, a[i]);49    }50 51  if (!rc)52    printf("Success\n");53 54  return rc;55}56 57// clang-format off58/// CHECK: 0: Could not register callback 'ompt_callback_target_map_emi'59/// CHECK: Callback Init:60/// CHECK: Callback Load:61/// CHECK: Callback Target EMI: kind=ompt_target endpoint=ompt_scope_begin62/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_alloc63/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_alloc64/// CHECK-NOT: dest=(nil)65/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_to_device66/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_to_device67/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_alloc68/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_alloc69/// CHECK-NOT: dest=(nil)70/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_to_device71/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_to_device72/// CHECK: Callback Submit EMI: endpoint=ompt_scope_begin req_num_teams=173/// CHECK: Callback Submit EMI: endpoint=ompt_scope_end req_num_teams=174/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_from_device75/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_from_device76/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_from_device77/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_from_device78/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_delete79/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_delete80/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_delete81/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_delete82/// CHECK: Callback Target EMI: kind=ompt_target endpoint=ompt_scope_end83/// CHECK: Callback Target EMI: kind=ompt_target endpoint=ompt_scope_begin84/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_alloc85/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_alloc86/// CHECK-NOT: dest=(nil)87/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_to_device88/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_to_device89/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_alloc90/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_alloc91/// CHECK-NOT: dest=(nil)92/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_to_device93/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_to_device94/// CHECK: Callback Submit EMI: endpoint=ompt_scope_begin req_num_teams=095/// CHECK: Callback Submit EMI: endpoint=ompt_scope_end req_num_teams=096/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_from_device97/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_from_device98/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_transfer_from_device99/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_transfer_from_device100/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_delete101/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_delete102/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_begin optype=ompt_target_data_delete103/// CHECK: Callback DataOp EMI: endpoint=ompt_scope_end optype=ompt_target_data_delete104/// CHECK: Callback Target EMI: kind=ompt_target endpoint=ompt_scope_end105/// CHECK: Callback Fini:106