• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Blogs
  2. カスタムIC/ミックスシグナル
  3. Virtuosity: 分散型ファームにおけるリソースの最適な利用
Custom IC Japan
Custom IC Japan

Community Member

Blog Activity
Options
  • Subscribe by email
  • More
  • Cancel
SGE
Analog Design Environment
LBS
Job Policy
ADE
LSF
Virtuoso
Virtuosity
distributed processing
japanese blog
Custom IC Design
IC6.1.8
Assembler
ADE Assembler

Virtuosity: 分散型ファームにおけるリソースの最適な利用

4 Aug 2021 • Less than one minute read

 読者の皆さん、こんにちは。

ジョブやシミュレーションを実行するために、どれくらいのリソースが必要なのか、誰しも疑問に思ったことがありますよね。これは難しい問題で、一般的には皆さんが考えている上限を確保することになります。ただし、予定した分のリソースを使用しない場合もありますので、その場合、リソースを最適に使用できないことになります。あるいは、予定したリソースの制限を超えたために、ジョブが停止または中断されたというシナリオもあるかもしれません。

そのような場合には、ADE AssemblerのLSCSジョブコントロールモードの新機能「リソース見積もり」をご利用ください。

リソースの見積もりに役立つように、Job Policyフォームの"Resources"タブにアクセスしてください。

興味深いのは、シミュレーションを2回実行する必要がないことです。ジョブを送信すると、ツールがシミュレーションの実行に必要な最適なリソースを把握し、必要なリソースを予約してくれます。

固定された数のCPUやメモリを要求するのではなく、%CPU_ESTや%MEM_ESTを使って、シミュレーションを実行するのに必要なリソースをツールに判断させ、その分を予約することができるようになりました。

例えば、Job PolicyフォームのCommandとしてDistribution Modeを使用する場合、以下の構文を使用することができます: 

bsub -q "normal" -n %CPU_EST -R "rusage[mem>=%MEM_EST] select[(OSREL==EE60)||(OSREL==EE70)]" 

また、LBSモードでは、Resource Requirementsをmem>=%MEM_ESTに設定し、Parallel Num. Processorsのチェックボックスをオフにしておくと、必要なCPUを見積もることができます。

ADE Assemblerのリソース見積もりフロー

デザインの状況に応じて、ADE Assemblerでサポートされている2つのリソース見積もりフローのいずれかを使用することができます:

  • Estimation - このフローでは、ADE Assemblerが最初にspectre +queryシミュレーションを実行し、返されたデータは、メインのADE実行のためのCPUおよびメモリのリソース情報を入力するために使用されます。    
    • 複数のコーナーが設定されている場合は、リソースの見積もりに使用するコーナーを選択することができます。コーナーが指定されていない場合は、ノミナルコーナーが見積もりに使用されます。
  • Reuse from history - このフローでは、ADE Assemblerが前回のヒストリの結果を見て、実行時に使用されたCPUとメモリのリソースを判断し、ヒストリの値を使用して次の実行のためのジョブセットアップを入力します。
    • ADE Assemblerは、すべてのポイントの中で見つかった最大のメモリとCPUの値を使用します。Spectreのリソース見積もりは、最新のヒストリが同じセットアップでない場合、再実行されます。テスト名、デザイン名、シミュレータ、ランモード、シミュレーションファイル、モデルファイル、コーナーのセクションを比較し、セットアップの違いを判断します。
    • 最新のヒストリだけを見るか、すべてのヒストリを見るかは、以下の変数を使って選択できます。
    • envSetVal("maestro.distribute" "historyReuseChoice" 'cyclic "Latest")
      (有効な値は"Latest"と"All"です)

重要事項

  • Spectreは現在、hb解析とtran解析のみのリソース見積もりをサポートしています。セットアップにこれら2つ以外の有効な解析が含まれている場合、機能は利用可能なヒストリからの値を再利用します。利用可能なヒストリがない場合は、Job Policy SetupフォームのResourcesタブで指定されたデフォルトのメモリとCPUの値が使用されます。
  • リソースの見積もりは、セットアップの各テストに対して行われます。すべてのテストでグローバルジョブポリシーが使用されている場合、ADE Assemblerはすべてのテストで見積もられた値の中から最大のCPUまたはメモリの値を使用します。テストが独自の上書きされたジョブポリシーを使用している場合、リソースの見積もりは各テストに対して個別に実行されます。複数のテストが同じポリシーを使用している場合、見積もられたCPUまたはメモリの最大値がすべてに使用されます。

関連リソース

  • トラブルシューティングに関する情報
    • How to do Resource Estimation in ADE Assembler and FAQ
  • ユーザーガイド
    • Virtuoso ADE Assembler User Guide
  • 日本語資料
    • Analog Design Environment

Cadenceの回路設計用製品とサービスに関する情報についてのさらなる情報はwww.cadence.comをご参照ください。

Virtuosityとは

Virtuosityは、あまり知られていない、だけれども、とても便利なソフトウェアやドキュメントの改善、Virtuosoのエキサイティングな新機能に光を当てる、最も多く閲覧され、評価されてきたブログ・シリーズです。私たちはいま、引き続きこのシリーズのスコープを拡張しています。従来からのブロガーやエキスパートによる情報発信に加え、Virtuosoに関連するトピックを広く網羅することで新次元の情報を提供します。そしてさらに、それらを発展させていきます。

Happy Reading!

Shyam Kumar Gupta

Translator: Naoto Hasegawa