製品
製品の一覧
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 システム設定
>
並列計算の設定
>
DistributeDefinitions
>
Mathematica
>
システムインターフェースと配備
>
並列計算
>
並列計算の設定
>
DistributeDefinitions
>
Mathematica
>
コアとなる言語
>
調整とデバッグ
>
並列計算
>
並列計算の設定
>
DistributeDefinitions
>
MATHEMATICA 組込みシンボル
ParallelNeeds
ParallelEvaluate
Parallelize
SetSharedVariable
SetSharedFunction
DistributedContexts
関連項目 »
|
データの並列性
並列計算の設定
並列計算
並列計算におけるリソースの共有
バージョン7.0の新機能のまとめ
バージョン7.0の新機能:アルファベット順のリスト
バージョン7.0の新機能:システムインターフェースと配備
バージョン8.0の新機能:コアとなる言語
バージョン8.0の新機能:システムインターフェースと配備
その他 »
DistributeDefinitions
DistributeDefinitions
シンボル
のすべての定義をすべての並列カーネルに配布する.
DistributeDefinitions
指定のコンテキスト内のすべてのシンボルの定義を配布する.
詳細
DistributeDefinitions
は,事実上,自身の値だけでなく下向きの値,上向きの値,その他のタイプの値を含む記号
の値と属性のすべての割当てに
ParallelEvaluate
を適用する.
DistributeDefinitions
は記号
の定義に現れる任意の記号に繰り返し適用される.
DistributeDefinitions
には
HoldAll
という属性がある.
DistributeDefinitions
は,事実上,記号
の定義を「登録」し,起動されたすべての新規並列カーネルに自動的に配布されるようにする.
任意の式
expr
についての
DistributeDefinitions
[
expr
]
は
expr
中のすべての記号の定義を配布する.
例題
すべて閉じる
例
(1)
サブカーネルで使われる関数をまず配布する必要がある:
高レベルの並列コマンドは自動的に必要な定義を配布する:
サブカーネルで使われる関数をまず配布する必要がある:
In[1]:=
In[2]:=
In[3]:=
Out[3]=
高レベルの並列コマンドは自動的に必要な定義を配布する:
In[4]:=
In[5]:=
Out[5]=
スコープ
(5)
変数の値:
関数:
上向きの値:
属性:
現行コンテキストのすべての記号の定義を配布する:
一般化と拡張
(1)
配布された定義が依存する補助定義も自動的に配布される:
特性と関係
(6)
DistributeDefinitions
はそれまでの値や存在する属性をすべて上書きする:
関数をクリアし,それを再配布することで,配布された定義を取り除く:
DistributeDefinitions
は
ParallelEvaluate
を使ってすべてのカーネルに定義を送る:
明示的な
ParallelEvaluate
も同じことをする:
配布された定義は新たなカーネルにも引き継がれるが,
ParallelEvaluate
の効果は引き継がれない:
より高レベルの並列コマンドに関しては,インタラクティブに定義された関数が自動的に配布される:
手動で定義を配布し自動配布を無効にする:
サブカーネルのみで値のある記号は配布されない:
サブカーネル上の値はそのまま残される:
記号に局所的な値が与えられるやいなや,その値は次の並列計算で配布される:
ParallelNeeds
を使ってすべての並列カーネルにパッケージを設定する:
DistributeDefinitions
を使ってユーザ自身の定義を設定する:
考えられる問題
(3)
並列カーネルにとって既知ではない関数が使われると評価が連続的に行われかねない:
すべての並列カーネルで関数を定義する:
これで,この関数が並列カーネルで評価されるようになった:
DistributeDefinitions
を使っても定義の自動配布は抑えられない:
定義を変更する:
変更された定義は自動的に配布される:
定義の自動配布を抑える:
サブカーネル上だけで定義された記号は自動的には配布されない:
内部状態を有するある種のオブジェクトは配布されると効率的に働かないことがある:
よりよいパフォーマンスのためにそのようなオブジェクトをすべてのサブカーネルで再計算する:
おもしろい例題
(1)
ガウス素数を素早く可視化する:
関連項目
ParallelNeeds
ParallelEvaluate
Parallelize
SetSharedVariable
SetSharedFunction
DistributedContexts
その他
データの並列性
並列計算の設定
並列計算
並列計算におけるリソースの共有
バージョン7.0の新機能のまとめ
バージョン7.0の新機能:アルファベット順のリスト
バージョン7.0の新機能:システムインターフェースと配備
バージョン8.0の新機能:コアとなる言語
バージョン8.0の新機能:システムインターフェースと配備
バージョン 7 の新機能 | バージョン 8 での修正機能