Search - User list
Full Version: Dependency setup
Root » PDG/TOPs » Dependency setup
axelsp
Hello,
Currently suffering from "got only 1 machine to use" so i need to cook a recipe in a very specific order, as you do.
So the TOP docs just introduced me to 'partition by index'. Im just confused with why it ran the secondary branch first out of the box.
I needed to fiddle with a duplicated 'local scheduler' that sets 'inherit priority from upstream item'.
Im wedging a fluid simulation, overwriting sim geo cache, overwriting JPG from OGL capture, and generating a unique MP4 file thru ffmpeg.
Question is, is there another way to go about this? what is the correct approach for a task like this.

This setup currently works, but im write to the same files on disk for the most part of the process only to output that unique MP4 at the very end. So it feels im fighting against the tide a little.

Thanks a mi,
Al.
mestela
I think you're overcomplicating it. I'd just run the nodes in serial, don't do any fan in/fan out stuff until you understand tops more.

I have notes on my site that might be useful:

https://www.tokeru.com/cgwiki/index.php?title=HoudiniTops [www.tokeru.com]
axelsp
Thanks for the quick reply. I'll keep digging into the infos, thanks for the link.
I had to fan out as series of nodes wouldnt behave as expected.
I need only one geo cache to run first, followed by that ogl node also running only once and rince and repeat that loop.
I couldnt see an option for the time being. That 'partition by index' node is my new best friend.
Im just certain im using it wrong - lol.

Still opened to suggestions if anyone has 2 cents to throw in.
Many thanks
Al
mestela
the fanning of nodes tells tops that they're equally important, so it'll assign workitems from either the cache or the ogl node to run with equal priority.

wiring them in serial does an implicit 'workitem1 of the first node must complete before workitem1 of the second node can start'.

if you want all the workitems of one node to be complete before the second can start, put a waitforall top between them.
axelsp
Many thanks for the additional info mestela.
The setup is working as I have it. Just wondering what would be the best method for this.

Partition by index seems to be helping to achieve this:
[cache0, capture0], [cache1, capture1], etc...
I need cache1 to wait until capture0 is done.

When daisy chaining, TOPs seems to want to start cache1 while capture0 is still running. Cant have that for this case.
tamte
Ideally you would not be overwriting any files and then you can connect it linearly as Matt suggested
that way if you like any of your wedges you will have the cache for it still on disk

But if you really want to override the same files per wedge for any reason and therefore force your network to run per workitem all the way till the end before going to next workitem and execute it till the end etc... so that they don't overwrite each other before .mpg is created , you can probably use For Loop (Create Iterations From:Upstream Items) and connect your cache, ogl and ffmpeg linearly inside assuming that I read it correctly that each workitem of your cache and ogl in your screenshot represents different wedge and contains batch of all frames (Cook Frames as Single Workitem)
axelsp
For loop is the next thing I should dabble into definitely. Now Im curious to see how these 2 setups behave.
The overwriting aspect of the chain was not to blow the cap off of my hd with 'bgeos.sc' temporary sim caches.
Not sure im happy about dumping the JPGs as i have to manage the mp4 outside hou. But thats the decision for now.
The chain created some 300 sim variations overnight, hopefully i can scan thru the lot quickly and find 'sweet spot values'. Brute force approach
"With great power comes great responsibility"
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB