diff options
author | Clement Farabet <clement.farabet@gmail.com> | 2013-03-23 07:18:19 +0400 |
---|---|---|
committer | Clement Farabet <clement.farabet@gmail.com> | 2013-03-23 07:18:19 +0400 |
commit | 441aa30ea8d7f710c5776be605d4d7cf5746ddc0 (patch) | |
tree | d3a4222a4540b91cd70bf8323bc4b465145e0cc9 | |
parent | fa3d8a382ed45d6eab3ddf771c0350aa21413c71 (diff) |
Sped up getParameters() in simple situations.
-rw-r--r-- | Module.lua | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -192,8 +192,12 @@ function Module:getParameters() local k, v = unpack(storageAndOffset) flatParameters[{{v+1,v+k:size()}}]:copy(Tensor():set(k)) end - for k = 1,flatUsedParameters:nElement() do - flatUsedParameters[k] = flatParameters[k+cumSumOfHoles[k] ] + if cumSumOfHoles:sum() == 0 then + flatUsedParameters:copy(flatParameters) + else + for k = 1,flatUsedParameters:nElement() do + flatUsedParameters[k] = flatParameters[k+cumSumOfHoles[k]] + end end return flatUsedParameters end |