[DRAFT] Flattening loops of combinations, again!?

We had problems implementing the 3x1 flattened four nested loops generating 4-combinations in (Dash et al., 2021).

\[\begin{align*} q &\gets (\sqrt{729 \lambda^2 -3} + 27 \lambda)^{1/3} \\ k &\gets \lfloor (q/3^2)^{1/3} + 1/(3q)^{1/3} - 1 \rfloor \\ T_z &\gets k (k + 1) (k + 2) / 6 \\ \lambda' &= \lambda - T_z \\ j &\gets \lfloor \sqrt{1/4 + 2\lambda'} -1/2 \rfloor \\ i &\gets \lambda' - j (j + 1) / 2 \end{align*}\]

References

2021

  1. Scaling Out a Combinatorial Algorithm for Discovering Carcinogenic Gene Combinations to Thousands of GPUs
    Sajal Dash, Qais Al-Hajri, Wu-chun Feng, and 2 more authors
    In 2021 IEEE International Parallel and Distributed Processing Symposium (IPDPS), May 2021



Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • Flattening loops of combinations
  • Continuous benchmarking on supercomputers
  • Polyhedral compilation: part 1
  • Installing PyTorch with MPI support on ABCI
  • How to set up a website like this part 2