Great analysis!
Would you say that geth’s default db cache configuration (i.e. 2GB) is sufficient for the time being?