16#ifndef PROTEUS_MPISTORAGECACHE_H
17#define PROTEUS_MPISTORAGECACHE_H
59 void communicationThreadMain();
60 void handleStoreMessage(MPI_Status &Status);
62 std::atomic<bool> ShutdownRequested{
false};
63 bool Finalized =
false;
Manages the lifecycle of a background communication thread.
Definition MPIHelpers.h:36
RAII wrapper for MPI communicator with thread safety checks.
Definition MPIHelpers.h:62
Definition MPIStorageCache.h:31
uint64_t Hits
Definition MPIStorageCache.h:51
std::unique_ptr< CompiledLibrary > lookupFromDisk(const HashT &HashValue)
Definition MPIStorageCache.cpp:199
void finalize() override
Definition MPIStorageCache.cpp:56
uint64_t Accesses
Definition MPIStorageCache.h:52
const std::string StorageDirectory
Definition MPIStorageCache.h:53
void startCommThread()
Definition MPIStorageCache.cpp:95
const std::string Label
Definition MPIStorageCache.h:54
uint64_t getAccesses() const override
Definition MPIStorageCache.h:40
MPICommHandle CommHandle
Definition MPIStorageCache.h:55
uint64_t getHits() const override
Definition MPIStorageCache.h:39
virtual void handleMessage(MPI_Status &Status, MPITag Tag)
Definition MPIStorageCache.cpp:159
void saveToDisk(const HashT &HashValue, const char *Data, size_t Size, bool IsDynLib)
Definition MPIStorageCache.cpp:180
void store(const HashT &HashValue, const CacheEntry &Entry) override
Definition MPIStorageCache.cpp:82
~MPIStorageCache() override
void printStats() override
Definition MPIStorageCache.cpp:215
CommThreadHandle CommThread
Definition MPIStorageCache.h:56
void forwardToWriter(const HashT &HashValue, const CacheEntry &Entry)
Definition MPIStorageCache.cpp:101
Definition ObjectCache.h:39
Definition MemoryCache.h:26
MPITag
Definition MPIHelpers.h:27
Definition ObjectCache.h:27