this is one of my first times using pytorch so it’s likely something small and stupid .
I have a very small model with 2 conv1d layers. when I make their filten len small enough the model trains. when I increase it the model fails.
I have a gtx1070 8gb gpu that I have ran larger models (order of magnitude) on with the same data (in keras).
The following is the error I get

Process finished with exit code -1073740940 (0xC0000374)

This is a dummy test for the code:
import torch
import torch.nn as nn
from torch.autograd import Variable
import torch.nn.functional as F
import numpy as np

class Net(nn.Module):
    def __init__(self, in_channels, out_channels, filter_len):
        super(Net, self).__init__()
        self.conv_lin = nn.Conv1d(in_channels, out_channels, filter_len, padding=filter_len - 1)
        nn.init.xavier_uniform(self.conv_lin.weight)
        self.conv_sig = nn.Conv1d(in_channels, out_channels, filter_len, padding=filter_len - 1)
        nn.init.xavier_uniform(self.conv_sig.weight)

    def forward(self, x):
        x_lin = self.conv_lin(x)
        x_sig = torch.sigmoid(self.conv_sig(x))
        return F.log_softmax(x_lin * x_sig, dim=1)



# Define train and test data
batch_size = 32
train_loader = None  # Change this to training data iterator
test_loader = None  # Change this to testing data iterator


# Checking GPU availability
use_gpu = True #torch.cuda.is_available()


model = Net(13, 25, 40) # Process finished with exit code -1073740940 (0xC0000374)
model = Net(13, 25, 9) # works
if use_gpu:
    model = model.cuda()

optimizer = torch.optim.SGD(model.parameters(), 0.01, 0.9)



model.train()
criterion = nn.CTCLoss(blank=24, reduction='mean')
for batch_idx in range(100):

    mfcc = Variable(torch.from_numpy(np.random.randn(5, 13, 200)).cuda())
    input_lengths = Variable(torch.from_numpy(np.random.randint(100, 200, size=(mfcc.shape[0]))).cuda())
    output_lengths = Variable(torch.from_numpy(np.random.randint(50, 75, size=(mfcc.shape[0]))).cuda())
    labels = Variable(torch.from_numpy(np.random.randint(0, 24, size=(output_lengths.sum()))).cuda())


    optimizer.zero_grad()
    output = model(mfcc.float()).transpose(1, 2).transpose(0, 1)
    loss = criterion(output, labels, input_lengths, output_lengths)

    loss.backward()
    print("hi")
    optimizer.step()

does anyone have an idea why this is falling?