NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

.NET Framework を使用するとロードが遅くなる。早くする方法は?

 こんにちは、はじめまして。

LabVIEWから.NET Framework使用を使用したところ動作が遅くなり困っているため

ご相談させてください。

 

 LabVIEWから.NETのコンストラクタノードを使ってC#で作成したオリジナルのクラス

(DLLに格納)を構築、使用するVIを作成したのですが、.NETをVIに含んだときから毎回

起動時に2分間程度のロード待ち時間が生じるようになってしまいました。

 

 C#クラスは単純なものなので構築時間が掛かるとは思えません。

DLLを探すのに時間が掛かっているのかと思いGACへ登録を行ったのですが

ロード待ち時間に変化はありませんでした。

 

 私のソフト環境は、Windows 7 + LabVIEW 2010 + Visual Studio 2010 Express です。

またマシンは Intel Core i5 + メモリ4G のHP製ワークステーションとなっています。

 

 上記の読込みが遅くなる件でもし何か心当たりのある方がいらっしゃいましたら

アドバイス頂けますようお願い致します。

0 件の賞賛
メッセージ1/8
9,932件の閲覧回数

Tomoya_fs 様

平素よりNI製品をご利用頂きまして誠に有難うございます。
日本ナショナルインスツルメンツ技術部 見目と申します。
この度は、弊社ディスカッションフォーラムをご利用頂きまして誠に有難うございます。

今回、動作が遅くなったのは、起動時とのことですが、実行時間は変わらないのでしょうか。
起動時に時間がかかっている場合、「参照」などの画面は表示されていますでしょうか。
その場合は、VIや今回使用するDLL等を同じプロジェクトに追加して頂き、同じフォルダ内で管理して頂けますでしょうか。
LabVIEWの参照経由は相対パスですので、メインVIと同じ階層フォルダに全ての関連ファイルに保存して頂けますでしょうか。

また、起動時ではなく実行時に時間がかかる場合、通常.NETを使用しても2分程かかることはございません。
従って何かしらの原因があるかと思いますので、詳細を教えて頂けますでしょうか。
また、.NETをLabVIEWで使用するサンプルもございます。
「NI サンプルファインダ」から、「.NET」と検索して下さい。

上記内容に関しましてご不明点やご質問がございましたら、
どうぞお気軽にご連絡いただけますよう宜しくお願い申し上げます。

日本ナショナルインスツルメンツ 見目 ルツ

0 件の賞賛
メッセージ2/8
9,909件の閲覧回数

日本ナショナルインスツルメンツ技術部 見目 様

 

 ご返信頂きありがとうございます。

 お尋ね頂いた事柄に関して下記に回答させて頂きます。

 

>今回、動作が遅くなったのは、起動時とのことですが、実行時間は変わらないのでしょうか。

 

 実行時間は変わり有りません。

 DLLロード時と思われるタイミングのみに待ちが発生しその後は滑らかに動作をします。


>起動時に時間がかかっている場合、「参照」などの画面は表示されていますでしょうか。

>その場合は、VIや今回使用するDLL等を同じプロジェクトに追加して頂き、同じフォルダ内で管理して頂けますでしょうか。

 「参照」などの画面表示は有りません。

 一時的にLabVIEWが”応答していない”状態になり、その後に再び動き出すと言う動作をします。

 また、メイン・サブの全VIとDLLは全て同じフォルダに入れてあり、プロジェクトにも全て登録してあります。

 

>「NI サンプルファインダ」から、「.NET」と検索して下さい。

 LabVIEW付属のexampleフォルダ内にあるCalendar.viを動作させて見ましたがそちらも少しロードに時間が掛かる気がします。

 (およそ1分[私のプログラムの半分]程度VIを開く際に待ちが発生する。私のプログラムよりは明らかに待ち時間は短い。)

 私のプログラムがより遅いのは自作DLLなのでロードの捜索順番が遅くなっている為ではないかと思いますが、

 Calendar.viの動作にこの程度の時間が掛かるのは仕様でしょうか?

 

 

 上記のほかに懸念点として私の開発マシンではLabVIEW 2010 の他に LabVIEW 8.5 が入っています。

 この古いLabVIEWがロード時に干渉してしまうと言ったことが有り得るでしょうか?

 

 以上、もしお気づきの点がありましたらアドバイス頂けます様お願い致します。

0 件の賞賛
メッセージ3/8
9,905件の閲覧回数

 

Tomoya_fs 様

日本ナショナルインスツルメンツ技術部 見目です。
ご返答頂きましてありがとうございます。

Tomoya_fs様が仰っているClendar.viは「NET Meetings Calendar.vi」のことでしょうか。
下記のディレクトリにございますVIは、時間がかかりますでしょうか。
C:\Program Files\National Instruments\LabVIEW 2010\examples\comm\dotnet\NET Meetings Calendar.vi
ロードに時間がかかる場合、一括コンパイルをするとロード時間が短縮されますでしょうか。
一括コンパイルは、LabVIEW>ツール>上級>一括コンパイルにて、
ご使用のフォルダを指定して、一括コンパイルを試みてください。

