Parcourir la source

added a madvise for record tables

master
Ludovic 'Archivist' Lagouardette il y a 5 ans
Parent
révision
3c2e6c561a
2 fichiers modifiés avec 6 ajouts et 0 suppressions
  1. +2
    -0
      include/database.hpp
  2. +4
    -0
      include/fsized_map.h

+ 2
- 0
include/database.hpp Voir le fichier

@ -87,6 +87,8 @@ public:
tmp.clear();
ret.records.enforce_caching();
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wreturn-local-addr"
return std::move(ret);

+ 4
- 0
include/fsized_map.h Voir le fichier

@ -157,6 +157,10 @@ class mmap_array : public mmap_ptr
posix_madvise(this->start, mapping_size, map_access);
}
void enforce_caching() {
posix_madvise(this->start, mapping_size, MADV_WILLNEED);
}
constexpr size_t size() {
return item_size;
}

Chargement…
Annuler
Enregistrer