/*  --------------------------------------------------- !
! The current OpenMP code has two purposes:             !
! (1) a simple parallel region.                         !
! (2) private and shared variables.                     !
!-------------------------------------------------------!
! Xiaoxu Guan at LSU HPC.                               !
! March 07, 2016                                        !
!----------------------------------------------------- */

#include <omp.h>
#include <stdio.h>
#include <stdlib.h>

int main () {

int id,noprocs,nothread;
#pragma omp parallel
{
  id = omp_get_thread_num();
  noprocs = omp_get_num_procs();
  nothread = omp_get_num_threads();
  printf("Hello World! from %3d %3d %3d\n", id, nothread, noprocs);
}

}
