diff --git a/include/fmpi_core.h b/include/fmpi_core.h
index 798833eb8b82b7100b9c5ec089417439fa52e732..bd23f2415cd2bd88967d264344230e29497cd4e6 100644
--- a/include/fmpi_core.h
+++ b/include/fmpi_core.h
@@ -108,6 +108,15 @@ _Noreturn void fmpi_abort(void);
  * }
  */
 _Bool fmpi_is_root(const struct fmpi_ctx * ctx);
+/*------------------------------------------------------------------------------
+    fmpi_root_printf()
+------------------------------------------------------------------------------*/
+#define fmpi_root_printf(ctx, ...) \
+do { \
+    if(fmpi_is_root((ctx))) { \
+        printf(__VA_ARGS__); \
+    } \
+} while(0)
 /*==============================================================================
     GUARD
 ==============================================================================*/