Skip to content

XGFT Routing Algorithm double free memory on 320n Network

Problem

XGFT it's not working properly when you try some case where doesn't have the same ports per-level.

In the case we have a XGFT with 56 switches and 20 of radix.

The point of failure is during the BuildRoutes() method, since try to free the memory from a pointer that was previously de-allocated. image

Possible point of failure

There are also a TODO comment to check if it's a valid method for every XGFT topology, lo look must be there the point of failure.

How to reproduce

I attach the xml that I use on INASim, and also the parameters used by the topgen call.320n_xgfc_non_CBB.zip

topgen::CXGFT(20,3,[16,4,5],[1,4,4],false);

It's also important to notice that the branch used on INASim it was the dev_cmake_mfly , since is the one that have the feature implemented.

Edited by Alberto Merino Risueño
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information