in graphjet-core/src/main/java/com/twitter/graphjet/algorithms/salsa/SalsaIterations.java [77:102]
public void runSalsaIterations(SalsaRequest salsaRequest, Random random) {
LOG.info("SALSA: starting to reset internal state");
resetWithRequest(salsaRequest, random);
LOG.info("SALSA: done resetting internal state");
seedLeftSideForFirstIteration();
LOG.info("SALSA: done seeding");
boolean isForwardIteration = true;
SingleSalsaIteration singleSalsaIteration = leftSalsaIteration;
for (int i = 0; i < salsaInternalState.getSalsaRequest().getMaxRandomWalkLength(); i++) {
if (isForwardIteration) {
singleSalsaIteration.runSingleIteration();
singleSalsaIteration = rightSalsaIteration;
} else {
if (i < salsaInternalState.getSalsaRequest().getMaxRandomWalkLength() - 2) {
singleSalsaIteration.runSingleIteration();
singleSalsaIteration = leftSalsaIteration;
} else {
singleSalsaIteration.runSingleIteration();
singleSalsaIteration = finalSalsaIteration;
}
}
isForwardIteration = !isForwardIteration;
}
}