私は現在CUDArtパッケージを使用しています。カスタムCUDA Cカーネルを含むPTXモジュールをロードするときにGitHubのdocumentationは、次のコードスニペットが含まれていますジュリアで「ファイナライズ」するのはどういう意味ですか?
md = CuModule("mycudamodule.ptx", false) # false means it will not be automatically finalized
(元にコメント)
私は手段を最終決定のための、まさにこのfalse
オプションを理解しようとしています私はそれを使用したくないと思っていました。私はSO(What is the right way to write a module finalize method in Julia?)でこの投稿に出会いました。 xに何のプログラムがアクセス可能な参照が存在しないときに呼び出される関数f(x)を登録
ファイナライザ(X、機能)
:それはとジュリアのドキュメントから引用しています。 xがビット型の場合、この関数の動作は予測できません。
これが何を意味しているのか、ここでのファイナライズがCUDArtの例で言及されているものと同じかどうかはわかりません。例えば、引数で関数を呼び出そうとすると意味がありませんx
その引数がプログラムにアクセスできない場合 - これはどのように可能なのでしょうか?したがって、私は明確に任意の助けをいただければ幸いです。
- を、それはジュリアに「確定」とすることを意味する私は/ CUDArt でモジュールを.ptx輸入のコンテキストでそれを使用したくないでしょう
ファイナライザを手動で実行することもできます。 'finalize(X)'を使って –