In fusaka devnet 2 we can easily see supernode memory usage to around 8-9gb while syncing.
I managed to reduce the peak significantly by reducing the "inflight" blocks so that the number of columns to deal with go down significantly via:
--Xp2p-sync-batch-size=10
--Xp2p-sync-max-pending-batches=2
We may need to thing about changing these defaults (25 and 5 respectively) to avoid too much work happening in parallel in background.