Explanation about output of torch.cuda.memory_summary()

Hello, I am using torch.cuda.memory_summary() to monitor the memory usage of training job. I am trying to understand what Allocated memory, Active memory, GPU reserved memory and Non-releasable meomry mean.

Thanks,

Wei