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

  • 相关阅读:
    3:基于乐观锁(两种)控制并发: version、external锁
    4: ES内执行Groovy脚本,做文档部分更新、执行判断改变操作类型
    2 Match、Filter、排序、分页、全文检索、短语匹配、关键词高亮
    第63章 ASP.NET Identity 支持
    第62章 EntityFramework支持
    第61章 IdentityServer Options
    第60章 设备流交互服务
    第59章 IdentityServer交互服务
    第58章 Profile Service
    第57章 GrantValidationResult
  • 原文地址:https://www.cnblogs.com/Viewsky/p/5782634.html
Copyright © 2011-2022 走看看