Unfortunately, I cannot debug more without seeing the actual stacktrace or any more debugging information about the images etc.
Your code works using larger images as seen here:
transf = transforms.Compose([transforms.Resize(255),
                             transforms.ToTensor(),
                             transforms.Normalize((0.5,0.5,0.5),(0.5,0.5,0.5))
                            ])

dataset = datasets.FakeData(size=100, image_size=(3, 320, 480), transform=transf)

trains=int(0.7 * len(dataset))
tests=len(dataset)-trains

train_dataset, test_dataset = torch.utils.data.random_split(dataset, [trains, tests])  
trainload = torch.utils.data.DataLoader(train_dataset, batch_size=8, shuffle=True)
testload = torch.utils.data.DataLoader(test_dataset, batch_size = 8, shuffle=True)

data_iter = iter(trainload)
images, labels = next(data_iter)
fig, axes = plt.subplots(figsize = (10,4), ncols=4)
for ii in range(4):
    ax = axes[ii]
    ax.imshow(images[ii].permute(1, 2, 0))