Hi!
I have audio signal with 120000 samples and 16 channels. I want to process this signal using 1D convolution network. I do it using following code (simplified):
require 'cunn';
torch.setdefaulttensortype('torch.FloatTensor')
cutorch.setDevice(2)
net = nn.Sequential()
net:add(nn.TemporalConvolution(16, 16, 17))
net = net:cuda()
input = torch.rand(120000, 16):cuda()
local tic = torch.tic()
output = net:forward(input)
print( torch.toc(tic) )
print( output:size() )
In this example I have forward pass time about 1.25s on Titan X. In my opinion this time is extremely high.
This time depends on input tensor size (2.54s for 240000x16) and does not depend on kernel size at all.
I think that the problem is in memory management, but I can't recognize where. Could you help me find the problem?
Thanks in advance.