问题标签 [radiance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1528 浏览

performance - 不同内核版本性能回归原因分析

我在 x86_64 系统上遇到了从 Linux 内核 3.11 到 3.12 的奇怪性能回归。在 Fedora 20 3.12 上运行Mark Stock 的 Radiance 基准测试明显变慢。没有其他任何改变 - 相同的二进制文件,相同的 glibc - 我只是启动了不同的内核版本,性能发生了变化。定时程序 rpict 是 100% CPU 绑定的用户级代码。

在我将此报告为错误之前,我想找出导致此行为的原因。我对 Linux 内核了解不多,从 3.11 到 3.12 的更改日志也没有给我任何线索。

我在两个系统上观察到这一点,一个 Intel Haswell (i7-4771) 和一个 AMD Richland (A8-6600K)。在 Haswell 系统上,用户时间从 3.11 的 895 秒变为 3.12 的 962 秒。在里奇兰,从 1764 年到 1844 年。这些时间可以在几秒钟内重复。

我用 perf 做了一些分析,发现 IPC 的下降与减速的比例相同。在 Haswell 系统上,这似乎是由于更多错过的分支造成的,但为什么预测率会下降呢?Radiance 确实使用了随机数生成器——“更好”的随机性会导致丢失的分支吗?但除了 OMAP4 支持之外,RNG 在 3.12 中似乎不需要更改。

在 AMD 系统上,perf 只是指向更多的空闲后端周期,但原因尚不清楚。

哈斯韦尔系统:

里奇兰系统:

我还查看了两个内核的 dmesg 输出的差异,但没有看到任何可能导致 CPU 密集型程序如此缓慢的任何东西。

我尝试将cpufreq调节器从默认的按需切换到性能,但这没有任何效果。

可执行文件是使用 gcc 4.7.3 编译的,但没有使用 AVX 指令。libm 似乎仍然使用一些 AVX(例如__ieee754_pow_fma4),但这些函数仅占总执行时间的 0.3%。

附加信息:

有什么想法(除了将内核更改一分为二)?

0 投票
2 回答
74 浏览

java - 使用 Java 在 OpenCL 上运行 C 应用程序 - 可能吗?

我只知道用于神经网络、GA 和一些图形界面工作的 Java 知识。我有一个简单的问题是关于 OpenCL + Java + C 的可能性。我知道你可以在 Java 中运行 C,但是我想做的是运行第三方 C 应用程序(我没有源)通过Java,很简单-但由于计算量需要,我想让C应用程序使用OpenCL在GPU上运行-这可能吗?我知道有一些库,例如 JavaCL 等。

理想情况下,工作流程类似于:

1.Java App 强制 C 应用程序使用 OpenCL 在 GPU 上运行。

2.Java App使用Data和Parameters向C应用程序发送命令

3.Java App使用OpenCL库来管理C应用线程。

4.Java App可以初始化多个C app实例吗?

5.C App处理Data并返回给Java App。

6.Java App 可视化数据。

感谢您的任何帮助或建议。干杯,帕特里克。

0 投票
1 回答
174 浏览

rendering - 在双向路径追踪中使用 Skylight 作为光源

是否可以使用双向路径跟踪来渲染室内场景,其中光源是从窗户射进来的天光(没有太阳)?我想我大致知道如果光源是窗口矩形本身作为漫射源是如何完成的,但是如果光源是天窗并且相机在房间里,我无法理解它是如何工作的:它是需要采样的窗户形状还是天穹?光的采样点是从整个天穹中挑选出来的,还是只是从窗户上看到的一点?

0 投票
2 回答
55 浏览

c++ - 自定义问题中奇怪的直接照明

我目前正在实现一个自定义光线追踪渲染器,我坚持直接照明的问题这里我的结果:

正常开灯 在此处输入图像描述

球体正常 在此处输入图像描述

最大值(normalOnLight.dot(sphereNormal),0.0) 在此处输入图像描述

我不明白最后一个结果,我认为第一个和第二个是正确的,但不是最后一个(点..)灯是点灯。

我的点结果是否正确?因为我认为我的 lightNormalOnSphere 和 sphereNormal 是正确的。

0 投票
0 回答
262 浏览

c++ - 如何将色彩空间信息添加到在 OPenCV 中使用“imwrite”创建的 Radiance HDR 格式文件

我使用“cvtColor”函数将RGB色彩空间中的HDR图像转换为CIE-XYZ色彩空间,然后使用“imwrite”函数将图像写入Radiance HDR文件。但是,Radiance HDR 文件的标题仍然显示“FORMAT=32-bit_rle_rgbe”。我应该将什么传递给“imwrite”以确保它正确指定颜色空间?

我遵循本示例中的代码:https ://docs.opencv.org/3.4/d3/db7/tutorial_hdr_imaging.html (色调映射部分除外,这与我的问题无关)。我需要相对亮度信息,所以我尝试使用下面显示的代码将默认位于 BGR 空间中的 HDR 图像转换为 CIE-XYZ 空间。

大多数代码似乎都在工作,并且生成的 HDR 图像似乎已正确转换(从矩阵“hdr_xyz”中的数字判断)。

但是,生成的 HDR 文件“hdr_xyz.hdr”仍然具有以下标题:“#?RGBE FORMAT=32-bit_rle_rgbe”因此,无法使用“imshow”或 Photoshop 等程序正确显示图像。我还尝试过 Greg Ward ( http://www.anyhere.com/ ) 的“hdrgen”程序。它创建的 HDR 文件具有标题“FORMAT=32-bit_rle_xyze”,并且在 Photoshop 中正确显示。我想这是一个简单的修复(但我是 OpenCV 的新手)。非常感谢任何建议。

0 投票
1 回答
27 浏览

radiance - 有没有“你好世界!” 光辉的例子?

几天来我一直在阅读有关辐射的文章,但仍然没有遇到在我看来是一个非常简单的例子。是否可以使用单个光源和单个表面运行某些东西?最简单的例子是什么?