Profiling/pl: Difference between revisions

From FreeCAD Documentation
(Created page with "Do profilowania kodu Python należy użyć standardowego modułu {{incode|cProfile}}, aby zdefiniować punkty początkowe i końcowe do profilowania w kodzie.")
(Created page with "Następnie zainstaluj i użyj {{incode|pyprof2calltree}}, aby przekonwertować dane wyjściowe profilu na dane wejściowe cachegrind.")
Line 20: Line 20:
}}
}}


Then install and use {{incode|pyprof2calltree}} to convert the profile output into cachegrind input.
Następnie zainstaluj i użyj {{incode|pyprof2calltree}}, aby przekonwertować dane wyjściowe profilu na dane wejściowe cachegrind.
{{Code|code=
{{Code|code=
pyprof2calltree -i /tmp/profile.cprof -o /tmp/callgrind.out
pyprof2calltree -i /tmp/profile.cprof -o /tmp/callgrind.out

Revision as of 18:37, 31 January 2024

Opis

Profilowanie kodu FreeCAD pomaga znaleźć wąskie gardła w algorytmach używanych do tworzenia lub manipulowania obiektami.

Do profilowania kodu Python należy użyć standardowego modułu cProfile, aby zdefiniować punkty początkowe i końcowe do profilowania w kodzie.

import cProfile
pr = cProfile.Profile()
pr.enable()

# --------------------------------------
# Lines of code that you want to profile
# --------------------------------------

pr.disable()
pr.dump_stats("/tmp/profile.cprof")

Następnie zainstaluj i użyj pyprof2calltree, aby przekonwertować dane wyjściowe profilu na dane wejściowe cachegrind.

pyprof2calltree -i /tmp/profile.cprof -o /tmp/callgrind.out

Then visualize this information with kcachegrind for Linux or qcachegrind for Windows.

kcachegrind /tmp/callgrind.out

Resources