mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 16:46:47 +00:00
further shorten shm names
This commit is contained in:
parent
e4d73f1a9a
commit
e295978b3e
|
@ -76,7 +76,7 @@ FairMQTransportFactorySHM::FairMQTransportFactorySHM(const string& id, const Fai
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
fShMutex = fair::mq::tools::make_unique<bipc::named_mutex>(bipc::open_or_create, string("fmq_shm_" + fSessionName + "_mutex").c_str());
|
fShMutex = fair::mq::tools::make_unique<bipc::named_mutex>(bipc::open_or_create, string("fmq_" + fSessionName + "_mtx").c_str());
|
||||||
|
|
||||||
if (zmq_ctx_set(fContext, ZMQ_IO_THREADS, numIoThreads) != 0)
|
if (zmq_ctx_set(fContext, ZMQ_IO_THREADS, numIoThreads) != 0)
|
||||||
{
|
{
|
||||||
|
@ -90,7 +90,7 @@ FairMQTransportFactorySHM::FairMQTransportFactorySHM(const string& id, const Fai
|
||||||
}
|
}
|
||||||
|
|
||||||
fManager = fair::mq::tools::make_unique<Manager>(fSessionName, segmentSize);
|
fManager = fair::mq::tools::make_unique<Manager>(fSessionName, segmentSize);
|
||||||
LOG(debug) << "created/opened shared memory segment '" << "fmq_shm_" << fSessionName << "_main" << "' of " << segmentSize << " bytes. Available are " << fManager->Segment().get_free_memory() << " bytes.";
|
LOG(debug) << "created/opened shared memory segment '" << "fmq_" << fSessionName << "_main" << "' of " << segmentSize << " bytes. Available are " << fManager->Segment().get_free_memory() << " bytes.";
|
||||||
|
|
||||||
{
|
{
|
||||||
bipc::scoped_lock<bipc::named_mutex> lock(*fShMutex);
|
bipc::scoped_lock<bipc::named_mutex> lock(*fShMutex);
|
||||||
|
@ -190,7 +190,7 @@ void FairMQTransportFactorySHM::StartMonitor()
|
||||||
|
|
||||||
void FairMQTransportFactorySHM::SendHeartbeats()
|
void FairMQTransportFactorySHM::SendHeartbeats()
|
||||||
{
|
{
|
||||||
string controlQueueName("fmq_shm_" + fSessionName + "_control_queue");
|
string controlQueueName("fmq_" + fSessionName + "_cq");
|
||||||
while (fSendHeartbeats)
|
while (fSendHeartbeats)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -312,7 +312,7 @@ FairMQTransportFactorySHM::~FairMQTransportFactorySHM()
|
||||||
|
|
||||||
if (lastRemoved)
|
if (lastRemoved)
|
||||||
{
|
{
|
||||||
boost::interprocess::named_mutex::remove(string("fmq_shm_" + fSessionName + "_mutex").c_str());
|
boost::interprocess::named_mutex::remove(string("fmq_" + fSessionName + "_mtx").c_str());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,8 +23,8 @@ std::unordered_map<uint64_t, Region> Manager::fRegions;
|
||||||
|
|
||||||
Manager::Manager(const string& name, size_t size)
|
Manager::Manager(const string& name, size_t size)
|
||||||
: fSessionName(name)
|
: fSessionName(name)
|
||||||
, fSegmentName("fmq_shm_" + fSessionName + "_main")
|
, fSegmentName("fmq_" + fSessionName + "_main")
|
||||||
, fManagementSegmentName("fmq_shm_" + fSessionName + "_management")
|
, fManagementSegmentName("fmq_" + fSessionName + "_mng")
|
||||||
, fSegment(bipc::open_or_create, fSegmentName.c_str(), size)
|
, fSegment(bipc::open_or_create, fSegmentName.c_str(), size)
|
||||||
, fManagementSegment(bipc::open_or_create, fManagementSegmentName.c_str(), 65536)
|
, fManagementSegment(bipc::open_or_create, fManagementSegmentName.c_str(), 65536)
|
||||||
{}
|
{}
|
||||||
|
|
|
@ -59,9 +59,9 @@ Monitor::Monitor(const string& sessionName, bool selfDestruct, bool interactive,
|
||||||
, fCleanOnExit(cleanOnExit)
|
, fCleanOnExit(cleanOnExit)
|
||||||
, fTimeoutInMS(timeoutInMS)
|
, fTimeoutInMS(timeoutInMS)
|
||||||
, fSessionName(sessionName)
|
, fSessionName(sessionName)
|
||||||
, fSegmentName("fmq_shm_" + fSessionName + "_main")
|
, fSegmentName("fmq_" + fSessionName + "_main")
|
||||||
, fManagementSegmentName("fmq_shm_" + fSessionName + "_management")
|
, fManagementSegmentName("fmq_" + fSessionName + "_mng")
|
||||||
, fControlQueueName("fmq_shm_" + fSessionName + "_control_queue")
|
, fControlQueueName("fmq_" + fSessionName + "_cq")
|
||||||
, fTerminating(false)
|
, fTerminating(false)
|
||||||
, fHeartbeatTriggered(false)
|
, fHeartbeatTriggered(false)
|
||||||
, fLastHeartbeat(chrono::high_resolution_clock::now())
|
, fLastHeartbeat(chrono::high_resolution_clock::now())
|
||||||
|
@ -360,7 +360,7 @@ void Monitor::CheckSegment()
|
||||||
|
|
||||||
void Monitor::Cleanup(const string& sessionName)
|
void Monitor::Cleanup(const string& sessionName)
|
||||||
{
|
{
|
||||||
string managementSegmentName("fmq_shm_" + sessionName + "_management");
|
string managementSegmentName("fmq_" + sessionName + "_mng");
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
bipc::managed_shared_memory managementSegment(bipc::open_only, managementSegmentName.c_str());
|
bipc::managed_shared_memory managementSegment(bipc::open_only, managementSegmentName.c_str());
|
||||||
|
@ -371,8 +371,8 @@ void Monitor::Cleanup(const string& sessionName)
|
||||||
unsigned int regionCount = rc->fCount;
|
unsigned int regionCount = rc->fCount;
|
||||||
for (unsigned int i = 1; i <= regionCount; ++i)
|
for (unsigned int i = 1; i <= regionCount; ++i)
|
||||||
{
|
{
|
||||||
RemoveObject("fmq_shm_" + sessionName + "_region_" + to_string(i));
|
RemoveObject("fmq_" + sessionName + "_rg_" + to_string(i));
|
||||||
RemoveQueue(string("fmq_shm_" + sessionName + "_region_queue_" + to_string(i)));
|
RemoveQueue(string("fmq_" + sessionName + "_rgq_" + to_string(i)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -387,9 +387,9 @@ void Monitor::Cleanup(const string& sessionName)
|
||||||
cout << "Did not find '" << managementSegmentName << "' shared memory segment. No regions to cleanup." << endl;
|
cout << "Did not find '" << managementSegmentName << "' shared memory segment. No regions to cleanup." << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
RemoveObject("fmq_shm_" + sessionName + "_main");
|
RemoveObject("fmq_" + sessionName + "_main");
|
||||||
|
|
||||||
boost::interprocess::named_mutex::remove(string("fmq_shm_" + sessionName + "_mutex").c_str());
|
boost::interprocess::named_mutex::remove(string("fmq_" + sessionName + "_mtx").c_str());
|
||||||
|
|
||||||
cout << endl;
|
cout << endl;
|
||||||
}
|
}
|
||||||
|
@ -425,7 +425,7 @@ void Monitor::PrintQueues()
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
bipc::managed_shared_memory segment(bipc::open_only, fSegmentName.c_str());
|
bipc::managed_shared_memory segment(bipc::open_only, fSegmentName.c_str());
|
||||||
StringVector* queues = segment.find<StringVector>(string("fmq_shm_" + fSessionName + "_queues").c_str()).first;
|
StringVector* queues = segment.find<StringVector>(string("fmq_" + fSessionName + "_qs").c_str()).first;
|
||||||
if (queues)
|
if (queues)
|
||||||
{
|
{
|
||||||
cout << "found " << queues->size() << " queue(s):" << endl;
|
cout << "found " << queues->size() << " queue(s):" << endl;
|
||||||
|
|
|
@ -27,9 +27,9 @@ The Monitor class can also be used independently from the supplied executable (b
|
||||||
|
|
||||||
FairMQ Shared Memory currently uses following names to register shared memory on the system:
|
FairMQ Shared Memory currently uses following names to register shared memory on the system:
|
||||||
|
|
||||||
`fmq_shm_<sessionName>_main` - main segment name, used for user data (session name can be overridden via `--session`).
|
`fmq_<sessionName>_main` - main segment name, used for user data (session name can be overridden via `--session`).
|
||||||
`fmq_shm_<sessionName>_management` - management segment name, used for storing management data.
|
`fmq_<sessionName>_mng` - management segment name, used for storing management data.
|
||||||
`fmq_shm_<sessionName>_control_queue` - message queue for communicating between shm transport and shm monitor (exists independent of above segments).
|
`fmq_<sessionName>_cq` - message queue for communicating between shm transport and shm monitor (exists independent of above segments).
|
||||||
`fmq_shm_<sessionName>_mutex` - boost::interprocess::named_mutex for management purposes (exists independent of above segments).
|
`fmq_<sessionName>_mtx` - boost::interprocess::named_mutex for management purposes (exists independent of above segments).
|
||||||
`fmq_shm_<sessionName>_region_<index>` - names of unmanaged regions.
|
`fmq_<sessionName>_rg_<index>` - names of unmanaged regions.
|
||||||
`fmq_shm_<sessionName>_region_queue_<index>` - names of queues for the unmanaged regions.
|
`fmq_<sessionName>_rgq_<index>` - names of queues for the unmanaged regions.
|
||||||
|
|
|
@ -28,8 +28,8 @@ Region::Region(Manager& manager, uint64_t id, uint64_t size, bool remote, FairMQ
|
||||||
: fManager(manager)
|
: fManager(manager)
|
||||||
, fRemote(remote)
|
, fRemote(remote)
|
||||||
, fStop(false)
|
, fStop(false)
|
||||||
, fName("fmq_shm_" + fManager.fSessionName +"_region_" + to_string(id))
|
, fName("fmq_" + fManager.fSessionName +"_rg_" + to_string(id))
|
||||||
, fQueueName("fmq_shm_" + fManager.fSessionName +"_region_queue_" + to_string(id))
|
, fQueueName("fmq_" + fManager.fSessionName +"_rgq_" + to_string(id))
|
||||||
, fShmemObject()
|
, fShmemObject()
|
||||||
, fQueue(nullptr)
|
, fQueue(nullptr)
|
||||||
, fWorker()
|
, fWorker()
|
||||||
|
|
|
@ -108,7 +108,7 @@ int main(int argc, char** argv)
|
||||||
{
|
{
|
||||||
cout << "Cleaning up \"" << sessionName << "\"..." << endl;
|
cout << "Cleaning up \"" << sessionName << "\"..." << endl;
|
||||||
fair::mq::shmem::Monitor::Cleanup(sessionName);
|
fair::mq::shmem::Monitor::Cleanup(sessionName);
|
||||||
fair::mq::shmem::Monitor::RemoveQueue("fmq_shm_" + sessionName + "_control_queue");
|
fair::mq::shmem::Monitor::RemoveQueue("fmq_" + sessionName + "_cq");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user