HQueue 是一个通用的任务管理系统。你可以使用它向远程客户端分发渲染、模拟和其他任务。

  • 总览
  • 组件
  • 怎样工作
  • 许可证

注意
HQueue服务器和客户端的 Python3实现 当前不可用。但是,你可以从Python3版的Houdini中提交任务到Python2的HQueue农场中,并在任务中运行Python3。

总览

HQueue 是一个通用的任务管理系统,它在计算节点集合(或者说客户端机器集合)之间进行任务的分发、监视、管理。它是专门用来管理从 Houdini 提交的渲染和动态模拟任务的。然而,它也可以被定制化以处理任何应用程序中的任何任务。

组件

一个HQueue农场中主要的组件是:

  • HQueue服务器
    这台机器运行 HQueue服务器进程,它是整个系统的灵魂。服务器将任务分发到其他机器,主持Web界面,并存储任务调度的数据。
  • HQueue客户端
    这些是运行 HQueue客户端进程 的机器。它们接收并执行服务器分配的任务。HQueue客户端也称为“客户端机器”、“计算节点”或“渲染节点”。
  • 工作站
    这些是用户在 交互式Houdini程序 中提交任务的机器。任务被发送到 HQueue服务器,然后分发到客户端。
  • 共享文件夹服务器
    这台机器放有在网络上共享的文件夹(或驱动器)。工作站将输入文件传输到共享文件夹中,这样客户端机器在执行作业时就可以读取这些文件。然后,客户端机器可以将输出文件写入到共享文件夹中,这样工作站就可以访问它们。
  • Houdini 许可证服务器
    这台机器持有在工作站上运行 交互式Houdini程序 的许可证,以及在客户端机器上运行的非交互式的 Houdini 和 Mantra 所需的许可证。

怎样工作

描述 HQueue 如何工作的最简单方法,是走一遍一个有代表性的工作流程——分发 Mantra 渲染任务:

  1. 工作站向 HQueue 服务器提交任务。
    这个流程将开始于工作站。美术师在 Houdini 中创建一个场景,当场景准备好渲染时,美术师使用 HQueue Render ROP 将渲染任务提交到 HQueue 服务器。HQueue Render ROP 还将场景 (.hip) 文件及其依赖的文件拷贝到共享文件夹中。
    此时,美术师可以在 Web 浏览器中打开 HQueue Web 界面来监控任务的进度。
  2. HQueue 服务器将任务分配给客户端机器。
    HQueue 服务器分析任务并将其分配给下一个可用的客户端机器。客户端计算机联系 HQueue 服务器并取得任务。
  3. 客户端机器执行任务并将工作分解为更小的任务。
    客户端机器开始执行任务并从共享文件夹读取输入文件。特别是对于 Mantra 渲染任务,客户端读取 .hip 文件并生成 IFD(场景描述)文件以准备渲染。同时,它还会创建子任务,以执行实际的渲染任务。
    创建子任务的数目通常基于请求渲染的帧数。例如,假设渲染任务是从第 1 到 240 帧,那么 240 个子任务就会被创建,每个子任务被指示从对应的 IFD 文件渲染单个的帧。
  4. 更小的任务被发送回 HQueue 服务器并分发到农场的其他地方。
    客户端机器将新的子任务提交回 HQueue 服务器,它们在那里排队并分配给农场中其他可用的客户端机器。这就是多台机器能够处理同一个渲染任务的方式。
    同时,第一台客户端机器继续为剩余的帧生成 IFD,并为这些帧创建新的子任务。
  5. 执行较小的任务。
    其他客户端计算机并行地执行子任务,并将输出图像写入共享文件夹。
  6. 任务完成了。
    当所有任务完成后,最终渲染的图像会出现在共享文件夹中。美术师可以查看渲染图像并为任何失败的帧重新提交子任务。如果对场景进行了更改,则美术师可以重新提交整个渲染任务。

许可证

HQueue 服务器不需要许可证即可运行。

但 HQueue 客户端必须要许可证才能运行 Houdini 任务。Houdini 模拟任务和 IFD 生成任务需要 Houdini Engine(或等效的,例如 Houdini FX)许可证。Mantra 渲染任务需要渲染许可证。所有其他渲染 .hip 文件的渲染任务都需要 Houdini Engine(或等效的)许可证。

