X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=profiler-torch.git;a=blobdiff_plain;f=test-profiler.lua;h=92f186e5cd8be1170916c8ac60b4050353f65bf9;hp=7c22576420c80875c0204e555708fdec9a5abe6a;hb=HEAD;hpb=79b01297857422ced2157d7daa2849a04623cdba diff --git a/test-profiler.lua b/test-profiler.lua index 7c22576..92f186e 100755 --- a/test-profiler.lua +++ b/test-profiler.lua @@ -2,33 +2,20 @@ --[[ - Written by Francois Fleuret (francois@fleuret.org) - - This is free and unencumbered software released into the public - domain. - - Anyone is free to copy, modify, publish, use, compile, sell, or - distribute this software, either in source code form or as a - compiled binary, for any purpose, commercial or non-commercial, and - by any means. - - In jurisdictions that recognize copyright laws, the author or - authors of this software dedicate any and all copyright interest in - the software to the public domain. We make this dedication for the - benefit of the public at large and to the detriment of our heirs - and successors. We intend this dedication to be an overt act of - relinquishment in perpetuity of all present and future rights to - this software under copyright law. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - For more information, please refer to + Copyright (c) 2016 Idiap Research Institute, http://www.idiap.ch/ + Written by Francois Fleuret + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License version 3 as + published by the Free Software Foundation. + + It is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU General Public License + along with this file. If not, see . ]]-- @@ -39,21 +26,25 @@ require 'profiler' -- Create a model +local w, h, fs = 50, 50, 3 +local nhu = (w - fs + 1) * (h - fs + 1) + local model = nn.Sequential() :add(nn.Sequential() - :add(nn.Linear(1000, 1000)) + :add(nn.SpatialConvolution(1, 1, fs, fs)) + :add(nn.Reshape(nhu)) + :add(nn.Linear(nhu, 1000)) :add(nn.ReLU()) ) :add(nn.Linear(1000, 100)) --- Decor it for profiling +-- Decorate it for profiling -profiler.decor(model) -print() +profiler.decorate(model) -- Create the data and criterion -local input = torch.Tensor(1000, 1000) +local input = torch.Tensor(1000, 1, h, w) local target = torch.Tensor(input:size(1), 100) local criterion = nn.MSECriterion() @@ -86,9 +77,10 @@ end -- Print the accumulated timings +print() +-- profiler.color = false profiler.print(model, nbSamples) -- profiler.print(model) -print() print(string.format('Total model time %.02fs', modelTime)) print(string.format('Total data time %.02fs', dataTime))