ACRi ルームへようこそ! › フォーラム › HLS Challenge についての質問・コメント › 「論理合成タイムアウト」に関して教えてください。
- 投稿者投稿
- 2021-11-18 21:37#993u_gmicro300参加者
提出フォームのフォントがきれいに見えるようになって感謝です。
タイムアウトを防ぐにはどのような手立てがあるのか教えてください。
VITIS_HLSの主なステップは、CSIM, CSYN, CoSIM の3段階です。チャレンジの中でも、3つの段階それぞれのログがタブにまとめられていてみやすいです。私の提出では、CSIM 5sec, CSYN 162sec, COSIM 154sec で終わります。COSIM の結果が表示されてから「論理合成タイムアウト」と表示されるまで、30minくらいかかります。COSIM の後で、何が実行されるのかどのように調べることができるのでしょうか?
私が提出した、text-searchの課題の場合、「論理合成タイムアウト」の制限は30分でそれを満たすことができません。
どのようにデザインすることで、COSIMの後で何が行われるのか、論理合成時間を短くできるのか、教えてください。2021-11-24 15:48#1006ando参加者返信が遅くなり申し訳ありません。フィードバックありがとうございます。
論理合成は、CoSIMが通ったHLSプロジェクトで、論理合成を有効にしてIPをエクスポートすることで行っています。チェッカーではこちらのコードです。
https://github.com/acri-room/vhls-challenge-checker/blob/master/src/lib/syn_checker.sh論理合成の実行時間を短くするには回路規模を小さくするしかないかと思います。問題によって論理合成を行うかどうか設定していますが、なかなか判断が難しいです。論理合成は基本的にオフにして、採点にかかる時間を短くして、たくさんコードを提出してもらえるようにした方が良いかと感じています。
2021-12-16 15:27#1072u_gmicro300参加者なるほど。「論理合成」とは、Vivado でのRTL=>netlist 合成のことなんですね。
C=>RTL 合成と区別できていませんでした。
RTL合成のログを見ても確かに、何をすればいいのかヒントは得られそうにありません。
しかし論理合成だけではなく他の部分でも、なぜ時間がかかっているか、少なくてもどこで時間がかかっているかヒントが出ると、嬉しいです。
私が思っているC=>RTL合成で時間がかかる理由1つは、単に生成される論理が多いから。もう一つは複数の並列したループがあると依存性の解析に時間がかかるから。依存性の解析の結果、何が問題で、ループ、関数のどれがスケジュール制約を受けるのか、表示されると助かります。利用者が依存性を指定した場合には、解析をスキップできるとさらに嬉しいです。2021-12-17 16:58#1074ando参加者C=>RTL合成で時間がかかる理由につきましてはおっしゃる通りだと思います。C=>RTL合成で時間がかかるときにその原因をツールが教えてくれると良いのですが、そうはなっていないので、今のところ、タイムアウトしてしまう場合には並列度を調整するくらいしかできることはなさそうです。
- 投稿者投稿
- このトピックに返信するにはログインが必要です。