翻译Houdini官方文档:HQueue总览相关推荐

  1. 翻译Houdini官方文档:PDG教程之HDA处理器

    官方文档:PDG Tutorial 3 HDA Processor Part 1 关于这个教程 你将会学到什么 步骤 0 - 拷贝所需的HDA文件 步骤 1 - 观察HDA 步骤 2 - 设置PDG输 ...

  2. 翻译Houdini官方文档:PDG/TOPs介绍

    官方文档:Introduction to TOPs 总览 使用TOPs工作 TOP节点UI Processors(处理器) Mappers partitions(分割) Schedulers(调度器) ...

  3. 翻译HoudiniEngine官方文档:PDG

    官方文档:<Houdini Engine 3.6: PDG> 介绍 PDG 是一套用于对任务进行分配与管理的程序化架构. 使用 Houdini Engine,PDG的功能可以轻松地在其他应 ...

  4. Unity3D 官方文档 UGUI总览 可互动组件的介绍

    版本:unity 5.6  语言:C# 总起: 可互动组件包括按钮.复选框.滑块.滚动条等,本身它们是不可见的,但它们内部有可视化组件. 做UI的时候,如果不需要什么特效本身使用onClick.Add ...

  5. [翻译]ElasticSearch官方文档-安装

    本文翻译自:www.elastic.co/guide/en/el- 本文是Elasticsearch的入门文档,将会介绍ElasticSearch在不同环境下的安装. 安装 Elasticsearch ...

  6. [翻译]ElasticSearch官方文档-执行查询和过滤操作

    本文翻译自:www.elastic.co/guide/en/el- 本文是Elasticsearch的入门文档,将会介绍ElasticSearch中的查询操作和过滤操作. 执行查询 现在我们已经看到了 ...

  7. 翻译: Oralce官方文档-- Data Blocks, Extents, and Segments

    Data Blocks, Extents, and Segments                                                                   ...

  8. 【翻译一下官方文档】邂逅uniCloud云函数(基础篇)

    我将用图文的形式,把市面上优质的课程加以自己的理解,详细的把:创建一个uniCloud的应用,其中的每一步记录出来,方便大家写项目中,做到哪一步不会了,可以轻松翻看文章进行查阅.(此文长期更新连载) ...

  9. Maven介绍(翻译自官方文档)

    1. Introduction(简介) Maven, a Yiddish word meaning accumulator of knowledge, was originally started a ...

最新文章

  1. 神经植入物是如何工作的?
  2. 数学建模学习笔记——微分方程建模
  3. ion-nav-view的学习 和理解
  4. UOJ #586. 旅行问题
  5. 【最简便解法】1069 微博转发抽奖 (20分)
  6. 菲波拉契数列(传统兔子问题)
  7. MySQL数据库select语句的使用方法
  8. python操作MySQL 模拟简单银行转账操作
  9. 每人都有两大炸弹的扎金花2012
  10. HTTP1.0 、 HTTP1.1、HTTP2.0的主要区别
  11. 梅森旋转产生随机数c语言实现,C++生成随机数的实现代码
  12. mysql选择产品和功能_mysql - 产品属性选择
  13. usb网卡android驱动win7+64,万能USB驱动 for win7 64bit v2017.11.15.955
  14. 003-Xshell和Xftp连接CentOS
  15. Collapse search results
  16. FrontEnd前端文件架构
  17. 西部数据硬盘 篇一:绿盘、红盘、蓝盘、紫盘、黑盘和金盘的区别
  18. 学生信息管理系统中系统登录问题
  19. PHP实现无限极分类代码
  20. 性能服务器800,IBM企业存储服务器 ESS800 Global Mirror ®( 异步PPRC)性能研究

热门文章

  1. python字符串转日期函数
  2. Python-图画绘制
  3. 微信支付 postman_微信分付开通入口在这里!教你顺利申请额度!包教包会!
  4. Mybatis面试题整理
  5. 微信红包封面,好玩~,来撸一把
  6. 24小时伦敦金走势图分析方法入门
  7. 用Python编程借助现有量化平台编写股票交易策略和回测分析
  8. idm假冒_如何在Google地图上举报假冒企业名录
  9. python--读取config配置文件
  10. JavaScript基础变量写法/弹窗写法