2011-01-20 9 views
6

OCamlソースコードを使用してOpenMPを使用できるかどうか知りませんか?OpenMP with OCAML

また、複数のコアを利用する並列プログラムを実行できるOCamlと互換性のある別のアプリケーション/環境で動作しますか?

はいの場合はどうですか?簡単な例がありますか?

答えて

7

現在、共有メモリのマルチプロセッシングを実行するためのOC4MC(ocaml4マルチコア)があります。私はプロジェクトを使用していませんが、かなり最近の更新があるので、私はプロジェクトがまだ進んでいると推測できます。

JOCAMLは、結合計算を実装するocamlのもう1つの同時拡張です。私もこのプロジェクトを使用していませんが、彼らのサイトはかなり最近出てきたocaml 3.12に言及するように更新されています。無視してください。コメントを参照してください。

あなたがopenMPのパラダイムから逃れることができれば、ocaml bindings for mpiがあります。私はこのプロジェクトを使用していて問題はありませんでした.MPIに精通していれば、使いやすいです。

最後に、マルチコア/パラレル処理に関連するパッケージ(ocaml hump)があります(保持されていない可能性があります)。

+2

jocamlは、あなたが「複数のコアを活用」させません - 私はOC4MCをインストールしようが、私は、どのようにその結果、このエラー持ちのocaml自体 – ygrek

+1

以上ない: のgcc -O -I ../ランタイム/ asmrunを - 私は.. /ランタイム/ byterun -Wall -D_FILE_OFFSET_BITS = 64 -D_REENTRANT -fPIC -DNATIVE_CODE -DTARGET_i386 -DSYS_linux_elf -c posix.c posix.c:関数 'caml_thread_initialize': posix.c:215:エラー: 'caml_main_thread_structposix.c:215:error:(宣言されていない各識別子は、表示される各関数に対して posix.c:215:error:1回だけ報告されます)make:*** [ posix_n.o]エラー1 'make libtを実行するとエラーが発生しますhreadsnat.a 'どうすればいいですか?ありがとうございました !! :) – Zany