RoboServerで全体で同時に実行できるガードチョイスの数に制限がある

フォローする

発生バージョン・改修ID・修正バージョン

発生Ver 改修ID 修正Ver

Design Studio 11.3

RoboServer 11.3

Device/Desktop Automation Service 11.3

Design Studio 11.4

RoboServer 11.4

Device/Desktop Automation Service 11.4

1985808

 

 

事象


1つのRoboServerで同時に実行できるガードチョイスの数に制限があります。

この数は使用している端末のCPUのスレッド数-1となり、端末によって変動します。

※例外として、2スレッド以下の端末では発生しないことも確認しております

例:8スレッドの場合、同時に実行できるガードチョイスの数は7ステップ

 

本不具合によって、端末のスレッドの数-1より多くのガードチョイスステップを同時に実行した場合、ロボットの実行時間が想定より多くかかります。

例えば、8スレッドの環境で、100秒のガードチョイスステップだけが含まれるロボットを8台同時に実行した場合、最初の7台は正常に実行されますが、最後の1台は前のロボットが終わるまで待機するため計200秒かかります。

 

<例>

  1. 以下のロボットを8個作成

  2. スケジュールに登録して同時実行

  3. 1台だけ実行時間が長くなる

 

発生条件

端末のスレッドの数-1より多くのガードチョイスステップを同時に実行する

 

注意事項

本不具合により実行時間が延びたロボットは、キューに入るわけではなく、KCU Waitもカウントされません

 

対処方法

RoboServer.confにForkJoinPoolを拡張するパラメーターを記載する

※以下の例では余裕をもって40ステップが同時に実行できる設定となっております

 

<パラメーター>
wrapper.java.additional.120=-Djava.util.concurrent.ForkJoinPool.common.parallelism=40
 
<追記例>
ファイルパス:C:\Program Files\BizRobo Basic {バージョン}\bin\RoboServer.conf