Datoviz:基于 Vulkan 的超高速、高性能 GPU 科学可视化库

Datoviz 是一个跨平台、开源的高性能 GPU 科学数据可视化库,专为大规模数据集的交互式探索而设计。它采用 C/C++ 编写,基于 Khronos Vulkan® 图形 API,并与 glfw 窗口库集成。Datoviz 旨在为 2D 和 3D 交互式可视化提供一个统一的、与语言无关的平台,同时支持 GUI 和通用 GPU 计算。

该库提供了 Python 的原始 ctypes 绑定,并计划作为 VisPy 2.0 的主要 GPU 后端。VisPy 2.0 是一个由 Chan Zuckerberg Initiative (CZI) 资助的科学可视化项目。Datoviz 为科学 2D/3D 可视化应用带来了性能、可移植性和可扩展性,允许对大量数据进行图形化探索。

Datoviz 主要由其首席开发者开发,他在性能、视觉质量和可扩展性方面进行了大量优化。该项目还得到了法国 Inria Bordeaux 的 Nicolas Rougier 的支持,专注于开发一个与后端无关的科学可视化图形协议。

Datoviz:基于 Vulkan 的超高速、高性能 GPU 科学可视化库

问题陈述

科学界越来越依赖跨学科的大规模数据集(通常在千兆字节到太字节范围内),例如生物医学成像、神经科学、天文学、化学和工程学。传统的可视化方法在高效渲染这些大规模数据集并保持高视觉保真度方面存在困难。OpenGL 是科学计算中的常见选择,但在处理大量视觉基元时存在性能限制。为了有效进行科学探索,研究人员需要一个能够满足以下需求的库:

  • 高效渲染数百万个视觉基元,如点、标记、线、图像和体积数据。 
  • 支持平移、缩放、旋转和数据选择的流畅交互。 
  • 保持高质量的渲染,包括对 2D 视觉内容的正确抗锯齿处理。 
  • 为缺乏 GPU 编程经验的科学用户提供简化的 API。

解决方案:Vulkan如何改进现代科学可视化 

Vulkan 是 Khronos Group 提供的一个低级别、跨平台的图形 API,为高性能科学可视化提供了必要的控制力和效率。Vulkan 允许显式控制 GPU 资源,从而实现更可预测和优化的性能。通过利用 Vulkan,Datoviz 实现了以下目标:

  • 细粒度资源管理:Vulkan 的显式内存管理使 Datoviz 能够优化 GPU 利用率,避免基于 OpenGL 的实现中常见的瓶颈。 
  • 大规模数据集的可扩展渲染:Vulkan 的命令缓冲区和并行处理能力使得数百万个点和其他基元的高效渲染成为可能,而不会导致性能下降。 
  • 改进的视觉质量:Datoviz 实现了先进的抗锯齿技术,这是 2D 科学可视化中的关键功能,通常在 GPU 上难以正确执行。 
  • 后端灵活性:通过其轻量级 Vulkan 封装库 vklite,Datoviz 提供了一个更易用但仍强大的 API,使开发者能够更轻松地集成 Vulkan,而无需过多的样板代码。 

“Vulkan 为 Datoviz 提供了卓越的性能和可移植性,使我们能够跨多个平台高效处理大规模数据集。Vulkan 提供了可预测且可靠的性能,使其成为科学可视化的理想选择。显式管理 GPU 资源的能力显著改善了我们的渲染管线,从而加快了数据处理速度并提高了可视化结果的质量。” —— Cyrille Rossant,国际脑实验室(IBL)和伦敦大学学院(UCL)的神经科学研究员和软件工程师表示。

使用 Vulkan 的优势

  • 无与伦比的性能:
  1. Vulkan 的高效渲染管线使 Datoviz 能够以数千帧每秒(FPS)的速度处理大规模数据集。
  2. 显式控制 GPU 同步最小化了开销,从而实现流畅的交互。 
  • 跨平台一致性:
  1. 与 OpenGL 不同,Vulkan 在不同 GPU 厂商之间的不一致性较少,确保在 Windows、Linux 和 macOS(通过 MoltenVK)上的可靠性能。 
  • 针对科学用例优化:
  1. Datoviz 利用 Vulkan 的功能高效处理静态但数据密集的场景,这在科学可视化中很常见。
  2. 显式 API 设计使研究人员能够根据特定数据集需求微调其可视化。 
  • 面向未来和灵活性:
  1. Vulkan 的低级别控制使得更容易将渲染逻辑与底层图形 API 解耦,从而支持未来与其他图形 API 的集成。
  2. vklite 封装库为可能缺乏 GPU 编程经验的科学用户提供了更简单的 Vulkan API。

结论

Vulkan 不仅适用于视频游戏,它还是科学数据可视化的强大工具,使研究人员能够以前所未有的速度与复杂数据集进行交互。Datoviz 展示了如何利用 Vulkan 的功能实现高性能 GPU 可视化,解决大规模科学数据渲染的挑战,同时保持灵活性和效率。通过实现基于 Vulkan 的强大渲染引擎,Datoviz 为交互式科学可视化树立了新标准。它使研究人员能够以精确的方式探索、分析和呈现大规模数据集,确保现代 GPU 的强大功能完全用于科学发现。

作者:Cyrille Rossant,国际脑实验室(IBL)和伦敦大学学院(UCL)的神经科学研究员和软件工程师
原文:https://www.khronos.org/blog/datoviz-ultra-fast-high-performance-gpu-scientific-visualization-library-built-on-vulkan

本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/56993.html

(0)

相关推荐

发表回复

登录后才能评论