diff --git a/src/remi-client.cpp b/src/remi-client.cpp index 356565e516b59d55ec79805298d56aee41b54956..1f3b713836581e9156f8c2a9786f8d294466f6dd 100644 --- a/src/remi-client.cpp +++ b/src/remi-client.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -173,6 +174,8 @@ extern "C" int remi_fileset_migrate( cleanup(); return REMI_ERR_ALLOCATION; } + // indicate sequential access + madvise(segment, size, MADV_SEQUENTIAL); // close file descriptor close(fd); // insert the segment diff --git a/src/remi-server.cpp b/src/remi-server.cpp index b2177b66c733a1e6fe366722d2b51d56948c6723..4f9717e448bca4acefdffe653a622cd73b2abb2b 100644 --- a/src/remi-server.cpp +++ b/src/remi-server.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -120,6 +121,7 @@ struct remi_provider : public tl::provider { req.respond(result); return; } + madvise(segment, filesizes[i], MADV_SEQUENTIAL); theData.emplace_back(segment, filesizes[i]); i += 1; }