Preheat the oven to 350 degrees F.
Put the flour, salt, baking soda, cinnamon and cocoa in the mixing bowl, and whisk together to blend. Put the sugars in a large mixing bowl, and whisk in the peanut oil. Then whisk in the eggs, one at a time, followed by the vanilla. When fully blended, add the flour mixture all at once, and mix just until smooth. Stir in the grated carrots and the pecans. Divide the batter evenly between the three cake pans. Drop each pan sharply onto the counter from a height of about 6 inches to remove any air pockets. Bake for 25 minutes in the preheated oven, or until the center of the layers springs back gently when touched. Remove from the oven and place on cooling racks until completely cooled, then unmold.
To assemble the cake: Place one of the cake layers, bottom side up, on a cake plate or pedestal. Spoon approximately a quarter of the frosting onto the layer and spread it over evenly. Place a second layer, bottom side down, on top of the first and spread with an equal amount of frosting. Place the final layer, bottom side down, on top of the others, and frost the top and sides with the remaining frosting. Store in a cool but not refrigerated area until serving.
Cut the butter into 2-inch pieces, and put in the mixing bowl of an electric mixer. Mix on medium speed just until the butter begins to become malleable, about 3-4 minutes. Add the cream cheese in pieces, and mix until thoroughly blended. Slowly add the confectioners’ sugar and vanilla and mix until blended. Increase mixer speed slightly, and continue mixing for 2-3 minutes, until the frosting becomes light and fluffy. Remove from the mixer and fold in the pecans.