From: Francois Fleuret Date: Fri, 21 Oct 2016 10:23:03 +0000 (+0200) Subject: Use cudnn more efficiently. X-Git-Url: https://ant.fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=commitdiff_plain;h=be0c7d53f21ce96c70e7c13ef0ba2c9eca10ca23;p=dyncnn.git Use cudnn more efficiently. --- diff --git a/dyncnn.lua b/dyncnn.lua index 839431a..e104386 100755 --- a/dyncnn.lua +++ b/dyncnn.lua @@ -126,10 +126,10 @@ torch.manualSeed(opt.seed) mynn = {} --- By default, mynn returns the entries from nn +-- To deal elegantly with CPU/GPU local mt = {} function mt.__index(table, key) - return nn[key] + return (cudnn and cudnn[key]) or (cunn and cunn[key]) or nn[key] end setmetatable(mynn, mt) @@ -144,8 +144,13 @@ if useGPU then require 'cutorch' require 'cunn' require 'cudnn' + mynn.FastTensor = torch.CudaTensor - mynn.SpatialConvolution = cudnn.SpatialConvolution + + if cudnn then + cudnn.benchmark = true + cudnn.fastest = true + end end ----------------------------------------------------------------------