Из вашего краткого и немного запутанного объяснения вашего проекта я не вижу никакой необходимости вообще использовать OpenMP. Все, что вы хотите сделать, может быть сделано полностью в Java, которая имеет хорошие (достаточные) возможности для параллельного программирования.
OpenMP был разработан для совершенно другого типа «параллельной» программы - действительно для параллельных программ; по сути, он предназначен для распределения итераций цикла между процессорами. Это не очень подходит для вашей проблемы.
Если вам сказали, что вы должны использовать Java и OpenMP, то я полагаю, что вы должны. Если это так, иди с JaMP. Только если кто-то приставит пистолет к твоей голове, ты должен идти по пути Java + JNI + C / C +++ OpenMp.