NPB-Rust: NAS Parallel Benchmarks in Rust

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Martins, Eduardo M., Faé, Leonardo G., Hoffmann, Renato B., Bianchessi, Lucas S., Griebler, Dalvan
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866917932367347712
author Martins, Eduardo M.
Faé, Leonardo G.
Hoffmann, Renato B.
Bianchessi, Lucas S.
Griebler, Dalvan
author_facet Martins, Eduardo M.
Faé, Leonardo G.
Hoffmann, Renato B.
Bianchessi, Lucas S.
Griebler, Dalvan
contents Parallel programming often requires developers to handle complex computational tasks that can yield many errors in its development cycle. Rust is a performant low-level language that promises memory safety guarantees with its compiler, making it an attractive option for HPC application developers. We identified that the Rust ecosystem could benefit from more comprehensive scientific benchmark suites for standardizing comparisons and research. The NAS Parallel Benchmarks (NPB) is a standardized suite for evaluating various hardware aspects and is often used to compare different frameworks for parallelism. Therefore, our contributions are a Rust version of NPB, an analysis of the expressiveness and performance of the language features, and parallelization strategies. We compare our implementation with consolidated sequential and parallel versions of NPB. Experimental results show that Rust's sequential version is 1.23\% slower than Fortran and 5.59\% faster than C++, while Rust with Rayon was slower than both Fortran and C++ with OpenMP.
format Preprint
id arxiv_https___arxiv_org_abs_2502_15536
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle NPB-Rust: NAS Parallel Benchmarks in Rust
Martins, Eduardo M.
Faé, Leonardo G.
Hoffmann, Renato B.
Bianchessi, Lucas S.
Griebler, Dalvan
Distributed, Parallel, and Cluster Computing
Programming Languages
Parallel programming often requires developers to handle complex computational tasks that can yield many errors in its development cycle. Rust is a performant low-level language that promises memory safety guarantees with its compiler, making it an attractive option for HPC application developers. We identified that the Rust ecosystem could benefit from more comprehensive scientific benchmark suites for standardizing comparisons and research. The NAS Parallel Benchmarks (NPB) is a standardized suite for evaluating various hardware aspects and is often used to compare different frameworks for parallelism. Therefore, our contributions are a Rust version of NPB, an analysis of the expressiveness and performance of the language features, and parallelization strategies. We compare our implementation with consolidated sequential and parallel versions of NPB. Experimental results show that Rust's sequential version is 1.23\% slower than Fortran and 5.59\% faster than C++, while Rust with Rayon was slower than both Fortran and C++ with OpenMP.
title NPB-Rust: NAS Parallel Benchmarks in Rust
topic Distributed, Parallel, and Cluster Computing
Programming Languages
url https://arxiv.org/abs/2502.15536