没有合适的资源?快使用搜索试试~ 我知道了~
视觉信息学1(2017)106交互式体光线投射的基于预测的负载平衡和分辨率调整Valentin Bruder*,Steffen Frey,Thomas Ertl德国斯图加特大学ar t i cl e i nf o文章历史记录:2017年8月11日收到2017年9月4日接受2017年9月18日在线提供保留字:体积光线投射性能预测负载均衡a b st ra ct我们提出了一个集成的方法,我们采用负载平衡和采样分辨率调整的体积光线投射的实时性能预测。在体绘制中,使用加速技术(例如空空间跳过和早期光线终止等)可能会在用户调整相机配置或传递函数时导致渲染时间的这些变化可能会导致令人不快的效果,例如在交互式探索期间突然降低的响应性或不平稳的运动为了避免这些影响,我们提出了一个综合的方法来适应渲染参数,根据性能需求。我们评估性能相关的数据上的飞行,我们提出了一种新的技术来估计早期射线终止的影响。在此数据的基础上,我们引入了一个混合模型,以最小的计算足迹实现准确的预测我们的混合模型结合了分析性能建模和机器学习的各个方面,目标是结合各自的优势。我们展示了我们的预测模型在两种不同用例中的适用性:(1)动态控制对象和/或图像空间中的采样密度,以及(2)在几个不同的并行计算设备之间动态分配工作负载。我们的方法允许可靠地满足性能要求,如用户定义的帧速率,即使在突然的大变化的情况下的传递函数或相机的方向。2017浙江大学出版社由爱思唯尔公司出版这是一个在CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍体积可视化是一种广泛使用的工具,用于物理,工程,生物等许多不同领域的测量和模拟数据的可视化。通过使可视化应用的用户能够与体积数据动态地交互,可以获得超出初始焦点的附加洞察。因此,经典的用户交互是对传递函数(其将密度值映射到颜色)的调整以及对相机配置(例如,旋转和缩放)。 通常有两个主要因素有助于在体数据集的交互式探索期间获得令人满意的用户体验:低响应时间和高渲染质量。虽然后者可以通过采用数据集的高采样来实现,但低延迟和高帧速率对于响应时间至关重要。在 最近恢复用于科学应用的虚拟现实的背景(Laha等人, 2012年),保持高和稳定的框架通讯作者。电子邮件地址:valentin. visus.uni-stuttgart.de(V. Bruder)。浙江大学和浙江省负责同行评议University Press.http://dx.doi.org/10.1016/j.visinf.2017.09.001率以及低乳酸盐获得甚至更重要。在这些应用中,可变的帧速率往往会导致令人不快的副作用,例如对许多用户的电脑病为了能够在工作站上获得交互式的帧速率,通常使用GPU来加速计算和渲染。除了用于计算的硬件之外,交互地改变参数(即,传递函数和相机配置)对渲染性能具有显著影响为了实现恒定的交互性,需要考虑性能的那些变化,特别是在帧之间具有显著变化的挑战性情况下(例如,切换到不同的传递函数)。吸收这种效应的一种方法是调整对象或图像空间中的采样密度。然而,在交互式应用程序的情况下,这种调整的基础必须是对性能在即将到来的帧中(在潜在的大变化之后)如何演变的某种评估,以避免令人不快的长响应时间或不稳定的运动。由于体绘制算法的复杂性,预测并行硬件上体绘制的性能许多因素对绩效有显著的、不明显的影响例如,这包括用于2468- 502 X/©2017浙江大学和浙江大学出版社。由Elsevier B. V.发布,这是CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表视觉信息学期刊主页:www.elsevier.com/locate/visinf*诉Bruder等人/视觉信息学1(2017)106107并行计算,以及在运行时可能改变的特定算法和参数配置我们提出了我们的方法来动态预测性能的体积光线投射应用程序,使用流行的加速技术。为了展示我们的技术的可用性,我们提出了两个基于我们的帧时间预测的用例。在第一种方法中,我们使用预测来动态调整体绘制过程的采样率,以可靠地满足用户定义的帧目标(即,交互帧速率)。因此,我们可以调整射线空间中的采样率(沿着射线的积分步长)以及图像空间中的采样率(图像分辨率,即光线的数量作为第二个用例,我们在多个异构GPU之间动态分配计算负载,并根据我们预测的帧执行时间来平衡此负载。在接下来的部分中,我们给出了相关工作的概述(第2节),然后我们讨论了我们认为是我们工作的主要贡献。我们提出了我们的一般方法的性能预测和调整的采样率在图像和射线空间(第3节)。它基于以下组件:评估光线投射加速技术的性能关键数量,包括早期光线终止(ERT)和空空间跳过的影响(第4节);使用混合性能模型实时预测即将到来的帧的执行时间(第5节);以及实时地在多个设备之间平衡计算负载以及将渲染质量转向用户定义的帧速率(第6节)。据我们所知,在线预测体积渲染性能在我们的会议论文之前尚未发表(Bruder等人, 2016年)。这篇文章是这篇文章的扩展版本详细地说,与我们的会议论文相比,扩展不同GPU之间的负载平衡作为附加用例,图像空间中的分辨率调整,也与光线空间中的调谐相结合,以及小的改进和增加,例如局部照明。我们在第7节中介绍和讨论结果,并在第8节中总结我们的工作。2. 相关工作体积可视化和帧速率自适应。体视化是科学可视化研究的一个核心课题。最近,光线投射已被证明是最常用的技术之一,其并行性质支持GPU和分布式实现(Engel等人, 2006年)。Salama等人 (2009)给出了基本体绘制技术的概述,从而重点介绍了我们也使用的照明和加速技术。由于高分辨率数据集的计算需求,许多工作都集中在分布式体绘制上Beyer等人讨论了用于交互式大规模体可视化的GPU技术的当前状态。(2015年)。特别是对于分布式渲染,负载平衡起着重要的作用(Ma等人,1994; Marchesin等人,2006年)。在这种情况下,Fogal et al. (2010)讨论并研究了他们工作中负载平衡的不同算法,而Mülleretal. (2006)论证了在分布式渲染期间缩放部分体积数据集严重损害负载平衡。为了应对这种影响,它们动态地重新组织集群中的数据分布关于何时将数据移动到另一个节点的决定基于简单的成本函数和前一帧的实际负载。虽然作为负载平衡基础的这种成本函数通常在逐渐变化的情况下工作良好,但是突然变化(例如,由于快速调整的传递函数)不能被充分地处理,从而引起显著的负载不平衡和性能下降。渲染系统通常在用户交互期间固定图像质量或帧速率。有一些技术旨在保持稳定的帧速率,基于图像的渲染,包括我们所做的,以及我们的预测模型的一个应用程序。Shen和Johnson(1994)、Qu等人(2000)和其他人重新使用来自先前帧的像素值,并使用以实现稳定的帧速率。Wong和Wang(2014)对于实时渲染应用具有相同的目标,但是使用由其成分的使用人工神经网络和模糊模型,以及不同的渲染过程的详细描述相比之下,Woolley等人(2003)通过使用基于图像空间距离的度量来引导渐进式光线跟踪,从而采取了更简单的方法。Frey等人(2014)使用渐进的方法来引导体积可视化过程,从而专注于资源管理,响应时间和采样误差。然而,与我们的方法相比,这些技术都没有基于对执行时间的动态预测来调整性能预测。在并行体系结构的应用性能预测和建模然而,目前的研究大多局限于系统架构和高性能计算领域,而交互式可视化计算领域的研究相对较少,它有其自身的特点和挑战已经提出了各种不同的方法用于性能建模,包括性能骨架(Sodhi等人,2008)、回归(Barnes等人,2008)、遗传算法(Tikir等人,2007)和机器 学 习 ( Lee 等 人 , 2007 年 ) 。 这 些 方 法 主 要 针 对 大 规 模(HPC)系统中的性能预测。然而,视觉计算应用程序具有与那些系统不同的特征,因为它们通常严重依赖于交互。用于性能建模的数据通常来自特定的硬件特性,例如每秒(并行)计算操作和内存带宽;或者来自经验测量,例如帧执行时间和性能计数器。将后者与分析模型结合使用已被定义为“半解析”模型(Hoefler等人,2011年)。在我们的方法中,我们采用机器学习模型从执行时间测量中学习,并根据体积光线投射算法的已知属性将其因此,我们认为它是这样一个半经验模型.GPGPU与GPU体绘制有许多相似之处,目前存在各种离线性能 建 模 工 具 。 Madougou et al.( 2016 年 ) 。 Amarísetal.(2016)比较了不同的机器学习模型,即线性回归,支持向量机和随机森林与基于BSP的分析模型,用于GPU执行时间预测任务。相比之下,结合实时性能预测的实时渲染或科学可视化的工作非常稀少。所提出的技术主要集中在可视化管道的性能模型(Bowman等人, 2004)或对象顺序渲染算法(Wimmer和Wonka , 2003; Tack 等 人 , 2004 年 ) 。 Ganestam 和 Doggett(2012)执行交互式光线跟踪的自动调整,从而使用分析GPU架构模型作为基础。与我们的工作相比,他们的方法主要集中在光线跟踪上,虽然他们的模型在某种程度上包含了缓存效应,但其他硬件级·······108诉Bruder等人/视觉信息学1(2017)106→:[客户端][客户端]算法,如搅拌,不包括在内。相比之下,我们的模型通过机器学习方法隐含地涵盖了这些影响。特别是对于集群上的体绘制,Rizzi等人。 (2014)提出了一种用于结垢的离线预测的分析模型。它们预测整个过程中每个部分的时间,并将其汇总为整体预测。 其他作品专门集中于来自不同节点的图像的合成(Eilemann和Pajarola,2007; Yu等人, 2008)在分布式体绘制中的应用,并从理论上分析了其性能。我们的方法主要不同于上述方法,因为我们专注于在线性能预测。此外,我们的目标体积光线投射在工作站环境中。3. 概述我们执行体积光线投射与前后合成。对于加速,我们采用早期射线终止(ERT)以及广泛使用的技术对象顺序空的空间跳跃我们还实现了基于梯度的局部照明,具有全局定义的这些梯度是动态评估的,在我们的光线投射过程中使用中心差异,以限制内存需求。我们的技术的核心是一个混合模型,它能够预测即将到来的帧的执行时间,并基于此预测调整对象和图像空间中的采样密度 图 1给出了我们的方法的概述。所有处理步骤的核心是用户交互(参见图1中的顶行):加载新的体积数据集、改变传递函数以及旋转或缩放相机。加载数据时设置,体积分为粗块(我们使用的分辨率为16- 3体素每块在本文中)。我们为这些体积块中的每一个计算密度直方图H,其表示标量密度值在其相应块中的分布。只有当体积数据集改变时,直方图H才必须被更新在下一步中,我们使用传递函数的用户选择的不透明度通道Tα从密度分布直方图H导出不透明度直方图Hα。同样,每个块有一个不透明度直方图Hα,但在这种情况下代表不透明度分布,而不是密度分布。每当用户更改传递函数时,必须执行此步骤。通过直接评估不透明度直方图,我们确定下采样体积的哪些块是空的,并使用该信息来生成用于空空间跳过的边界几何形状G我们使用OpenGL来渲染G,并在单个渲染过程中确定边界几何体G的最前面(D前面)和最后面(D后面)片段这些深度值用作光线进入点和退出点。为了在我们的预测模型中结合ERT的估计效果,我们进一步将深度值D调整回D′ERT。背景下在有多个计算设备可用于渲染的情况下,我们支持使用我们的预测进行负载平衡。为此,我们基于适配的采样率相应的图像分辨率来适配可用设备之间的负载分布Λ和深度估计D′ERT。接下来,我们实际上对体积,通过使用获得的X射线(射线和/或图像空间)值以及载荷分布Λ。最后,我们通过添加在实际光线投射期间评估的ERT之后的执行时间t和实际深度DERT的测量值来更新我们的预测模型M4. 收集与业绩有关的数据物体顺序空空间跳跃和早期光线终止(ERT)是两种广泛使用的体光线投射加速技术。我们特别关注这些,以进行绩效评估。在本节中,我们将描述我们收集与这些加速技术相关的数据的方法我们根据我们的评估,以及实际的空白空间跳过-平上的一个粗略的体积表示。为此,我们将体积划分为每个16个3体素的块,并计算每个体素的密度直方图(参见第4.1节)。直方图数据用于确定光线进入点和离开点,其在不考虑ERT的情况下定义深度D(参见图10)。第4.2节)。我们使用这些值进行预测以及实际的光线投射加速。在第4.3节中,我们讨论了如何将ERT效应的估计纳入我们的模型中,该模型基于每个块的不透明度直方图Hα。4.1. 体积块直方图(H和Hα)当加载体积数据集V时,我们逻辑地将体积划分为16× 3体素的粗块。使用包含在相应块中的所有标量值,我们生成密度直方图H。在我们的实现中,这些直方图的大小为64个bin,应用传递函数后的透明度是使用空空间跳过的体光线投射性能的关键因素我们通过应用不透明度传递函数Tα从每个密度直方图计算不透明度直方图HαRR. 因此,我们将计算值分布到16个区间中,主要是因为它在我们的ERT近似步骤期间更有效,而不会对估计性能产生太大影响(参见图11)。第4.3节)。原始密度直方图H中的每个箱b表示密度范围vmin、vmax。我们从H生成H α,基本上是通过循环这些bin b。因此,我们在vmin,vmax范 围 内 与用户定义的(不透明度)传递函数T α(b)进行积分,得到不透明度值b α:最大值b∈H:bα=Tα(b)可以选择我们旨在实现的目标帧速率T_target,并且在用户探索期间始终保持该目标帧速率T_target。作为参数,我们可以调整沿每条光线的采样率和/或光线的数量,以基本上权衡渲染质量和性能。为此,我们遵循迭代优化方法,通过循环以下操作,直到我们近似预测目标帧速率:我们估计,D′ERT和我们的模型M的基础上,t′,这将是用当前步长和/或分辨率ω来实现的。如果预测t′接近t目标,则停止自适应。否则,我们计算新的步长和/或分辨率候选。然后,这些不透明度值bα用于选择Hα的相应不透明度直方图箱bα,我们将来自密度直方图H的原始箱b的相应元素的数量添加到该箱bα。我们为每个体积块生成一个不透明度直方图。由于我们使用密度值以及传递函数,因此每当用户加载新的体积数据集或更改传递函数时,都必须执行此过程。4.2. 深度评估(D前/后)空的空间的量取决于体积characteristics以及所选择的传递函数。我们使用我们的不透明度映射直方图Hα(参见第4.1节),以实现对象顺序空空间跳过。为此,我们预处理一个··在本文中,我们专注于实现交互式的,稳定的帧速率为单节点体绘制应用程序。为此,用户·v最小值诉Bruder等人/视觉信息学1(2017)106109Fig. 1. 自适应体绘制过程概述。顶行描述了触发数据生成和评估方法的可能的用户交互(第二行)。下半部分显示了我们的预测和参数调整方法。负载分布的自适应(灰色)仅用于多GPU设置。该体积的边界几何形状以确定比通常使用的边界长方体更接近可见数据的进入点和退出点。为了确定代理几何体的块是否可见,我们使用不透明度映射的块直方图Hα,通过简单地评估非透明体素的bin中是否有值。我们为最外面的体素的表面生成四边形,从而创建体积壳的多边形网格。我们使用最小混合方程来渲染这个几何体通过将最小深度和求反的最大深度值写入帧缓冲区,我们可以在单个渲染过程中生成这两个值。通过使用这种方法,我们不能跳过卷内的空白空间(即,我们的边界外壳)概念上。这种限制可以通过使用具有多个渲染通道的双深度剥离方法来规避,代价是更高的开销时间(这仍然是未来的工作)。深度评估步骤(即,光栅化)必须在用户改变照相机参数时执行,而边界几何的生成仅在传递函数或数据集改变时执行。4.3. 早期射线终止(DERTD'ERT)早期光线终止(ERT)是一种简单的方法,可能会导致巨大的性能增益体光线投射。实际的然而,相比简单的方法,先验估计的实际性能增益是不平凡的。这源于可能的估计不能局部求解的事实(例如,在每个块的基础上),与深度估计相反。这意味着我们必须考虑沿着射线的全部然而,为了在合理的时间内实现ERT对深度段D的影响的这种估计,我们实现了我们的标准光线投射过程的修改版本图2通过使用两种颜色进行区分,概述了估计过程以及我们的一般光线投射算法这里,橙色块仅指示ERT估计运行的执行(图2,下半部分),而蓝色块仅指示ERT估计运行的执行(图2,下半部分)。在实际的体绘制过程中进行处理(图2,上半部分)。首先,我们初始化不透明度和光线开始位置。对于实际的光线投射,我们还初始化了颜色值,而对于ERT估计,我们使用线程id为我们的伪随机数生成器(PRNG)创建种子。在设置阶段之后,我们处理我们的光线投射循环,在该循环中,我们通过使用步长在深度d处沿着相应的光线R以前后顺序进行- 是的采样从D前缘开始,这是我们的深度评估确定的入口点第4.2节),并且我们采样直到我们回到D或者不透明度超过ERT阈值。对于实际的体绘制,我们从数据集中获取相应的标量值并应用传递函数,从而得到颜色和不透明度值。对于ERT估计预运行,我们使用不透明度块直方图Hα(我们也用于深度评估),而不是对体积数据进行采样。更详细地说,我们从使用混合Tausworthe RNG生成伪随机数τ开始(比较Nguyen,2007)。接下来,我们相对于射线R(d)上的采样位置确定我们当前所在的块。使用该块的不透明度直方图Hα(R(d))和τ,我们随机绘制不透明度值α。因此,我们根据其大小对每个直方图箱进行加权。使用不透明度直方图Hα背后的核心思想是以与实际渲染相比成本节省尤其源于大大降低的I/O成本,由于体绘制的典型存储器受限性质,I/O成本特别高在我们的实现中,我们使用16字节直方图,每个块每个bin一个字节(一个块聚合16个3体素)。这样做的优点是,整个直方图可以使用GPU上的单个提取操作来获得由于纹理缓存,这在多个光线中也是非常快的通过使用不透明度直方图值的随机采样,我们考虑了实际不透明度值的统计分布,从而旨在更接近地再现实际光线投射。我们还沿着射线更粗略地采样,这也有助于显着降低计算成本相比,全体积渲染。在这两个光线投射过程中,我们根据使用的步长大小调整不透明度。这有两个原因:我们对不透明度直方图进行采样110诉Bruder等人/视觉信息学1(2017)106我=图二、使用采样距离沿光线的前后光线投射。橙色步骤仅用于ERT估计(如第4.3节所述),蓝色步骤仅用于实际渲染。对于具有比实际光线投射低得多的频率的ERT估计,这就是为什么我们必须调整不透明度,以使它们直接对应于彼此。其次,由于步长可以动态调整(见第6节),因此在使用不同步长时(除了欠采样效应),校正对于产生类似结果如果累积的不透明度χα超过定义的阈值(光线提前终止)或沿光线的采样退出代理几何体,则光线投射循环终止。在任何一种情况下,我们都使用深度值作为ERT估计值或训练数据。在实际渲染中,我们自然地呈现像素颜色值。5. 混合性能模型我们使用混合性能模型来执行即将到来的帧的执行时间我们的模型可以被归类为Hoefler等人,2011),因为我们使用了先前执行时间的经验测量以及我们的VOL-RAYCASTING算法的已知属性为了学习特定于硬件的特性,例如缓存或搅拌算法,我们采用了基于执行时间测量的机器学习模型我们模型的这一部分有效地学习和估计了平均值光线投射期间每个样本的成本σ(第5.1节)。将该近似样本成本与估计的每射线深度D′ERT(第4节)相结合,我们预测渲染即将到来的第5.2节)。5.1. 机器学习:预测样本成本σ我们决定使用机器学习技术主要是基于两个特定的要求。首先,学习算法必须足够快以实时工作,即也可以进行训练因为评估必须比单帧执行快得多。第二,该技术应该能够执行非线性回归.我们决定采用核递归最小二乘法(KRLS)作为技术,因为它满足我们的两个要求,这是非常简单的,但仍然显示了令人信服的预测结果(Engel等人,2004年)。Dlib机器学习库(King,2009)提供了我们在模型中使用的KLRS的实现在采用多个设备进行渲染的情况下,一个单独的机器学习模型用于每个设备由于KRLS算法的性质,权重不能在不同运行之间直接转移,即,我们必须为每个数据集建立一个新的模型。KRLS是一种基于内核的回归算法,能够在运行时动态地包括用于训练的测量样本,并且不需要任何先前的训练序列。通过使用添加Mercer核的递归最小二乘(RLS)算法,实现非线性回归。RLS算法的核心是一个优化问题(其解在每帧都被保持),以通过如下最小化来找到权重w这里,(xi,yi)是一对训练点,其中xi表示特征向量,yi是目标标量值。“遗忘因子”λ可以用于对较旧的样本给予指数级更小的我们使用线性径向基函数作为核函数,因为它们具有广泛的灵活性。我们想要预测的目标标量值是样本成本σ,而我们的特征向量由几个属性组成,我们判断这些属性对σ值有重要意义:视角,我们直接从我们的arcball相机的旋转。其中,它们影响性能,因为不同的纹理各自的内存访问模式所造成的角度。飞溅体素的大小可能会对纹理缓存产生重大影响,并且还随视图距离和分辨率而变化。这是我们的调整参数之一沿射线的步长具有与溅射体素的大小相似的属性,但在射线空间中。它也是定义总体样本数量的调优参数之一更改的缓存模式也可能影响性能我们的ERT预渲染近似步骤的执行时间,这实际上是对渲染时间的粗略估计。最大射线深度作为最大翘曲/波前处理时间的可能指标。在当前的GPU上,单个warp/wavefront中的所有线程(通常是32或64个)都以锁步方式运行,这意味着它们必须全部停止,直到 warp/wavefront中的最后一个线程完成。总体而言,这些特征反映了影响硬件级别性能的特征,例如不同的纹理访问模式(Bethel和Howison,2012)。请注意,所有特征都是已经可用的值,或者可以用最小的计算占用来计算,因此非常适合我们的体绘制应用程序的在线预测。Dlib提供的KRLS实现为我们提供了更改最大字典条目数(用于表示回归函数)的参数、容差值和RBF核函数的γ参数的可能性我们通过使用网格搜索自动调整方法确定了以下一组井工作参数:γ 0。00025,容差为0.006,字典限制为1000万个条目。5.2. 分析模型:预测帧执行时间结合我们用于空白空间跳过的代理几何(参见第4节)与步长和图像分辨率,我们可以计算在即将到来的帧的光线投射期间将要进行的采样数量为此,我们使用在代理几何体的渲染过程中生成的2D纹理minW(∑iλn−i(yi−xT×w)2)(一)并生成该纹理的完整MIP贴图堆栈。该堆栈的最顶层有效地包含平均最小和最大深度值dfront和dback。结合我们·····诉Bruder等人/视觉信息学1(2017)106111∆=−∑×=·+·j= 1,j=i=⎪t′uppert目标⎩⎪估计每个样本的成本σ(见5.1节),我们可以计算总帧执行时间t′的估计值:t′=7·(d后-d前)·σ。简单地说,我们计算平均射线长度l dbackdfront(其中dfront表示射线进入点,dback是射线空间中的估计终止深度将值l除以我们的步长,得到每射线的平均采样数,我们将其乘以因子7(一个RGBA值,加上六个用于中心差分的梯度估计),以及每个样本的成本σ,最终获得总渲染时间t′的估计值。6. 预测参数整定我们的实时性能预测模型为我们提供了各种用例的基础。在本文中,我们提出了两个不同的情况下,我们的交互式体绘制应用。首先,我们使用我们的模型来动态地引导在光线空间以及在图像空间中的采样分辨率或体积光线投射应用,目标是实现恒定的帧速率,从而实现高响应性和/或执行效率。其次,我们使用我们的在线预测来动态分配和平衡多个不同GPU之间的计算负载6.1. 采样分辨率我们的采样分辨率自适应例程的核心是目标帧速率的定义。通过动态调整表1用于测试的所有体积数据集的名称、分辨率和标量精度。代表性的效果图如图所示。 四、体积分辨率[体素]精度[位]Courtesy Chameleon 1024× 1024× 1024 16 UTCTHoatzin 1024×1024×729 16 UTCT翠鸟1024× 1024× 885 16 UTCT鼠标1024× 1024× 975 16 UTCT鹦鹉1024× 1024× 340 16 UTCTZeiss 640×640×640 8Daimler AG花1024×1024×1024 8 UZH不会对性能产生任何负面影响,只会对质量产生影响。这背后的原因是,我们认为系统始终响应是很重要的但是,如果系统严重低估了性能影响,应用程序可能会变得无响应,因此在内核运行完成之前无法适应更改。另一方面,如果系统高估了性能,它可以快速重新调整以获得更好的质量。6.2. 负载平衡作为第二个用例,我们使用我们的预测模型在多GPU设置中进行负载平衡。在概念上,我们使用单独的机器学习模型Mi(cf.第5.1节),为每个可用计算设备i生成不同的样本成本估计σi。我们使用等式(1)计算n个计算设备的负载分布Λi(3):采样率在光线空间和/或图像空间,我们的算法尝试为了在用户探索期间一致地实现目标帧速率(1−1)我nσjnΛ定量配给。我们使用采样n作为调优参数,k=1σk在光线空间自适应的情况下,沿光线的分辨率,或者在图像空间自适应的情况下,x和y方向上的图像分辨率。我们还支持同时调整两个参数的混合方法。基本上,我们遵循迭代优化方法,在每次迭代期间使用线性外推和二分法:基本上,我们将所有设备的采样成本σi相乘,一个正在计算的,并将所得产品除以所有抽样成本的总和表示阻尼因子,我们使用它来避免负载平衡期间出现的振荡效应。通过使用网格采样方法,我们确定阻尼系数为0。5以获得最佳测试结果上目标如果测试目标高于测试目标数据集。我们将图像空间划分为每个大小为8 8像素的2D瓦片,以避免扭曲/波前发散(通常为扭曲如果t下限>t目标,则t= t下限·t′下限下图+(下图目标−下图)×(二)在NVIDIA GPU上有32个线程的大小,在AMD上有波前GPU 64线程)。然后,我们使用k-d树来分布图块t目标 −t′lower上部 −t′lower其他在可用设备中,基于每个瓦片以及所确定的每个设备的负载分布Λi为这样,我们就可以使用渲染的代理几何体由方程式(2),t′upper和t′lower表示最小的(相应的最大)估计定时低于(相应高于)T目标。类似地,上半部分和下半部分代表各自的采样分辨率。我们使用相同的方法来调整图像以及射线空间中的注意,在图像空间自适应的情况下,我们相对于飞溅体素的大小进行归一化,同时还考虑二次图像分辨率自适应。为了调整沿着光线的采样距离,我们还考虑了用于评估梯度的额外样本,这是我们需要的局部照明。此外,我们采用一般假设(如在等式中(2)采样分辨率对性能有近似线性的影响新的候选决议射线和/或图像空间中的插值是经由线性插值生成的,如等式(1)的else分支中所(二)、此外,本发明还 我们 介绍 一 固定 最大 适应性最大0的情况。8每帧,以避免过度补偿。 这种形式的阻尼还有助于避免可能由高估的采样分辨率调整导致的滞后我们只在提高分辨率时使用此限制,因为过度降低它会导致纹理(见4.2节),更准确地说,第三个mipmap层,这与我们的瓷砖大小相对应 图 3展示了四幅效果图在用户交互序列期间的花数据集,其中三个不同的GPU之间的图像空间分区已经通过颜色通道编码注意,ERT的影响显著影响在运行时期间动态调整的负载平衡7. 结果我们使用表1中提供的多个体数据集来评估我们的方法(数据集的代表性渲染见图4),并将结果与没有任何参数调整的体raycaster以及其他两种自适应方法进行比较不适应。相对于体素长度的固定步长以及每条射线一个像素用于采样。我们使用我们的方法预测每个帧的执行时间,但不调整任何参数。·(三112诉Bruder等人/视觉信息学1(2017)106×图三. 在Flower数据集的交互序列期间,针对不同配置的三个GPU之间的负载平衡分布(参见表1)。GPU的颜色编码:Titan X(Pascal)为红色,GTX 980为绿色,GTX 960为蓝色(参见表2)。负载分布是动态适应见图4。 用于评价的数据集的代表性渲染图,按表1排序。我们的适应。我们使用我们的方法来预测即将到来的帧的执行时间,并相应地控制步长和/或图像分辨率。最后一帧。在这里,我们根据最后一个渲染帧的执行时间调整体积的采样。两个传球。两个渲染通道进行,作为一个非常简单的形式渐进渲染。在第一个过程中,最后一帧的四分之一采样参数用于渲染。在执行时间较短在目标帧时间的一半以上,我们根据剩余的渲染预算线性外推采样参数,并进行第二次渲染。我们用两种不同的设置来评估我们的方法单GPU系统(A)以单数据集为例测试一般性能特征。评估包括帧时间图的分析(第7.1节),我们的近似和预测的整体准确性(第7.2节),以及我们的预测模型的计算开销(第7.3节)。多GPU系统(B),具有三个不同的GPU来评估我们的方法,包括负载平衡。我们将我们的技术与其他多体数据集的技术进行比较(第7.4节),详细分析我们的负载平衡(第7.5节),并比较图像空间,射线空间和混合(第7.6节)中的自适应。对于所有自适应模式,帧目标分别设置为30 FPS(A)和40 FPS(B),这通常被认为是相互影响的。我们使用上述四种模式记录了30 s长的用户交互序列以进行比较。这些序列包含了传递函数的变化以及摄像机的旋转和缩放。在图2A和2B中示出了以这样的顺序呈现不同配置的样本。5(c)-(f). 用于预测的机器学习模型在每个序列执行后重新训练我们在一个工作站上进行了所有的测量,该工作站具有IntelCore i7-6700 CPU、16 GB RAM和一个(A)或三个(B)图形卡,运行Linux。表2列出了我们用于渲染的三种GPUGTX 680用于单GPU情况,而其他用于评估负载平衡。7.1. 使用单个GPU的图图5(a)示出了用于呈现长尾小鹦鹉数据集的序列的帧时间图(参见图5(a))。表1)在四种不同模式下(a) 不同适应模式下的帧时间。(b) 具有不同自适应模式的步长。(c)框架20。(d)第21帧(e)框架95。(f)框架96。图五. 图(a)显示了以长尾小鹦鹉数据集为例的单个序列。我们的方法的帧时间(红色)与基于在最后一帧自适应(绿色)、两遍自适应(黄色)和无自适应(蓝色)上。相应的步长可以在(b)中找到,较小的步长意味着较高的质量。在(c)单个GPU(场景A)。黑色标记线表示30 FPS的帧目标。为了比较,图5(b)示出了相应帧的对应步长因子(相对于体素长度)。我们使用固定步长0。75体素的长度为用于没有自适应的模式的步长(参见,蓝色线图5)。从图中可以看出,不使用自适应会导致与目标帧速率的显著偏差。尤其如此对于传递函数的改变,例如帧20和95(参见,渲染图5(c)- 5(f))。即使是传递函数·····诉Bruder等人/视觉信息学1(2017)106113×表2用于测试的GPU的核心规格。GPU(NVIDIA)核时钟[MHz]Mem. [GB]班杜[GB/s]GTX 68015361006–10584192一Titan X(Pascal)35841417–153112548BGTX 98020481126–12164224BGTX 96010241127–11784112B可能会对性能产生重大影响。当体积的大部分变得(完全)透明或不透明时,就是这种情况较小的偏差通常是由于在典型的用户交互过程中对相机配置的更改非常平滑而导致的相比之下,当使用基于我们模型的自适应时,帧时间保持在目标附近,即使在传递函数发生较大变化的情况下也是如此。同时,可以实现总体上更高的采样率。请注意,我们的机器学习模型是动态训练的。然而,我们的方法的帧时间也显示了一些执行时间较短的离群值。这些主要是由于我们对更高采样分辨率的保守适应造成的(参见。第6.1节)。一些异常值也可以追溯到低估或高估的影响(见第7.2节)。较小的偏差可能是由我们基于机器学习的样本成本估计σ′引起的。总体而言,没有显著的离群值具有较长的帧时间,这意味着在序列期间,交互性被授予,从而为用户提供相比之下,基于最后一帧(绿色曲线)的自适应模式显示了巨大的帧时间尖峰,这可能导致用户探索期间的响应性差和运动不稳定这些异常值主要是由传递函数的变化引起的,最后一帧方法无法通过设计处理(基本上,它有一个帧延迟)。对于这些情况,最后一帧模式的采样密度自然更高,而与我们的预测技术相比,采样密度处于相似的水平我们还将我们的方法与双通模式(黄-低曲线)进行了比较。这种模式具有优势,并且几乎从未超过帧目标。然而,这种技术的主要缺点是采样率低得多,最终导致整体渲染质量较低。这是由于每个帧的渲染预算较低造成的,因为预渲染通道的时间这意味着,通常对于这种两步方法,不能充分利用可用的渲染时间,因为第一遍的结果对渲染结果没有贡献。7.2. 近似和预测的准确性图图6(a)显示了我们的预测(红色)与第7.1节中相同渲染序列的样本成本σ的测量(蓝色)相比的差异,以显示我们方法的一般效率。可以看出,我们的机器学习模型在学习了几个样本(30帧)后就能够对样本成本做出相当准确的预测这些差异也反映在总体预测中(参见图5(a))。图图6(a)还示出了每条射线的样本的估计数量与测量数量(绿色)之间的差异。在这里,差异是由于低估或高估了早期光线终止对样本数量的影响这可能是因为我们的概率估计方法可能会产生一些困难的情况下不正确的结果。为了研究我们的深度估计(包括ERT)的效率,图6示出了Hoatzin数据集(e)的绘制的测量(b)、我们的估计(c)和差异(d(d)的强度已按因子4缩放以强调 差异可以看出,总体深度估计是(a) 样本计数和成本的近似效率。(b) 真的(c)估算。(d)差值×4。(e)渲染。图六、曲 线图(a)描绘了在Parakeet序列的示例中,每条射线的平均样本(绿色)和样本成本σ(蓝色/红色)的估计准确度(参见 图 5)。对于Hoatzin数据集,比较测量的射线终止深度(b)和我们的估计(c)(两者都映射到灰度值)(参见表1)显示。子图(d)示出了具有4个强度的(b)和(c)的差异,而(e)示出了相应的渲染。相当准确,虽然有一些差异,主要是在边缘。这是由于代理几何体(用于预渲染步骤)和原始高分辨率数据之间的差异造成的。我们的随机方法可能会导致其他差异第4.3节)。7.3. 预测模型我们的预测方法的一个重要方面是实时能力。这意味着计算开销明显低于实际渲染体数据。我们明确地设计了我们的管道,以提供交互式探索功能,例如在CPU上完成的训练,以及交叉运行的预处理。此外,从概念上讲,可以在与实际帧计算不同的设备上进行预处理步骤(即,深度评估和ERT近似)。例如,可以使用集成在CPU中的GPU进行预处理步骤,并使用一个或多个专用图形卡进行渲染。表3给出了执行我们对变色龙数据集的预测所需的各个步骤的处理时间上限的概述(参见表1)与10243体素的NVIDIA GTX 960(最慢的测试GPU)。图 1对各个步骤进行了结构化概述。如表3所示,即使对于单个中端GPU,我们的预测模型的计算开销也很低。对于分辨率为1024 ×3体素的测试体积,生成边界几何形状(仅在改变传递函数时需要)和执行深度评估的组合执行时间约为6 ms,仅为训练和预测甚至更快。总的来说,测量显示出可接受的计算开销,114诉Bruder等人/视觉信息学1(2017)106×t=1tt.(四)n表3详细的最大运行时间测量步骤需要我们的预测在NVIDIA GTX 960上运行超过一分钟的时间和超过1000个学习样本后。行动时需要最
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功