High CPU/GPU usage in Arbor Editor

Here is a forum for reporting failure to Arbor developer.
Please read the forum rules carefully and enter the information necessary to confirm the problem.

Note:
  • Please read the "Update Guide" carefully when updating Arbor.
  • The bugs that we already know are summarized in "Known Issues", so please check once.
  • Please check ReleaseNote and use the latest version if possible before reporting a bug.
  • Unity beta and alpha versions are not supported. Please use the official release version.
  • In principle, defects caused by the introduction of other assets are not supported. If you find a defect, please report it after isolating which asset is the problem.

ここは、Arbor開発者へ不具合を報告するためのフォーラムです。
フォーラムルールをよく読み、不具合確認に必要な情報を記載するようお願いします。

注意点:
  • Arborを更新する際は「アップデートガイド」をよく読み行ってください。
  • 既に把握している不具合は「既知の問題」にまとめてありますので一度確認してみてください。
  • 不具合報告をする前にReleaseNoteを確認し、なるべく最新バージョンを使用して下さい。
  • Unityのベータ版およびアルファ版はサポート対象外です。正式リリース版をご利用ください。
  • 他アセット導入による不具合は原則サポート対象外です。不具合を見つけた場合はどのアセットの問題であるか切り分けた上でのご報告をお願いいたします。

Forum rules
The items necessary for reporting are as follows.
  • OS(Required)
  • Unity version(Required)
  • Arbor version(Required)
  • How to reproduce(Required)
    The reproduction method should be described accurately so that anyone can read the same procedure.
    If you do not know the exact reproduction procedure, as long as you can remember it, so please tell us what you were doing immediately before and the last time you edited it.
  • Build platform
  • Reproduction project (Minimum configuration not including Arbor and other assets) or video

Note:
  • Please read the "Update Guide" carefully when updating Arbor.
  • The bugs that we already know are summarized in "Known Issues", so please check once.
  • Please check ReleaseNote and use the latest version if possible before reporting a bug.
  • Unity beta and alpha versions are not supported. Please use the official release version.
  • In principle, defects caused by the introduction of other assets are not supported. If you find a defect, please report it after isolating which asset is the problem.

報告に必要な項目は以下の通りです。
  • OS(必須)
  • Unityバージョン(必須)
  • Arborバージョン(必須)
  • 再現方法(必須)
    再現方法については、誰が読んでも同様の手順を行えるよう正確に記述するようにお願いいたします。
    もし正確な再現手順が不明な場合、覚えている限りで構いませんので直前に行っていたことや最後に編集した時のことを教えてください。
  • ビルドプラットフォーム
  • 再現プロジェクト(Arborや他アセットなどを含まない最小構成)もしくは動画

注意点:
  • Arborを更新する際は「アップデートガイド」をよく読み行ってください。
  • 既に把握している不具合は「既知の問題」にまとめてありますので一度確認してみてください。
  • 不具合報告をする前にReleaseNoteを確認し、なるべく最新バージョンを使用して下さい。
  • Unityのベータ版およびアルファ版はサポート対象外です。正式リリース版をご利用ください。
  • 他アセット導入による不具合は原則サポート対象外です。不具合を見つけた場合はどのアセットの問題であるか切り分けた上でのご報告をお願いいたします。
Joeyvrowl
Posts: 3
Joined: 2023/04/20 09:01

High CPU/GPU usage in Arbor Editor

Post by Joeyvrowl »

Hi. We are trying out the trial version of Arbor 3. While we really like it so far, there is one major issue that is a deal-breaker right now. Since we are using the trial, we can't check the source to fix it ourselves.

When we have the Arbor Editor open for an FSM, and there is at least one state with at least one behaviour, the CPU usage goes to 25% (2 cores fully loaded) and GPU usage to 30%. Mind you, that is in the Editor, no play mode. So nothing is actively running. When we close the Arbor Editor, the usage is back to normal (0% when idle). We tried disabling the "Live Tracking" button.

We have seen the issue in both Unity 2019.4.16f1 and 2021.3.22f1. It is very easily reproducible in a new project:
1. Make a new project
2. Add an Arbor FSM to the scene
3. Open the editor for the FSM
4. Add a state
5. Add any behaviour to the state
6. Open Task Manager and check the CPU/GPU usage of the Unity process. Make sure that you put the Unity window back into focus by clicking on it, otherwise it will pause and have 0% usage.

The issue goes away if you remove all behaviours again. Sometimes it stops for a moment after recompiling scripts, but then it starts again when you interact the with Arbor Editor in any way.

Other info:
Windows 11
Arbor-Trial-3.9.5
Reproduction project (2021.3.22f1) attached.

Is there anything we can do to fix it?
Attachments
Arbor fresh 4.zip
(4.16 MiB) Downloaded 438 times
User avatar
caitsithware
管理人
Posts: 495
Joined: 2015/08/17 12:41

Re: High CPU/GPU usage in Arbor Editor

Post by caitsithware »

Thank you for your report.

The reason for the high load of the Arbor Editor is because IMGUI is used in the Editor of Behaviour and other elements.
This is currently a specification, but we will continue to improve it to reduce the load in the future.

Here are some temporary measures:
  • Click the gear icon in the toolbar and turn off "Show Grid."
  • Collapse Behaviours by selecting "View > Collapse All" in the toolbar.
However, even if you perform these actions, the load reduction is minimal.
If you are concerned about running it outside of editing or testing, please close the Arbor Editor each time.
Joeyvrowl
Posts: 3
Joined: 2023/04/20 09:01

Re: High CPU/GPU usage in Arbor Editor

Post by Joeyvrowl »

Thank you for the reply.

I don't see the suggested options reducing the load in any way. I guess the window is running at a virtually uncapped framerate because the IMGUI system (profiler shows the editor runs at around 400 with Arbor Editor open). So any reduction in load just results in more frames. In fact, collapsing all behaviours in an FSM with only 2 behaviours increases GPU load consistently from 30% to 50%, while maintaining the same CPU usage as before.

I understand that we can close it so it does not impact runtime performance of our app. However since we use laptops it is a little overkill to have them blowing loudly non-stop when editing a simple FSM graph. Even on pcs though, the added power draw and wear on the machine is comically disproportionate to the task being performed (basically showing a static image).

I can't seem to find any info online to properly limit Editor or OnGui/IMGUI framerate. Do you happen to know if that is possible?
If not, is it possible there is some issue that occurs when any behaviour is added? Because as I reported, the issue does not occur when there are no behaviours (but there are states that need to be drawn).
User avatar
caitsithware
管理人
Posts: 495
Joined: 2015/08/17 12:41

Re: High CPU/GPU usage in Arbor Editor

Post by caitsithware »

The high load of IMGUI is a Unity specification and cannot be reduced as long as rendering is involved.
The basic part of Arbor Editor has been switched to low-load UIElements, but the built-in Behaviour Editor has been postponed due to the high number of them and the high cost of work.
As mentioned before, this is currently a specification, but we will continue to improve it to reduce the load in the future.
Post Reply