m_Memory /= 2; // For safety and can prevent out of memory troubles
// Compute the size of an initial segment
using NodeType = typename TSegmenter::NodeType;
using NodePointer = typename TSegmenter::NodePointerType;
using EdgeType = typename TSegmenter::EdgeType;
long long unsigned int sizePerNode = sizeof(NodePointer) + sizeof(NodeType) + 1 + 4 *(sizeof(EdgeType) + sizeof(float)); // last term is specific to BS.
long unsigned int maximumNumberOfNodes = std::ceil(m_Memory / sizePerNode);
unsigned int tileDimension = std::sqrt(maximumNumberOfNodes);
// Compute the stability margin. The naive strategy consider a margin value and a stable size equal.