AWS Thinkbox Discussion Forums

Help getting Houdini 18.5 Husk(Redshift progress) to work in Monitor

Hello :slight_smile:

I’m trying to get the progress bar to work in Monitor using Husk running a Redshift task.

I tried to copy over some code from the Redshift plugin, into a custom husk plugin that is based on the command line plugin. But it did not work.

I copied over these lines from the Redshift plugin

def InitializeProcess( self ):
    self.FinishedBlocks = 0
    self.AddStdoutHandlerCallback( "Block (\\d+)/(\\d+) .+ rendered" ).HandleCallback += 
    self.HandleProgress

def HandleProgress( self ):
    self.FinishedBlocks += 1
    totalBlockCount = float( self.GetRegexMatch( 2 ) )

    progress = 100 * self.FinishedBlocks / totalBlockCount
    self.SetProgress( progress )
    self.SetStatusMessage( "%s / %s Blocks Rendered" % ( self.FinishedBlocks, int( totalBlockCount ) ) )

I have added the husk plugin python fileHusk.py (12.9 KB) , and log from the render. husk_redhift_log.py (224.0 KB)

At the moment i don’t have much clue on what to do :confused: But i hope some wizards here have some wisewords :slight_smile:

Hello Heileif,

So there are a couple of different things that could be at work here at why your progress isn’t showing up properly.

One of the big things that could be causing incorrect progress is that the totalBlockCount is only the number of blocks within a single frame. Since the log you posted is for 5 frames (1001-1005) you will need to keep track of what frame is being rendered and adjust your percentage based on that. You could do this by adding an additional stdout handler that would catch on rendering frame ###.... with a handler that resets the finished block count and increments the current frame number. (This is not needed in the Redshift plugin since it only handles a single frame at a time)

While testing stdout handlers it can also be worthwhile to turn on debug logging for a plugin. This can be checking the checkbox at the bottom of the window in Tools -> Configure Plugins -> [your plugin]. I would not recommend leaving this on when not testing though since it is very verbose.

Best of Luck.

This is update to work with 10.1.14.5

From post:
"So it seems that out of the box, Deadline doesn’t update the little progress percentage meter in the task view for RS jobs, even with the log level set to debug.
I’ve modified the python files to make this work, as well as add the debug log level so it doesn’t need to be set in the pre-render script for every ROP.
I’ve tested these with the Redshift_ROP and Redshift_Proxy_Output ROP and it seems to work fine with Deadline 10.0.24.1
Replace the two .py files in C:\DeadlineRepository10\plugins\Houdini with the ones I’ve attached.
Let me know if I missed some edge case situations or if something doesn’t work.
On a related note, Deadline seems to have like a minimum number of lines that need to be written to the log in order to trigger an update of the slave log, I haven’t found a way to adjust this, so for the Redshift_Proxy_Output, it might take a while for the progress to update since it doesn’t write out as much info as a render, it’s kinda annoying.
If anyone knows a way to change this, let me know…

v5 - Single frame progress has finally been added!!
The progress bar and the render status will now update to show the progress in single frame tasks. I have also updated the render status for multi frame tasks as well. So it will show the current frame in the task plus that frames progress.
This version supports the newest Deadline version 10.1.14.5 and is based on the plugin files from that version, so upgrade your Deadline if you plan to use this version.

deadline_houdini_redshift_task_progress_fixes_v5.zip (17.8 KB)

See if this helps. It worked for me, if I understood correctly what you are trying to get.
Also guys from deadline please take a look at this and implement as this guy has to fix this evrey single update :slight_smile:Thanks!

Privacy | Site terms | Cookie preferences