OpenMP is a shared memory model usually used to parallelize loops by spliting up the most time consuming loops between threads.
Eg :
double precision var(1000)
C$OMP PARALLEL DO
do l=1,1000
call function1(var(l))
end do
end