Skip to content

Commit b7f0042

Browse files
committed
transport: #389
1 parent 579f766 commit b7f0042

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

include/faabric/transport/PointToPointBroker.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,10 @@ class PointToPointBroker
143143
private:
144144
faabric::util::SystemConfig& conf;
145145

146+
// If the PTP server is single-threaded, we can shortcut a lot of the
147+
// complexity associated with ordering messages
148+
const bool isServerSingleThreaded = true;
149+
146150
std::shared_mutex brokerMutex;
147151

148152
std::unordered_map<int, std::set<int>> groupIdIdxsMap;

src/transport/PointToPointBroker.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -788,8 +788,7 @@ std::pair<MessageResponseCode, int> PointToPointBroker::doRecvMessage(
788788
void PointToPointBroker::recvMessage(PointToPointMessage& msg,
789789
bool mustOrderMsg)
790790
{
791-
// If we don't need to receive messages in order, return here
792-
if (!mustOrderMsg) {
791+
if (!mustOrderMsg || isServerSingleThreaded) {
793792
doRecvMessage(msg);
794793
return;
795794
}

src/transport/PointToPointServer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ PointToPointServer::PointToPointServer()
1717
POINT_TO_POINT_ASYNC_PORT,
1818
POINT_TO_POINT_SYNC_PORT,
1919
POINT_TO_POINT_INPROC_LABEL,
20-
faabric::util::getSystemConfig().pointToPointServerThreads)
20+
1) // faabric::util::getSystemConfig().pointToPointServerThreads)
2121
, broker(getPointToPointBroker())
2222
{}
2323

0 commit comments

Comments
 (0)