Example #1
0
int main(int argc, char *argv[])
{
  TSUITE_INIT(argc, argv);

  ASSERT (gaspi_proc_init(GASPI_BLOCK));

  gaspi_rank_t P, myrank;

  ASSERT (gaspi_proc_num(&P));
  ASSERT (gaspi_proc_rank(&myrank));

  ASSERT (gaspi_segment_create(0, _4GB, GASPI_GROUP_ALL, GASPI_BLOCK, GASPI_MEM_INITIALIZED));
  ASSERT (gaspi_barrier(GASPI_GROUP_ALL, GASPI_BLOCK));

  const gaspi_size_t msgSize = 1;
  if(myrank == 0)
    {
      gaspi_rank_t n;
      for(n = 1; n < P; n++)
	EXPECT_TIMEOUT(gaspi_passive_send(0, 0, n, msgSize, 2000));
    }
  
  ASSERT (gaspi_barrier(GASPI_GROUP_ALL, GASPI_BLOCK));
  ASSERT (gaspi_proc_term(GASPI_BLOCK));

  return EXIT_SUCCESS;
}
Example #2
0
int main(int argc, char *argv[])
{
  gaspi_group_t g;
  gaspi_rank_t  nprocs, myrank;
  gaspi_number_t gsize;

  TSUITE_INIT(argc, argv);

  ASSERT (gaspi_proc_init(GASPI_BLOCK));

  ASSERT(gaspi_proc_num(&nprocs));
  ASSERT(gaspi_proc_rank(&myrank));

  ASSERT (gaspi_group_create(&g));
  ASSERT(gaspi_group_size(g, &gsize));
  assert((gsize == 0));

  gaspi_rank_t i;
  for(i = 0; i < nprocs; i++)
    {
      ASSERT(gaspi_group_add(g, i));
    }

  ASSERT(gaspi_group_size(g, &gsize));
  assert((gsize == nprocs));

  ASSERT(gaspi_group_commit(g, GASPI_BLOCK));

  //loop barrier
  int j;
  for (j = 0; j < ITERATIONS; j++)
    {
      ASSERT (gaspi_barrier(g, GASPI_BLOCK));

      /* with timeout */
      ASSERT (gaspi_barrier(g, nprocs * 1000));
    }

  for (j = 0; j < ITERATIONS; j++)
    {
      ASSERT (gaspi_barrier(GASPI_GROUP_ALL, GASPI_BLOCK));
    }

  //with timeout
  if(myrank % 2 == 0)
    {
      sleep(2);
    }
  else
    {
      EXPECT_TIMEOUT (gaspi_barrier(GASPI_GROUP_ALL, 20));
    }

  ASSERT (gaspi_barrier(GASPI_GROUP_ALL, GASPI_BLOCK));

  ASSERT (gaspi_proc_term(GASPI_BLOCK));

  return EXIT_SUCCESS;
}
Example #3
0
int main(int argc, char *argv[])
{
  gaspi_rank_t nprocs, myrank;

  TSUITE_INIT(argc, argv);

  ASSERT (gaspi_proc_init(GASPI_BLOCK));

  ASSERT(gaspi_proc_num(&nprocs));
  ASSERT(gaspi_proc_rank(&myrank));

  if(myrank % 2 == 0)
    sleep(2);
  else
    EXPECT_TIMEOUT (gaspi_barrier(GASPI_GROUP_ALL, 20));

  ASSERT (gaspi_barrier(GASPI_GROUP_ALL, GASPI_BLOCK));

  ASSERT (gaspi_proc_term(GASPI_BLOCK));

  return EXIT_SUCCESS;
}