Commit 224fc9ba authored by Ramon Nou's avatar Ramon Nou
Browse files

Add seq_mixed operation and related files

parent 8acb665c
Loading
Loading
Loading
Loading
Loading
+4 −2
Original line number Original line Diff line number Diff line
@@ -77,7 +77,8 @@ parse_command_line(int argc, char* argv[]) {
    app.add_option("--if", cfg.input_flags,
    app.add_option("--if", cfg.input_flags,
                   "Flags for input datasets. Accepted values\n"
                   "Flags for input datasets. Accepted values\n"
                   "  - posix: read data using POSIX (default)\n"
                   "  - posix: read data using POSIX (default)\n"
                   "  - mpio: read data using MPI-IO")
                   "  - parallel: read data using MPI-IO\n"
                   "  - gekkofs: read data using gekkofs user library\n")
            ->option_text("FLAGS")
            ->option_text("FLAGS")
            ->transform(CLI::CheckedTransformer(dataset_flags_map,
            ->transform(CLI::CheckedTransformer(dataset_flags_map,
                                                CLI::ignore_case));
                                                CLI::ignore_case));
@@ -85,7 +86,8 @@ parse_command_line(int argc, char* argv[]) {
    app.add_option("--of", cfg.output_flags,
    app.add_option("--of", cfg.output_flags,
                   "Flags for output datasets. Accepted values\n"
                   "Flags for output datasets. Accepted values\n"
                   "  - posix: write data using POSIX (default)\n"
                   "  - posix: write data using POSIX (default)\n"
                   "  - mpio: write data using MPI-IO")
                   "  - parallel: write data using MPI-IO\n"
                   "  - gekkofs: write data using gekkofs user library\n")
            ->option_text("FLAGS")
            ->option_text("FLAGS")
            ->transform(CLI::CheckedTransformer(dataset_flags_map,
            ->transform(CLI::CheckedTransformer(dataset_flags_map,
                                                CLI::ignore_case));
                                                CLI::ignore_case));
+2 −0
Original line number Original line Diff line number Diff line
@@ -43,6 +43,8 @@ target_sources(
          worker/ops.hpp
          worker/ops.hpp
          worker/sequential.cpp
          worker/sequential.cpp
          worker/sequential.hpp
          worker/sequential.hpp
          worker/seq_mixed.cpp
          worker/seq_mixed.hpp
          worker/worker.cpp
          worker/worker.cpp
          worker/worker.hpp
          worker/worker.hpp
          env.hpp
          env.hpp
+2 −2
Original line number Original line Diff line number Diff line
@@ -66,7 +66,7 @@ make_message(std::uint64_t tid, std::uint32_t seqno,
    }
    }


    return std::make_tuple(
    return std::make_tuple(
            static_cast<int>(cargo::tag::sequential),
            static_cast<int>(cargo::tag::seq_mixed),
            cargo::transfer_message{tid, seqno, input.path(),
            cargo::transfer_message{tid, seqno, input.path(),
                                    static_cast<uint32_t>(input.get_type()),
                                    static_cast<uint32_t>(input.get_type()),
                                    output.path(),
                                    output.path(),
@@ -123,7 +123,7 @@ master_server::mpi_listener_ult() {
        auto msg = world.iprobe();
        auto msg = world.iprobe();


        if(!msg) {
        if(!msg) {
            thallium::thread::self().sleep(m_network_engine, 150);
            thallium::thread::self().sleep(m_network_engine, 10);
            continue;
            continue;
        }
        }


+1 −0
Original line number Original line Diff line number Diff line
@@ -40,6 +40,7 @@ enum class tag : int {
    pread,
    pread,
    pwrite,
    pwrite,
    sequential,
    sequential,
    seq_mixed,
    bw_shaping,
    bw_shaping,
    status,
    status,
    shutdown
    shutdown
+5 −0
Original line number Original line Diff line number Diff line
@@ -26,6 +26,7 @@
#include "mpio_read.hpp"
#include "mpio_read.hpp"
#include "mpio_write.hpp"
#include "mpio_write.hpp"
#include "sequential.hpp"
#include "sequential.hpp"
#include "seq_mixed.hpp"


namespace mpi = boost::mpi;
namespace mpi = boost::mpi;


@@ -51,6 +52,10 @@ operation::make_operation(cargo::tag t, mpi::communicator workers,
            return std::make_unique<seq_operation>(
            return std::make_unique<seq_operation>(
                    std::move(workers), std::move(input_path),
                    std::move(workers), std::move(input_path),
                    std::move(output_path), block_size, fs_i_type, fs_o_type);
                    std::move(output_path), block_size, fs_i_type, fs_o_type);
        case tag::seq_mixed:
            return std::make_unique<seq_mixed_operation>(
                    std::move(workers), std::move(input_path),
                    std::move(output_path), block_size, fs_i_type, fs_o_type);
        default:
        default:
            return {};
            return {};
    }
    }
Loading