One can say that PBC creates a grid of virtual copies (virtual since they are not real, they are not independently simulated in memory; and copies since every one of them has the same magnetization as the simulated area, but shifted into a grid). However, technically there are no copies at all. PBC makes two(three) things:
1) demag field is computed not from a single cell, but from a grid of virtual copies of a cell. the field is calculated using a pre-computed kernel, so the "grid of virtual copies" only "exists" during the calculation of the kernel. That is why it takes longer time to compute demag kernel for PBC(10, 10, 0) than (1,1,0) but the same time to compute demag field during every timestep. Demag kernel must be accurate enough, and the relevant value is L × PBC (how far do you assume two spins should be until they stop interacting via their dipolar magnetic field). That is why it is ofthen worth to invest some time into computing the demag kernel with large PBC, if you do multiple simulations with the same grid.
2) Internally, demag field is always computed using FFT, which always assumes infinite periodicity. To combat this for limited samples, the arrays are padded with zeros to 2x of every dimension every single timestep before FFT and cropped after. PBC in a dimension removes the need to pad the array in that dimension. That is why the computation becomes faster with each non-zero PBC.
3) PBC also is accounted in the exchange field calculation at the edges.
In short,
PBC(1,1,0) does NOT result in an overall dimension of 300x300nm, it simulates infinitely periodic film with period of 100×100nm, with magnetic field extending 300 nm from each spin.