コード例 #1
0
ファイル: grouper.py プロジェクト: e-alizadeh/pycallgraph
def run(name, trace_grouper=None, config=None, comment=None):
    if not config:
        config = Config()

    config.trace_filter = GlobbingFilter()

    if trace_grouper is not None:
        config.trace_grouper = trace_grouper

    graphviz = GraphvizOutput()
    graphviz.output_file = "grouper-{}.png".format(name)
    if comment:
        graphviz.graph_attributes["graph"]["label"] = comment

    with PyCallGraph(config=config, output=graphviz):
        example_with_submodules.main()
コード例 #2
0
ファイル: callgraph.py プロジェクト: whshangl/finmag
try:
    from pycallgraph import PyCallGraph
    from pycallgraph import Config
    from pycallgraph import GlobbingFilter
    from pycallgraph import Grouper
    from pycallgraph.output import GraphvizOutput
except ImportError:
    print "You need to install pycallgraph (for instance with `pip install pycallgraph`)."
    raise

from run_finmag import run_simulation

config = Config()
config.trace_grouper = Grouper(groups=[
    "finmag.util.*",
    "finmag.integrators.*",
    "finmag.energies.*",
    "finmag.sim.*",
])

# `max_depth`=15 is the level that would account for all calls to
# Exchange.__compute_field_petsc; 14 would miss those from TableWriter.save
config.trace_filter = GlobbingFilter(include=[
    'finmag.*',
    'run_finmag.*',
])
graphviz = GraphvizOutput(output_file='finmag_callgraph.png')

with PyCallGraph(output=graphviz, config=config):
    run_simulation()
コード例 #3
0
ファイル: example4pycallgraph.py プロジェクト: dz0/dummy
####################  PyCallGraph
from pycallgraph import PyCallGraph
from pycallgraph import GlobbingFilter
from pycallgraph import Config
from pycallgraph import Grouper
from pycallgraph.output import GraphvizOutput

config = Config()

# needed to group by submodules
config.trace_grouper = Grouper(groups=[
        "csv2df.reader.*" ,
        "csv2df.parser.*" ,
        "csv2df.emitter.*" ,
        "csv2df.validator.*" ,  # currently not used
        "csv2df.runner.*" ,

        'csv2df.util_row_splitter.*',
        'csv2df.specification.*',
    ])

config.trace_filter = GlobbingFilter
config.trace_filter = GlobbingFilter(exclude=[
        'csv2df.util_row_splitter.*',
        'csv2df.specification.*',
        "csv2df.reader.*" ,
        
        "config.*" , 


])