こちらで、状況は改善しますかお試し頂けますでしょうか。

上記内容に関しましてご不明点やご質問がございましたら、
どうぞお気軽にご連絡いただけますよう宜しくお願い申し上げます。

日本ナショナルインスツルメンツ 見目 ルツ
0 件の賞賛
メッセージ4/8
9,901件の閲覧回数

日本ナショナルインスツルメンツ技術部 見目様

 

 お世話になっております。

 下記に状況を記載させて頂きます。 

 

>Tomoya_fs様が仰っているClendar.viは「NET Meetings Calendar.vi」のことでしょうか。

 その通りです。

 「NET Meetings Calendar.vi」を利用しました。

>下記のディレクトリにございますVIは、時間がかかりますでしょうか。
>C:\Program Files\National Instruments\LabVIEW 2010\examples\comm\dotnet\NET Meetings Calendar.vi
 はい。時間がかかります。
 このVIを読み込むときにLabVIEW 2010のタイトルが表示され、「VIを読み込んでいます」という表示でしばらく止まります。
 その後、一瞬サブVIなどの読み込み様ダイアログが表示され、何かする間も無く「NET Meetings Calendar.vi」フロントパネルが
 表示されます。
>ロードに時間がかかる場合、一括コンパイルをするとロード時間が短縮されますでしょうか。
 一括コンパイルを行ってみましたが状況に変化はありませんでした。
 状況は以上です。

 

  LabVIEW側でデフォルトより設定を変更した項目は無いので.NET Framework側に何かの原因があるのでしょうか?
 .NET Frameworkについても設定変更は行っていませんが .NET Framework Version 4がVisual Studio 2010の
 インストール時に同時に導入されました。
 これにより参照先のライブラリ数が増えてサーチ時間が延びてしまったのではないかと推測しているのですが、
 そういったことはありえないでしょうか?
 よろしければご教示いただけますようお願い致します。
0 件の賞賛
メッセージ5/8
9,892件の閲覧回数

 

Tomoya_fs 様

日本ナショナルインスツルメンツ技術部 見目です。
ご返答頂きましてありがとうございます。

一度VIを開き、保存をして終了した後、再度、開いてみても同じ結果でしょうか。
VIは参照パスを保存しますので、一度開くとその後、早くなる事はございます。
LabVIEWのインストールの際の.NET Frameworkとの関係で、参照時間がかかるということは考えられますが、
それでも、上記理由にて、一度保存した後は時間が短縮されるはずでございます。

上記内容に関しましてご不明点やご質問がございましたら、
どうぞお気軽にご連絡いただけますよう宜しくお願い申し上げます。

日本ナショナルインスツルメンツ 見目 ルツ

 

0 件の賞賛
メッセージ6/8
9,873件の閲覧回数

日本ナショナルインスツルメンツ技術部 見目 様

 

 アドバイスいただきありがとうございます。

 また、返信遅くなりましてすみませんでした。

 

> 一度VIを開き、保存をして終了した後、再度、開いてみても同じ結果でしょうか。
> VIは参照パスを保存しますので、一度開くとその後、早くなる事はございます。
> LabVIEWのインストールの際の.NET Frameworkとの関係で、参照時間がかかるということは考えられますが、
> それでも、上記理由にて、一度保存した後は時間が短縮されるはずでございます。

 試してみたのですが結果は変わりませんでした。
 その後も調査を継続したのですが、同じ設定にセットアップした別のPCでは特に速度の問題は無く
 正常に動くことが分かりました。
 上記のことからLabVIEWの問題では無く、PC側の問題(しかもハードウェアに何かしらの異常が発生)が
 と原因で動作遅延が起こっている考えられます。
 LabVIEWの外の話となりますのでお騒がせして申し訳なかったのですがこのスレッドは閉じさせてください。
 以上、ご足労頂きどうもありがとうございました。
0 件の賞賛
メッセージ7/8
9,844件の閲覧回数

 

Tomoya_fs 様

日本ナショナルインスツルメンツ技術部 見目でございます。
いつもお世話になっております。

お忙しい中ご連絡頂き誠にありがとうございます。

他PCでは正常に動作したとのこと、大変嬉しくおもっております。
やはり、PCのスペックに依存してしまうところもございますので、恐縮ですが、新しいPCでご使用頂けますと幸いです。

この度は弊社ディスカッションフォーラムをご利用頂き誠にありがとうございました。
今後とも弊社製品を末永くご愛顧いただけますよう重ねてお願い申し上げます。

日本ナショナルインスツルメンツ 見目 ルツ

 

0 件の賞賛
メッセージ8/8
9,834件の閲覧回数