deadline does not receive Alfred progress from husk.exe

   1121   4   0
User Avatar
Member
15 posts
Joined: July 2013
Offline
hi,
husk command submit via commandline-plugin.
this way is very easy and render usd on husk works well.

C:/Program Files/Side Effects Software/Houdini 20.0.547/bin/husk.exe --usd-input <usd file> --output <output file> -f 1001 -n 24

but, deadline does not receive Alfred progress from husk.exe.
it shows only two status, 0% or 100%.

i have add code bellow into "CommandLine.py" on deadline-repository, but it's not solved this problem.
if job finished, the log exported "alfred style progress".but the log exported after job finished.

def InitializeProcess( self ):
    self.AddStdoutHandlerCallback( r"ALF_PROGRESS ([0-9]+(?=%))" ).HandleCallback += self.HandleStdoutProgress

def HandleStdoutProgress(self):
    self.SetProgress(float(self.GetRegexMatch(1)))

please tell me if you know, how to solve this?

thanks
User Avatar
Member
3 posts
Joined: Sept. 2020
Offline
1
Check Alfred Style Progress in the Driver partition of USDrenderROP


The .....deadline repository/plugins/Houdini Houdini.py,


class HoudiniPlugin


2
def HandleStdoutFrameProgress(self):

if self.ropType in ("ifd", "rop_ifd"):

To put "usdrender_rop" in parentheses, the correct code is:

if self.ropType in ("ifd", "rop_ifd", "usdrender_rop"):



3
def HandleStdoutFrameComplete(self):

if self.ropType in ("ifd", "rop_ifd"):

To put "usdrender_rop" in parentheses, the correct code is:

if self.ropType in ("ifd", "rop_ifd", "usdrender_rop"):



This is not what you want
Let me know if it works
User Avatar
Member
15 posts
Joined: July 2013
Offline
thanks ddh123,

Your approach looks good, but unfortunately I can't see any progress.
As before, it remains either 0 or 100.

our approach is not ROP, to rendering usd with command line husk.

other example USD_Export(SOP), class usdexport.
it's not work well too.

one-file or sequencial-file, both did not work well too.

Your advice was very helpful, so I'll get it some moretry.
def HandleStdoutFrameProgress(self):
        if self.ropType in ("ifd", "rop_ifd", "usdrender_rop", "usdexport", "usd"):
            frameCount = self.GetEndFrame() - self.GetStartFrame() + 1
            if frameCount != 0:
                completedFrameProgress = float(self.completedFrames) * 100.0
                currentFrameProgress = float(self.GetRegexMatch(1))
                overallProgress = (completedFrameProgress + currentFrameProgress) / float(frameCount)
                self.SetProgress(overallProgress)
                self.SetStatusMessage( "Progress: " + str(overallProgress) + " %" )
                
        elif self.ropType in ("arnold", "geometry", "rop_geometry", "wedge", "Octane_ROP", "ris::22"):
            overallProgress = float(self.GetRegexMatch(1))
            self.SetProgress(overallProgress)
            self.SetStatusMessage( "Progress: " + str(overallProgress) + " %" )
        
    def HandleStdoutFrameComplete(self):
        if self.ropType in ("ifd", "rop_ifd", "usdrender_rop", "usdexport", "usd"):
            self.completedFrames = self.completedFrames + 1
            
User Avatar
Member
3 posts
Joined: Sept. 2020
Offline
1
Open houdini and create the usd_rop node
2
Check Alfred Style Progress


3
Save the prim Settings as default


4


The type name of usd_rop is 'usd_rop' not 'usdexport' or 'usd '.
It might be useful to change the code and try again

If rendering usd with command line husk
Perhaps the usd_rop node will not read the Alfred Style Progress set by prim
In this case, it is possible to obtain the total progress based on the current frame number and the total frame number in a
multi-frame task
But single-frame tasks don't get Progress because they don't have Alfred Style Progress
Edited by ddh123 - April 16, 2024 01:58:11

Attachments:
usd1.jpg (41.8 KB)
usd2.jpg (49.5 KB)
usd3.jpg (11.8 KB)

User Avatar
Member
15 posts
Joined: July 2013
Offline
my mistake, There was a lack of explanation.
I want to get Task progress as a Frame.
As you say, it seems to work as "Job-progress" based on frame.

modity plugin or not, "Job-progress" shows same result.

USD_Export(SOP)
*)set Frames_Per_Task=1, as Some-Tasks
per_task shows as "Job_Progress", but not shows "Task_Progress".

*)set Frames_Per_Task=100000, as One-Task
per_task does not shows as "Job_Progress", and not shows "Task_Progress" too.

husk job will be same.(commandlinePlugin)
based on frame, it will be difficult to show task-progress based on in the frame.
I think if "Job-progress" based on frame task show that, I'll be fine.
thanks
Edited by Noboru Saka - April 16, 2024 02:38:13

Attachments:
job-progress.png (35.7 KB)

  • Quick Links