製品
製品の一覧
Mathematica
Mathematica
学生エディション
Mathematica
ホームエディション
Wolfram
CDF Player
(無料ダウンロード)
CDF(計算可能ドキュメント形式)
web
Mathematica
grid
Mathematica
Wolfram
Workbench
Wolfram
SystemModeler
Wolfram
Finance Platform
Mathematica
アドオン
Wolfram|Alpha関連製品
ソリューション
ソリューションの一覧
工学
航空宇宙工学と防衛
化学工学
制御系
電気工学
画像処理
生産工学
材料科学
機械工学
オペレーションズリサーチ
光学
石油工学
バイオテクノロジーと医学
バイオインフォマティクス
医用画像処理
金融,統計,ビジネスの分析
保険数理
データの解析とマイニング
計量経済学
経済学
金融工学と数学
財務リスク管理
統計
ソフトウェア工学とコンテンツ配信
オーサリングと出版
インターフェース開発
ソフトウェア工学
Web開発
科学
天文学
バイオサイエンス
化学
環境科学
地球科学
社会・行動科学
デザイン,芸術,娯楽
ゲームデザイン・特殊効果・ジェネレーティブアート
教育
高等教育
短大・専門学校
初等・中等教育
学生
テクノロジー
CDF(計算可能ドキュメント形式)
高性能並列計算(HPC)
参照:テクノロジーガイド
ご購入
オンラインストア
他の購入方法
Volumeライセンスとサイトライセンス
販売部へのご連絡
ソフトウェア
サービス
アップグレード
トレーニング
書籍
Wolframグッズ
サポート
テクニカルサポートページ
Mathematica
ドキュメント
知識ベース
ラーニングセンター
テクニカルサービス
コミュニティ & フォーラム
トレーニング
サイトライセンスの確認
Wolframユーザポータル
会社概要
会社概要
ニュースとイベント
Wolframブログ
パートナーシップ
採用情報
Mathematica
の歴史
Stephen Wolframのホームページ
連絡先
Wolfram Webサイト
サイトの一覧
Wolfram|Alpha
デモンストレーションプロジェクト
MathWorld
Integrator
Wolfram Functions Site
Mathematica Journal
Wolfram Media
Wolfram
Tones
Wolfram Science
Stephen Wolfram
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE
DOCUMENTATION CENTER
FOR THE LATEST INFORMATION.
DOCUMENTATION CENTER SEARCH
New to
Mathematica
?
Find your learning path
»
Mathematica
>
システムインターフェースと配備
>
Mathematica システム設定
>
並列計算の設定
>
ParallelEvaluate
>
Mathematica
>
システムインターフェースと配備
>
並列計算
>
並列計算の設定
>
ParallelEvaluate
>
Mathematica
>
コアとなる言語
>
調整とデバッグ
>
並列計算
>
並列計算の設定
>
ParallelEvaluate
>
MATHEMATICA 組込みシンボル
Parallelize
ParallelTry
DistributeDefinitions
ParallelNeeds
Kernels
$KernelCount
関連項目 »
|
並列計算の設定
並列計算
並列計算におけるリソースの共有
バージョン7.0の新機能のまとめ
バージョン7.0の新機能:アルファベット順のリスト
バージョン7.0の新機能:システムインターフェースと配備
その他 »
ParallelEvaluate
ParallelEvaluate
[
expr
]
使用可能なすべての並列カーネルで式
expr
を評価し,得られた結果のリストを返す.
ParallelEvaluate
指定の並列カーネルで
expr
を評価する.
ParallelEvaluate
並列カーネル
で
expr
を評価する.
詳細
ParallelEvaluate
は属性
HoldFirst
を持つ.
カーネルは
Kernels
で返された
KernelObject
を使って,あるいは
$KernelID
が返す整数のID番号を使って指定することができる.
例題
すべて閉じる
例
(1)
各並列カーネルの一意的なID番号を入手する:
各並列カーネルのシステムプロセスIDを入手する:
各並列カーネルの一意的なID番号を入手する:
In[1]:=
Out[1]=
各並列カーネルのシステムプロセスIDを入手する:
In[2]:=
Out[2]=
スコープ
(5)
ParallelEvaluate
を使ってすべての並列カーネルの初期化を行う:
すべての並列カーネルで局所関数の定義を行う:
すべての並列カーネルの局所特性を入手する:
一つのカーネルから局所特性を入手する:
並列カーネルの局所的なソースからデータにアクセスする:
並列カーネルで計算された結果を一意的なファイルに局所的に保存する:
ファイルが書かれたことを確かめる:
一般化と拡張
(1)
カーネルオブジェクトあるいはカーネルIDでクエリするカーネルを指定する:
いくつかのカーネルにクエリを行う:
アプリケーション
(4)
すべての並列カーネルの特性を表にする:
同じコードをすべての並列カーネルで実行することでモンテカルロ(Monte-Carlo)シミュレーションを並列化する:
個々の平均を組み合せてより正確な全体としての結果にする:
大きな中間結果は個々の並列カーネルに局所的に保存する:
局所的に保存されたデータを使う:
これらの多項式のすべてが既約かどうか確かめる:
同期に使われた共有変数:
計算が放棄されるまで各カーネルにつき1つの検索ループを実行する:
特性と関係
(5)
ParallelEvaluate
は各サブカーネルで同じ評価を行う:
Parallelize
は各サブカーネルに評価の一部を分配する:
決定性計算は各並列カーネルで同じ結果になる:
ランダム性を含む計算は各並列カーネルで独立した結果になる:
SeedRandom
を設定することで同じ結果を強制する:
個々の並列カーネルには他とは異なるIDがある.このIDを使って式を一意的にすることができる:
DistributeDefinitions
は
ParallelEvaluate
を使ってすべてのカーネルに定義を伝える:
明示的な
ParallelEvaluate
も同じことを行う:
配布された定義は新たなカーネルにも既知となる:
ParallelEvaluate
の結果は既知とはならない:
ParallelNeeds
は
ParallelEvaluate
を使ってすべての並列カーネルで
Needs
を実行する:
また,すべての使用が記憶されるので,新たなカーネルにも必要なパッケージがロードされる:
ParallelEvaluate
は自動的には使用された関数の定義配布しない:
DistributeDefinitions
を使ってすべてのカーネルに定義を配布する:
高レベル関数は自動的に定義を配布する:
考えられる問題
(1)
副次的な効果は異なる並列カーネル間で使うことはできない:
共有変数を使って副次効果をサポートする:
おもしろい例題
(1)
計算が手動で放棄されるまで
が素数になるような
を求める:
関連項目
Parallelize
ParallelTry
DistributeDefinitions
ParallelNeeds
Kernels
$KernelCount
その他
並列計算の設定
並列計算
並列計算におけるリソースの共有
バージョン7.0の新機能のまとめ
バージョン7.0の新機能:アルファベット順のリスト
バージョン7.0の新機能:システムインターフェースと配備
バージョン 7 の新機能