arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2406.01409cs.DC
收藏

HPC系统上Dask与Apache Spark在神经影像处理中的性能比较

Performance comparison of Dask and Apache Spark on HPC systems for Neuroimaging

Mathieu Dugré, Valérie Hayot-Sasson, Tristan Glatard

AI总结:

本文在HPC系统上比较了Apache Spark和Dask处理神经影像管线的运行时性能,发现两者性能相当但Spark内存占用更高,数据传输时间是主要瓶颈。

摘要:

数据规模和数据共享的普遍增长促使多个科学学科采用大数据策略。然而,尽管有多种可用选项,但尚无选择大数据引擎的具体指南。本文比较了两种带有Python API的流行大数据引擎Apache Spark和Dask在处理神经影像管线时的运行时性能。我们的实验使用三个合成神经影像应用处理606 GiB的BigBrain图像,并使用一个实际管线处理数千张解剖图像的数据。我们在运行Lustre文件系统的专用HPC集群上对这些应用进行基准测试,同时使用节点数量、文件大小和任务时长的不同组合。结果表明,尽管Dask和Spark之间存在细微差异,但两种引擎在数据密集型应用中的性能相当。然而,Spark比Dask需要更多内存,这可能导致运行时变慢,具体取决于配置和基础设施。总体而言,限制因素是数据传输时间。虽然两种引擎都适用于神经影像处理,但仍需投入更多努力来减少数据传输时间和应用的内存占用。

英文摘要:

The general increase in data size and data sharing motivates the adoption of Big Data strategies in several scientific disciplines. However, while several options are available, no particular guidelines exist for selecting a Big Data engine. In this paper, we compare the runtime performance of two popular Big Data engines with Python APIs, Apache Spark, and Dask, in processing neuroimaging pipelines. Our experiments use three synthetic \HL{neuroimaging} applications to process the \SI{606}{\gibi\byte} BigBrain image and an actual pipeline to process data from thousands of anatomical images. We benchmark these applications on a dedicated HPC cluster running the Lustre file system while using varying combinations of the number of nodes, file size, and task duration. Our results show that although there are slight differences between Dask and Spark, the performance of the engines is comparable for data-intensive applications. However, Spark requires more memory than Dask, which can lead to slower runtime depending on configuration and infrastructure. In general, the limiting factor was the data transfer time. While both engines are suitable for neuroimaging, more efforts need to be put to reduce the data transfer time and the memory footprint of applications.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