Pin_memory and sampler

(Dong Wook Kim) #1
shuffle=(train_sampler is None),

What are ‘pin_memory’ and ‘sampler’ here?
I could not understand this explanation.

“sampler (Sampler, optional): defines the strategy to draw samples from the dataset. If specified, shuffle must be False.”

And, Is it true that using ‘pin_memory=True’ will speed up the GPU operation, but will it run out of memory soon?


The sampler implements a strategy to sample observations from the indices.
Have a look at the docs for the provided samplers.

There is also an explanation regarding pin_memory.

Host to GPU copies are much faster when they originate from pinned (page-locked) memory.

This will not speed up the GPU operation, but the copies between the host and the GPU.
Also, it shouldn’t run out of memory.