Torch version: 0.5.0a0+e8536c0 (master branch as of 10-Jul-2018, 1.46 AM IST)
The below function calls exhibit segmentation fault:
In CPU:
import torch
x = torch.randn(32, 100) # works
print(torch.svd(x))

x = torch.randn(33, 100) # segmentation fault
print(torch.svd(x))

x = torch.randn(32,3500);  # works
print(torch.svd(x))

x = torch.randn(33, 3500) # segmentation fault
print(torch.svd(x))

##--------------------------------------------

x = torch.randn(100, 32) # works
print(torch.svd(x))

x = torch.randn(100, 33) # segmentation fault
print(torch.svd(x))

x = torch.randn(1000000,32);  # works
print(torch.svd(x))

x = torch.randn(1000000,33);  # segmentation fault
print(torch.svd(x))



In GPU (GeForce GTX Titan X):
import torch

x = torch.randn(16, 100).cuda();  # works
print(torch.svd(x))

x = torch.randn(17, 100).cuda();  # segmentation fault
print(torch.svd(x))

x = torch.randn(16, 3500).cuda();  # works
print(torch.svd(x))

x = torch.randn(17, 3500).cuda();  # segmentation fault
print(torch.svd(x))

x = torch.randn(16, 2500).cuda();  # works
print(torch.svd(x))

x = torch.randn(17, 2500).cuda();  # segmentation fault
print(torch.svd(x))

##-----------------------------------------------------------

x = torch.randn(100, 10).cuda();  # works
print(torch.svd(x))

x = torch.randn(100, 11).cuda();  # segmentation fault
print(torch.svd(x))

x = torch.randn(500, 10).cuda();  # works
print(torch.svd(x))

x = torch.randn(500, 11).cuda();  # segmentation fault
print(torch.svd(x))

Seems to be a bug?
I think, there are some corner cases not handled in code probably. I am not sure.
related posts: Segmentation fault for SVD implementation in GPU for large matrices 4