Computing rupture_slices is not so slow compared to compute the ruptures fully. I used the complex fault source which is in nrmllib/examples, the Cascadia Megathrust one, which generates 12,000+ ruptures. Computing all the ruptures with .iter_ruptures took 30 seconds, counting them with .count_ruptures took 0.7 seconds, i.e. count_ruptures is already 40+ times faster than .iter_ruptures even without cache. I would say it is fast enough for start.