(This may all be issues you already know about but I thought I should get it filed to make sure.)
Prior to the record cache changes, it was enabled by $CFG->enablerecordcache which controlled the maximum number of records stored in the cache (0 = off, 50 = default).
Changes to support external caches seem to mean it's controlled now by $CFG->rcache which must be set to 'internal' to enable it.
Several issues to do with this config option:
1) The admin setting for enablerecordcache is still there, even though it now has no effect!
2) There is no admin setting for rcache.
3) Upgrade from earlier versions did not carry through a enablerecordcache>0 setting to become rcache=internal.
4) I could very well be mistaken on this but I couldn't see anywhere to set a limit on the memory cache size when using internal. This was added to the previous record cache as a safety measure - even if you request every record in mdl_user, it would still never cache more than 50, so there was no possibility of memory problems. However maybe I just didn't notice the code.