Java 光线跟踪器增加了 CPU 使用率



我尝试在Java中实现光线追踪器,一切正常。 有一次,我正在渲染一个场景,我检查了程序的 CPU 使用率。 每个虚拟内核都在使用,但整体 CPU 使用率约为 22-23%

我知道当我用Cinema4D渲染一些东西时,每个虚拟核心都被100%使用。

我怎样才能存档?它会让我的光线追踪器运行速度提高 4 倍吗?(23% -> 100%(

您绝对应该能够达到 100% 的 CPU 使用率,并且在其他条件相同的情况下,这样做应该会导致更快的渲染速度。你显然不是 100% 向我表明你要么没有创建足够的线程,要么你的线程阻塞了某些东西。

我发现最佳点是每个虚拟核心一个渲染线程。您可以使用 API 检测运行时可用的内核数,并生成许多渲染线程。有关这方面的示例,请参阅我的 java 光线追踪器。

每个虚拟内核都在使用,但整体 CPU 使用率约为 22-23%

我不确定你的意思,但你可能想使用性能探查器深入研究它,以更好地了解你的线程如何使用 CPU。理想情况下,您希望每个线程始终工作。我使用 VisualVM 来可视化进程线程。

最新更新