diff options
author | Martin Sustrik <sustrik@250bpm.com> | 2010-08-28 13:18:53 +0200 |
---|---|---|
committer | Martin Sustrik <sustrik@250bpm.com> | 2010-08-28 13:18:53 +0200 |
commit | beea535f9d7ff210ea035de190c0d87184ee1963 (patch) | |
tree | cfa5f33b45a75144be7e14ebbd4d7f63bfee80d8 | |
parent | d8b975f4e73ae940c0c0f9c8c6c7aac1199fee09 (diff) |
swap's block size made into a compile-time parameter
-rw-r--r-- | src/config.hpp | 4 | ||||
-rw-r--r-- | src/swap.cpp | 5 | ||||
-rw-r--r-- | src/swap.hpp | 2 |
3 files changed, 8 insertions, 3 deletions
diff --git a/src/config.hpp b/src/config.hpp index 83e612a..0fe7c57 100644 --- a/src/config.hpp +++ b/src/config.hpp @@ -62,6 +62,10 @@ namespace zmq // Maximal delta between high and low watermark. max_wm_delta = 1024, + // Swap inteligently batches data for writing to disk. The size of + // the batch in bytes is specified by this option. + swap_block_size = 8192, + // Maximum number of events the I/O thread can process in one go. max_io_events = 256, diff --git a/src/swap.cpp b/src/swap.cpp index cf73576..7a2234d 100644 --- a/src/swap.cpp +++ b/src/swap.cpp @@ -36,16 +36,17 @@ #include <algorithm> #include "swap.hpp" +#include "config.hpp" #include "atomic_counter.hpp" #include "err.hpp" -zmq::swap_t::swap_t (int64_t filesize_, size_t block_size_) : +zmq::swap_t::swap_t (int64_t filesize_) : fd (-1), filesize (filesize_), file_pos (0), write_pos (0), read_pos (0), - block_size (block_size_), + block_size (swap_block_size), write_buf_start_addr (0) { zmq_assert (filesize > 0); diff --git a/src/swap.hpp b/src/swap.hpp index c9dfd99..76ad339 100644 --- a/src/swap.hpp +++ b/src/swap.hpp @@ -38,7 +38,7 @@ namespace zmq enum { default_block_size = 8192 }; // Creates the swap. - swap_t (int64_t filesize_, size_t block_size_ = default_block_size); + swap_t (int64_t filesize_); ~swap_t (); |