diff --git a/include/internal/fmpi_mpi.h b/include/internal/fmpi_mpi.h
index 7cf6395a69c7efc8c611a4f6410a2b381628e9b6..9595a1108a885a5439ac07ec6ebdc4913c2884c5 100644
--- a/include/internal/fmpi_mpi.h
+++ b/include/internal/fmpi_mpi.h
@@ -199,6 +199,10 @@ _Bool fmpi_mpi_finalized(const struct fmpi_mpi_ctx * ctx);
  * }
  */
 void fmpi_mpi_abort(const struct fmpi_mpi_ctx * ctx);
+/*------------------------------------------------------------------------------
+    fmpi_mpi_world_barrier()
+------------------------------------------------------------------------------*/
+int fmpi_mpi_world_barrier(const struct fmpi_mpi_ctx * ctx);
 /*==============================================================================
     GUARD
 ==============================================================================*/
diff --git a/src/fmpi_mpi.c b/src/fmpi_mpi.c
index 5df12e6fd7da9df0c3a1fa6af551ee808e1fbee1..f00a7493799c74f1a28f885799eb39394edff1e3 100644
--- a/src/fmpi_mpi.c
+++ b/src/fmpi_mpi.c
@@ -173,3 +173,15 @@ void fmpi_mpi_abort(const struct fmpi_mpi_ctx * const ctx)
         fmpi_mpi_check_error(ctx, err_id, "MPI_Abort");
     }
 }
+/*------------------------------------------------------------------------------
+    fmpi_mpi_world_barrier()
+------------------------------------------------------------------------------*/
+int fmpi_mpi_world_barrier(const struct fmpi_mpi_ctx * const ctx)
+{
+    assert(ctx != NULL);
+    const int err_id = MPI_Barrier(MPI_COMM_WORLD);
+    if(fmpi_mpi_check_error(ctx, err_id, "MPI_Barrier") == true) {
+        return -1;
+    }
+    return err_id;
+}