LabVIEW環境のコード更新への反応が遅い

更新しました Mar 13, 2026

使用製品

ソフトウェア

  • LabVIEW

問題

LabVIEWに大きなVIをロードすると、LabVIEWの応答が遅くなります。フロントパネルまたはブロックダイアグラム上の項目を移動すると ( Ctrlキーを押しながらドラッグするかどうかに関係なく)、移動する前に 1 秒間ハングするか、非常にゆっくりと移動します。ブロックダイアグラムを開いたときに、ダイアグラムを操作するまで一部のワイヤが表示されないことがあります。 LabVIEW 以外ではこのような遅い動作は見られません。どうすればパフォーマンスを向上させることができますか?

解決策

この問題は、モニターの高解像度設定と多数の色の使用が原因である可能性があります。フロントパネルの更新が多数ある大規模な VI も、この動作を引き起こす可能性があります。マウスを移動してフロントパネル上のオブジェクトを選択すると、LabVIEWは更新するためにフロントパネルを再描画する必要があります。 LabVIEWはダブルバッファリングを使用して、画面の更新をスムーズかつ迅速に表示します。このプロセスには、更新が行われるオフスクリーン バッファ ウィンドウにウィンドウの内容を描画し、新しいウィンドウの内容をフロント パネルにコピーすることが含まれます。ウィンドウの内容をコピーすると、解像度と色深度が増加するにつれて、メモリの消費量が増加します。

トラブルシューティングには 3 つの主な方法があります。

  1. コンピュータの設定
  2. LabVIEWの設定
  3. コードアーキテクチャ

VI のサイズや保持するサブ VI の数に関係なく、VI でこの動作が発生する場合は、コンピュータまたは LabVIEWの設定から始めてください。これが大規模な VIでのみ発生する場合は、コードアーキテクチャの問題が原因である可能性が高くなります。

 

コンピュータの設定

この問題を解決するには、まず解像度と色の設定を変更してみてください。コンピューターを解像度 800 x 600 ピクセル、256 色、リフレッシュ レート 60 Hzに設定してみてください。次に、そこから解像度とカラー表示設定を上げます。画面解像度を調整する方法については、OSの製造元に確認してください (例: Microsoft の Windows 10 の画面解像度の変更)。


もう 1つの解決策として考えられるのは、PCの「ハードウェアアクセラレーション」設定を変更することです。この設定を調整する方法については、OS の製造元に問い合わせてください。

  • Windows 7 の場合、デスクトップを右クリック >>画面解像度 >> 詳細設定 >> トラブルシューティング >> 設定の変更。ここから、ハードウェア アクセラレーション設定を調整できます。より望ましい動作が得られるまで加速レベルを下げながら、スライダーを試してみることをお勧めします。新しい設定を有効にするには、コンピュータの再起動が必要になる場合があります。

 

LabVIEWの設定

次の提案は、フロント パネルの「スムーズ アップデート」設定を無効にしてみることです。

LabVIEW 2010以降の場合:

  • フロントパネルでグラフを右クリックし、 詳細設定 >> スムーズな更新を選択します。注: この方法はグラフに対してのみ機能し、チャートでは機能しません。
  • 保存される取り消しの数を減らすと、メモリをいくらか解放できます。デフォルトは99回の取り消しで、LabVIEWはメモリを使用してこれらの取り消しを保存します。
  • 元に戻すレベルを変更するには、 ツール >> オプションに移動します。をクリックし、環境カテゴリを選択します。 VIごとの最大取り消しステップを約10に変更して、メモリ使用量を制限しながらも元に戻す機能を維持します。

 

コードアーキテクチャ

  • 編集速度が遅い場合のもう 1つの解決策は、適切な VIメモリ管理です。これには、大きなVIをサブVIに分割すること、グローバル変数とローカル変数の使用を制限すること、フロントパネルに重複する制御器がないことを確認することが含まれます。 VIのメモリ使用量を確認するには、ファイル>> VIプロパティをクリックします。カテゴリを「メモリ使用」に変更します。

 

  • ブロックダイアグラムから、サブVIとなるコードを選択し、編集 >> 選択範囲をサブVIに変換をクリックすることで、既存のコードからサブVIを作成できますコードはサブVIアイコンに置き換えられます。アイコンをダブルクリックするとサブVIを編集できます。既存のコードからサブVIを作成する方法の詳細については、 「LabVIEWサブVIの作成と構成」を参照してください。

 

  • ブロックダイアグラムに特定のサブVIを配置すると開発環境の動作が遅くなる場合は、サブVIの依存関係をチェックして、動作の原因となっている不要な参照/依存関係があるかどうかを確認してください。これらの不要な依存関係を特定したら、それらを削除し、サブVIを保存して、動作に変化があるかどうかを確認します。

 

  • トップレベルVIを開いてスタンドアロンVIとして編集すると、編集の遅れを減らすことができます。これを行うには、LabVIEWを開き、トップレベルVIをプロジェクトからではなくスタンドアロンで開き、トップレベルVIを保存して、プロジェクトから通常の編集を続行します。

 

  • フロントパネルのシルバーのコントロールとインジケーターは、クラシックのものよりも多くのメモリを消費します。これを変更するには、ファイル >> VI プロパティ >> エディタ オプションに移動します。エディター オプションで、コントロール スタイルをシルバーに変更します。右クリックして「置換」を選択することで、制御器と表示器を個別に変更することもできます。

 

  • 複数のグラフなどの大きな制御器または表示器にデフォルト値がある場合は、オブジェクトをクリアして、クリアまたは空の状態をデフォルトにしてみてください。値をデフォルトにするには、右クリックして、 データ操作 >> 現在の値をデフォルト設定にするを選択しますグラフをクリアするには、グラフを右クリックし、 データ操作 >> グラフをクリアを選択します次に、クリアされたグラフをデフォルトにします。これにより、VI 内のメモリの一部が解放されます。
  • プロジェクトが元々以前のバージョンで書かれており、現在のバージョンまで一括コンパイルされていない場合、それが速度低下の原因となっている可能性があります。トップレベルVIから、ファイル >> すべて保存に移動してすべて保存を実行しますまた、開発環境の速度低下が見られるプロジェクトに対して一括コンパイルを実行してみてください

 

  • ブロックダイアグラムのサイズは、VI のパフォーマンスに大きな影響を与える可能性があります。ブロック図のサイズを適度に小さくしておくことをお勧めします。ベストプラクティスは、単一の VI をすべて 1 つの画面に収まるようにし、コード内のすべてを表示するために必要なスクロールを最小限にすることです。大量のスクロールを必要とする非常に大きなダイアグラムは、VI のパフォーマンスに悪影響を与える可能性があります。

追加情報

これらの解決策がうまくいかない場合は、ビデオ カード ドライバーまたはカード自体をアップグレードすることを検討してください。ビデオ カード ドライバーの最新バージョンは、各メーカーの Webサイトで見つけることができます。これは、フロント パネル上の複数のオブジェクトを高解像度で実行する必要があり、古いビデオ カードが使用されている場合に役立ちます。