The APIs do tell you how many bytes are actually allocated. For instance, in the following
fn allocate(&self, layout: Layout) -> Result<NonNull<[u8]>, AllocError>;
You can get the length of the returned byte slice (`[u8]`) to know how many bytes were actually allocated.