Grab some of the soil that you are going to use for the roof, make it some standard unit size (for me, I would use one square foot), and as thick as you plan it to be. Water it to saturation (until the soil can hold no more water) and weigh it.
That number, when multiplied over the total area of your roof, will tell you how much weight your roof will have to hold.
Wood is pretty good in compression. The thing you have to watch out for is buckling; that is, the post starts to deflect (bend out of true), and then rapidly fails if the post is too long for how thin it is. So holding structural members together to restrain deflection is very important.