Resource allocation sizes & limits

Trying to get a better understanding of how some things are working under the hood with regards to DirectX 11. We ran some tests today creating constant buffers of various sizes. One thing that stood out to us is that when creating something as small as a 16-byte constant buffer it would end up allocating about the same amount of memory as a 4096-byte constant buffer. Is there some minimal size or is it due to the alignment of memory from the driver?

Another question is the number of buffers we seem to be able to allocate. On my Windows 8 (64-bit) machine running a 32-bit application, using a 660Ti, I was able to create 700K-750K buffers. On another machine running Windows 7 (64-bit) running a 32-bit application, using a Quadro 4000, I was able to create 1.2M buffers. Is this due to driver limitations for the various pieces of hardware? Are any specifics such as this documented anywhere?