当前位置: X-MOL 学术Astron. Comput. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A GPU-accelerated viewer for HEALPix maps
Astronomy and Computing ( IF 2.5 ) Pub Date : 2023-10-12 , DOI: 10.1016/j.ascom.2023.100758
A.V. Frolov

HEALPix by Górskiet al. (2005) is a de-facto standard for Cosmic Microwave Background (CMB) data storage and analysis, and is widely used in current and upcoming CMB experiments. Almost all the datasets in Legacy Archive for Microwave Background Data Analysis (LAMBDA) use HEALPix as a format of choice. Visualizing the data plays important role in research, and several toolsets were developed to do that for HEALPix maps, most notably original Fortran facilities and Python integration with healpy. With the current state of GPU performance, it is now possible to visualize extremely large maps in real time on a laptop or a tablet. HEALPix Viewer described here is developed for macOS, and takes full advantage of GPU acceleration to handle extremely large datasets in real time. It compiles natively on Intel and Arm64 architectures, and uses Metal framework for high-performance GPU computations. The aim of this project is to reduce the effort required for interactive data exploration, as well as time overhead for producing publication-quality maps. Drag and drop integration with Keynote and Powerpoint makes creating presentations easy. The main codebase is written in Swift, a modern and efficient compiled language, with high-performance computing parts delegated entirely to GPU, and a few inserts in C interfacing to cfitsio library for I/O. Graphical user interface is written in SwiftUI, a new declarative UI framework based on Swift. Most common spherical projections and colormaps are supported out of the box, and the available source code makes it easy to customize the application and to add new features if desired. On a M1 Max laptop, an nside=8192 maps are processed in real time, with geometry effects rendered at 60fps in full resolution with no appreciable load to the machine. Main user-facing delays are limited to CPU-bound cfitsio load times, and sorting needed to construct Cumulative Distribution Function (CDF) estimators for statistical analysis (hidden in background queue). Overall performance improves on the current Python software stack by a factor of 3–180x depending on the task at hand.



中文翻译:

用于 HEALPix 地图的 GPU 加速查看器

Górskiet 等人的 HEALPIx。(2005) 是宇宙微波背景 (CMB) 数据存储和分析的事实上的标准,并广泛应用于当前和即将进行的 CMB 实验。微波背景数据分析传统存档 ( LAMBDA )中的几乎所有数据集都使用 HEALPix 作为选择的格式。数据可视化在研究中发挥着重要作用,并且开发了多个工具集来实现 HEALPix 地图的功能,最引人注目的是原始的 Fortran 工具以及与healpy的 Python 集成。根据 GPU 性能的当前状态,现在可以在笔记本电脑或平板电脑上实时可视化极大的地图。这里描述的 HEALPix Viewer 是为 macOS 开发的,并充分利用 GPU 加速来实时处理极大的数据集。它在 Intel 和 Arm64 架构上进行原生编译,并使用 Metal 框架进行高性能 GPU 计算。该项目的目的是减少交互式数据探索所需的工作量,以及生成出版质量地图的时间开销。与 Keynote 和 Powerpoint 的拖放集成使创建演示文稿变得容易。主要代码库是用 Swift 编写的,Swift 是一种现代高效的编译语言,高性能计算部分完全委托给 GPU,并在 C 接口中插入了一些内容,用于 I/ O 的cfitsio库。图形用户界面是用 SwiftUI 编写的,SwiftUI 是一个基于 Swift 的新的声明式 UI 框架。开箱即用地支持最常见的球形投影和颜色图,并且可用的源代码可以轻松自定义应用程序并根据需要添加新功能。在 M1 Max 笔记本电脑上,nside = 8192 个地图被实时处理,几何效果以 60fps 的全分辨率渲染,对机器没有明显的负载。主要面向用户的延迟仅限于 CPU 限制的cfitsio加载时间,以及构建用于统计分析的累积分布函数 (CDF) 估计器所需的排序(隐藏在后台队列中)。根据当前任务的不同,当前 Python 软件堆栈的整体性能提高了 3 至 180 倍。

更新日期:2023-10-12
down
wechat
bug