Forum
Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC:

Panic Time Exit Code in Batch 1 month 3 weeks ago #994

  • benji
  • benji's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 12
  • Thank you received: 0
Hello Numerion!

So, my apologies in advance, I am playing the messenger from our internal pipeline team, so I am probably going to sound like I have no idea what I am talking about. Funny enough, I don't. 

That out of the way: Is there a way of passing an exit code of sorts when the Panic Timer is exceeded when running a cache in batch mode? Currently, (as best as we can tell), if a simulation exceeds the panic time while being run on the farm, maya crashes with a cryptic segmentation fault. Is there currently a way of checking for the panic time being exceeded to have a more graceful fail? If that makes any sense at all.

Thanks for your help!

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 month 2 weeks ago #995

  • Sebastian
  • Sebastian's Avatar
  • Offline
  • Administrator
  • Administrator
  • Posts: 172
  • Thank you received: 39
Hi benji,

So, my apologies in advance, I am playing the messenger from our internal pipeline team, so I am probably going to sound like I have no idea what I am talking about. Funny enough, I don't. 

No worries. We really appreciate you communicating with us so we can figure out what's going on.

The way panic timer currently works is that if it triggers, it calls MAnimControl::stop() from c++ to stop playing the timeline. In addition, we set the current timeline frame to the frame before the panic timer triggered.
Imagine you are on frame 1 and click on the end of the timeline (let's say frame 100) and panic timers triggers during simulation of frame 50, then it will stop there, set the timeline to the last valid frame, i.e. 49, and prints something like this:
Carbon Simulation carbonSimulationShape1: Exceeding panic time simulating Frame #50
Carbon Simulation carbonSimulationShape1: Emergency stop at Frame #49

Now, if you try to manually move forward in the timeline it will try to simulate frame 50 again; obviously trigger then panic timer again and you are back at frame 49.
It's a bit like banging your head against the wall. It won't move forward and you are getting the same result each time you try to press play again.
It would be interesting to see your crash log (feel free to send via email so it's not on the public forum).
But my guess is that your batch process either is unhappy that we try to stop the simulation, and/or it tries to forcefully complete the timeline and we are in an infinite battle of stubborn processes which leads to a crash.

Now, how can we resolve this?
I would suggest the following but please let me know if you rather have something else/additional implemented:
We can add a read-only boolean to the simulation node that marks if a panic timer has triggered. If it has triggered, first of all it would allow you to read it and do whatever you deem necessary.
But in addition, internally, we can just skip further simulation updates until you reset the simulation and happily allow you to render / save out the rest of the timeline. Each following frame would just be the same as the last valid frame. This would prevent the lock at the last valid frame and you can freely do with the timeline whatever you want.

How does this sound?

This would obviously entail us implementing this fix and creating a new build.
In the meantime, the only solution I can think of that could solve your problem now would be if you had the ability to check if Carbon has stopped the timeline.
If it has, i.e. panic timer triggered, then just abort what you are doing.
Not sure if this is feasible for you.

Cheers,
Sebastian

 

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 month 2 weeks ago #996

  • benji
  • benji's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 12
  • Thank you received: 0
Hi Sebastian, 
Just wanted to say thank you for getting back to me. I passed your message along to the team, just waiting on their thoughts. Will let you know as soon as I know anything. Thanks again!
Benji

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 month 2 weeks ago #997

  • benji
  • benji's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 12
  • Thank you received: 0
Just also going to add my own thoughts here as well. At least for my part, a 'panic time hit' boolean sounds like a plausible idea to me. The ability to "read it and do whatever you deem necessary" would certainly be paramount for our work, though, as we have automated systems in place for running characters in shots that would take the bakes from a carbon sim and use it elsewhere for other simulations. If the default is to continue saving the timeline without erroring, the task may continue as if nothing is wrong, then try to do other simulations later in the process with a very broken carbon sim/half simmed-half frozen shot. I'm guessing this is something that would have to be checked and implemented by the pipeline team, I don't really know, but that at least pops up in my head. This system may work well for other people in other situations, though, so it may be worth while implementing as you suggest. 
One other thought, though. On panic time being exceeded, instead of writing out full caches for the remaining frames, would it be possible to just add a placeholder file to say 'look at that last frame that worked'? Not sure how your caching system works if it is point position storing or point changing storage or what, but broken caches of a lot of the same repeating frame I would think would chew up a lot of data in a hurry. Personally on my end at least, I'm hoping that it would just fail and not write out anything, but for those with use cases where they would want the rest of the timeline still baked as a static frame from the break point, I would still think that keeping it as light on data as possible would be useful. 

Sorry, I'll stop rambling here. Will let you know what I hear from our pipeline team as soon as I hear from them. Thanks again for your help!

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 month 2 weeks ago #999

  • Sebastian
  • Sebastian's Avatar
  • Offline
  • Administrator
  • Administrator
  • Posts: 172
  • Thank you received: 39
Hi benji,

Thanks for your input. Let's see what the pipeline team can come up with :)
We're very keen to figure something out that works for everyone.

Cheers,
Sebastian
The following user(s) said Thank You: benji

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 week 5 days ago #1005

  • Sebastian
  • Sebastian's Avatar
  • Offline
  • Administrator
  • Administrator
  • Posts: 172
  • Thank you received: 39
Hi benji,

We are almost there for a big 3.0 release, but in the meantime, we are releasing another 2.x with some bug fixes, feature request and one major new feature.
The idea being that jumping to a full major version might be too "adventurous" for some studios, so we're bringing bug fixes and feature requests to the existing 2.x builds as well.

This includes changes to the panic time feature.
When a panic time is triggered, there is now a hidden tickbox/boolean that gets set ticked. By hidden, I mean it is not in the main UI, but when you scroll down on the Carbon Simulation node, you can see it under Extra Attributes.
Also, you can query it like this with python for example: 
maya.cmds.getAttr('carbonSimulationShape1.panicTimeTriggered')
When you reset the simulation, it gets reset to false again.
Furthermore, while, same as up to now, the timeline gets stopped when the panic time triggers, you can now just press play from there and play the rest of the timeline. Carbon will not do any further simulation while the panic time is triggered, so you will see a static output.

We are making and uploading the new 2.32.2 builds as I write this and they should be available through the usual channels by tomorrow (June 11th) noon or so.
So please contact your admins to make the build available to you.

Cheers,
Sebastian
 

Please Log in or Create an account to join the conversation.

Panic Time Exit Code in Batch 1 week 5 days ago #1006

  • benji
  • benji's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 12
  • Thank you received: 0
Hi Sebastian,

This is brilliant! Thank you so very much. I've just pinged my system admins now to be on the lookout for it. With any luck, should be able to test it soon. Crossing all of my fingers and toes! Will keep you posted. 

Thank you as always, 
Benji

Please Log in or Create an account to join the conversation.

  • Page:
  • 1
Time to create page: 0.089 seconds