|
- /*!
- * \file
- * \brief Distributed sort implementation
- *
- * \author
- * Christos Choutouridis AEM:8997
- * <cchoutou@ece.auth.gr>
- */
- #include "utils.hpp"
- #include "distsort.hpp"
-
- //! Statistic variables for exchange optimization
- distStat_t localStat, remoteStat;
-
- //! Performance timers for each one of the "costly" functions
- Timing TfullSort, Texchange, Tminmax, TelbowSort;
-
-
- bool isActive(mpi_id_t node, size_t nodes) {
- if (!((nodes > 0) &&
- (nodes <= std::numeric_limits<mpi_id_t>::max()) ))
- throw std::runtime_error("(isActive) Non-acceptable value of MPI Nodes\n");
- // ^ Assert that mpi_id_t can hold nodes, and thus we can cast without data loss!
-
- return (node >= 0) && (node < static_cast<mpi_id_t>(nodes));
- }
|