! NOTE: Omni cannot compile this program! program main implicit none include 'omp_lib.h' integer :: k, i_am integer, dimension(0:4) :: v(0:4) data v / -1, -1, -1, -1, -1 / ! Max number of procs and threads. print*, "num_procs = ", omp_get_num_procs() print*, "max_threads = ", omp_get_max_threads() ! I have given the following unix-command: ! setenv OMP_NUM_THREADS 4. ! Set no. of threads dynamically. call omp_set_num_threads(4) ! A parallel section. !$OMP parallel private(i_am) shared(v) !$OMP single print*, "num_threads = ", omp_get_num_threads() !$OMP end single i_am = omp_get_thread_num() v(i_am) = i_am !$OMP end parallel print*, "v = ", v !A parallel do-loop. !$OMP parallel do private(k) shared(v) do k = 0, 4 v(k) = k * k end do !$OMP end parallel do print*, "v = ", v end program main