I've only had one experience here, though it was pretty intense... Ended up using perhaps a couple hundred pounds of compound. Much of this story can be found here: viewtopic.php?f=6&t=7996
My floor (of my newly purchased 1997 home) looked like it was manufactured by someone whose main line of work was in building roller coasters! All the T-joists were high (or everything else low?), and the other joists tended to vary. And in between the joists in many places the particle board flooring was dipped. Oh, and in one prominent spot I had this mountain (OK, I exaggerate, but it was an extremely high spot).
My home sits on a full concrete pad and, according to a laser level, appeared to be very level (no problems with doors or any signs of cracking). I poked around underneath and made some minor adjustments on some jacks in an attempt to help settle high spots (that darn mountain!), but I don't think that it really did anything (and I wasn't going to do any radical adjusting).
I could have alleviated the between-joists depression issue, but that still left me with the problem of varied heights in the joists. And, like you, I seemed to have sagging in the floor near walls (nothing consistent though): I suspect that it probably wasn't any more common than the rest of the flooring, but along the walls is really a pain to deal with.
So, leveling compound was the medicine that I chose to take. I used Henry's (547? no particular reason other than that's what was available at the store closest to me).
Being a total novice to all of this, here's what I learned:
1) Mask off your walls (that you're going to need to level up to/against)- I used cardboard from the boxes that my laminates came in; initially I didn't do this and I ended up spending way too much time trying to finesse my way around and caused me to then rush as things started to set up on me;
2) Establish level/flat high points to screed on/from- I found that I had to sand in several places (used a long straightedge and a level [although realize that it's all relative- try to average things out so that there's no sudden changes- often I'd find that checking in one direction showed a high spot, while checking 90 degrees out would show it low! it got to the point of being more "art" than construction!);
3) Look to apply on the high side rather than low, lest you burn yourself out mixing more batches (and all the cleanup!)- I was really, REALLY, stupid and didn't figure out that I could take down high spots using a good belt sander equipped with 40 grit paper, I thought "hey, that's concrete, no way I can sand it!", rather than trying to use a chisel! (yes, I spent WAY too much time chiseling); be prepared, however, for lots of dust! (connect sander to a shop vac, dust mask etc.);
4) Do walk-through tests of how the screeding is going to go- I ended up using flooring laminates, which worked out well (once I figured out that I should be screeding across joists, etc. etc.); make sure to keep the screeding board as perpendicular as possible, otherwise you'll end up low; make sure everything is clear!
5) Mark depths in fill areas to assist in pouring the mixture- this helps from having it pile up where you don't want it, and not having enough where you need it- I found that using a small trowel to help distribute the mixture along the face of the board helped (as well for use in cleaning off the board when I'd have to pick it up- NOTE: by being more strategic about depositing/loading up the mixture you'll minimize the need to pick up the board and backtrack- every second adds up when this stuff is setting up);
6) Vary your mixture based on the pour you need- if you've got a lot of deep spots then make the mixture a bit thicker (thin will just tend to dish down, that's what happened to me);
7) Start in the middle of the floor and work out- create level/flat surfaces to work off of, as near walls your board will likely be free-floating (I don't even want to say the stupid ways that I was trying to navigate this);
If you're going to be hopping all over the place and working some tight or difficult areas (around ducting holes etc.) do smaller mixes; toward the end I was able to gauge things pretty well, getting up to about 20 lbs batches;
9) Be sure to keep track of your mixing ratios- measure twice, pour once!
I found that measuring and pouring the additive into the bucket first would buy me a bit more time (doing it the other way mean that I'd have some additive mixed while fiddling with measuring and pouring additional): NOTE: one could measure and pour the additive into a separate container and then pour it into the bucket with the compound, but I wasn't that smart(?) (would mean another container to have to deal with);
10) Spend the time mixing well- screeding around a bunch of chunks sucks; mixing was better when I went heavy on the additive (I'm sure I violated some laws here [didn't help my budget $$!
]); I used a drill and a mixing paddle (spiral kind);
11) Have your cleanup area ready to go before you start mixing!
12) Don't drink a lot of liquids while working with this stuff- that is, unless you make sure you take bathroom breaks BEFORE you start mixing! (once you're committed you can't stop);
13) Figure on about an hour a batch- pre mixing, mixing, pouring, leveling and clean up;
14) As you work repeat the phrase "this is necessary," often!
I feel pretty good with the last section of flooring that I did. For the earlier ones, well... flooring covers a multitude of sins (unless those sins result in an obviously failed floor!): never would get hired for flooring work if anyone saw what I'd one early on
I probably spent at least three times as much time on sub floor prep than I did in putting down the laminates (and I had some significant cutting to do).