deepforge-dev / deepforge

A modern development environment for deep learning
https://deepforge.org
Apache License 2.0
753 stars 78 forks source link

Profiling Different Modules #540

Open amdegroot opened 8 years ago

amdegroot commented 8 years ago

Just a thought that came to mind, it would be really cool to have deepforge profiling without having to manually go in and make use of one of the existing tools. Two that currently exist are: https://github.com/e-lab/Torch7-profiling and https://github.com/clementfarabet/lua---nnx/blob/81d533254e39738ec95d27da96b12aa93eaaa725/Probe.lua which is part of the 'nnx' extension to the nn package

brollb commented 8 years ago

This could be provided in the deepforge object. Something like:

profile = deepforge.Profile('Some Profile Name')
t1 = profile:Timer('Some Timer Name')
t1:start()
-- Some code to be timed
t1:stop()

This could potentially be extended to let the Timer object create other Timers... This might allow for users to create flamecharts (which would be cool and useful)... image

brollb commented 8 years ago

This could be useful: https://github.com/spiermar/d3-flame-graph