zoukankan      html  css  js  c++  java
  • theano profile

      所以我建议的关闭防火墙命令是

      iptables -P INPUT ACCEPT

      iptables -P FORWARD ACCEPT

      iptables -P OUTPUT ACCEPT

      iptables -F


    .. _tut_profiling:

    =========================
    Profiling Theano function
    =========================

    .. note::

        This method replace the old ProfileMode. Do not use ProfileMode
        anymore.

    Old:

    #vim ~/.theanorc

    find [global] add:

    Mode = ProfileMode


    Besides checking for errors, another important task is to profile your
    code in terms of speed and/or memory usage.

    You can profile your
    functions using either of the following two options:


    1. Use Theano flag :attr:`config.profile` to enable profiling.
        - To enable the memory profiler use the Theano flag:
          :attr:`config.profile_memory` in addition to :attr:`config.profile`.
        - Moreover, to enable the profiling of Theano optimization phase,
          use the Theano flag: :attr:`config.profile_optimizer` in addition
          to :attr:`config.profile`.
        - You can also use the Theano flags :attr:`profiling.n_apply`,
          :attr:`profiling.n_ops` and :attr:`profiling.min_memory_size`
          to modify the quantity of information printed.

    #vim ~/.theanorc

    find [global]

    add

    Profile = True


    2. Pass the argument :attr:`profile=True` to the function :func:`theano.function <function.function>`. And then call :attr:`f.profile.print_summary()` for a single function.
        - Use this option when you want to profile not all the
          functions but one or more specific function(s).
        - You can also combine the profile of many functions:
        
          .. doctest::
              :hide:

              profile = theano.compile.ProfileStats()
              f = theano.function(..., profile=profile)  # doctest: +SKIP
              g = theano.function(..., profile=profile)  # doctest: +SKIP
              ...  # doctest: +SKIP
              profile.print_summary()

    if profile is not work:

    add lines above is useful......

    The profiler will output one profile per Theano function and profile
    that is the sum of the printed profiles. Each profile contains 4
    sections: global info, class info, Ops info and Apply node info.

    In the global section, the "Message" is the name of the Theano
    function. theano.function() has an optional parameter ``name`` that
    defaults to None. Change it to something else to help you profile many
    Theano functions. In that section, we also see the number of times the
    function was called (1) and the total time spent in all those
    calls. The time spent in Function.fn.__call__ and in thunks is useful
    to understand Theano overhead.


    to run the example:

      THEANO_FLAGS=optimizer_excluding=fusion:inplace,profile=True python doc/tutorial/profiling_example.py

    The output:

    .. literalinclude:: profiling_example_out.prof

  • 相关阅读:
    Cpp Singleton
    回溯法( Backtracking Algorithms ) :C语言Maze迷宫问题(自己实现)
    First wxWidgets Demo, wxWidgets简单示例
    copy contructor拷贝构造函数 (Copy Control)
    UPX (Ultimate Packer for eXecutables) 多平台可执行文件压缩
    wxWidgets Event Handling
    WxWidgets 安装与测试
    顺序查找 sequential find
    HDU1171 Big Event in HDU 背包
    HDU2091 水题
  • 原文地址:https://www.cnblogs.com/Viewsky/p/5782634.html
Copyright © 2011-2022 走看看