1
トーチ7を使用してAWS GPUインスタンスの1つで作業しています。 次のコードは、リニアモデルの単純なフォワードパスをベンチマークします。 GPUの実行は約4倍遅くなっているようです。私は間違って何をしていますか?トーチリニアモデルフォワードパスGPUでCPUが4倍遅くなった
require 'torch';
require 'nn';
cmd = torch.CmdLine()
cmd:option("-gpu", 0) -- gpu/cpu
cmd:option("-n_in", 100)
cmd:option("-n_out", 100)
cmd:option("-n_iter", 1000)
params = cmd:parse(arg)
A = torch.Tensor():randn(params.n_in);
model = nn.Sequential():add(nn.Linear(params.n_in, params.n_out))
if params.gpu>0 then
require 'cutorch';
require 'cudnn';
A = A:cuda()
model = model:cuda()
end
timer = torch.Timer()
for i=1,params.n_iter do
A2 = model:forward(A)
end
print("Average time:" .. timer:time().real/params.n_iter)
大きなサイズを試してください – kangshiyin
ありがとう、これはそうです! -n_in 10000 -n_out 500で実行すると、GPUで約30倍のスピードアップが得られます。 – pavel