How to limit the CPU counts for Invoke Node

   2520   6   1
User Avatar
Member
159 posts
Joined: Feb. 2018
Offline
It seems like the Invoke Node isn't limited by the Local Scheduler, no matter how many CPU counts I set in the Local Scheduler Node, the Invoke Node will use more CPU. And in my case, I run some OpenCL code in Invoke Node, and it created 15 workitems parallelly and cause the GPU crashing. And then my computer just restarts by itself.
So is there any way to limit the CPU use for Invoke Node? Or how can I run the Invoke node not parallelly? Thanks.
User Avatar
Member
603 posts
Joined: Sept. 2016
Offline
There's an existing RFE for this (99118).
In the meantime you could consider running your invoke in a For Each Loop, which would ensure each invoke iteration runs in series.
User Avatar
Member
159 posts
Joined: Feb. 2018
Offline
chrisgreb
There's an existing RFE for this (99118).
In the meantime you could consider running your invoke in a For Each Loop, which would ensure each invoke iteration runs in series.
Thanks, Chrisgreb:
I've tried to use For Each Loop, but it seems like still use too many threads, as you can see in the GIF, I've limited only use 3 CPUs, but the For Each Loop still generate 7 work_item parallelly.

Attachments:
Invoke bug.gif (154.2 KB)

User Avatar
Member
603 posts
Joined: Sept. 2016
Offline
Try toggling the “Iterations from upstream items” parm on the feedback begin block

https://www.sidefx.com/docs/houdini/tops/looping.html [www.sidefx.com]
User Avatar
Member
159 posts
Joined: Feb. 2018
Offline
chrisgreb
Try toggling the “Iterations from upstream items” parm on the feedback begin block

https://www.sidefx.com/docs/houdini/tops/looping.html [www.sidefx.com]

Thank you for your reply, Chris:
Yes, it works after toggling the “Iterations from upstream items” parm but unfortunately, it's not compatible with dynamic work_items While I'm dealing with dynamic work_items.
User Avatar
Member
159 posts
Joined: Feb. 2018
Offline
chrisgreb
There's an existing RFE for this (99118).
In the meantime you could consider running your invoke in a For Each Loop, which would ensure each invoke iteration runs in series.
Hi, any progress yet? Will this feature be available in H18? Thanks.
Edited by EricSheng - Nov. 11, 2019 02:37:53
User Avatar
Member
603 posts
Joined: Sept. 2016
Offline
EricSheng
chrisgreb
There's an existing RFE for this (99118).
In the meantime you could consider running your invoke in a For Each Loop, which would ensure each invoke iteration runs in series.
Hi, any progress yet? Will this feature be available in H18? Thanks.

No it's sitting in the backlog and won't make it to 18.
  • Quick Links