An introduction to performance analysis and understanding profilers

Where performance matters, we want to make sure we know what to look for and what to optimize. For that we need to measure our code by analyzing its performance with tools either provided by the language or external ones called “profilers”. This post intends to give an overview on both of these methods while introducing some tools – like Google Benchmark and perf – and explaining their functionality.

Read full post gblog_arrow_right

heimdallr: Compile time correctness checking for message passing in Rust

In this post we will look at how the Rust programming language and its built-in correctness features can be applied to the message passing parallelization method. We will see how Rust’s memory safety features can be leveraged to design a message passing library which we call heimdallr. It is able to detect parallelization errors at compile time that would go unnoticed by the compiler when using the prevalent message passing interface MPI.

Read full post gblog_arrow_right