Skip to content

Add-on Profiler

by MrClock·Workflow

Images © MrClock. Used for product review; image policy.

Why we like it

Add-on Profiler earns its place in the blender_extensions library as an in-software approach to profiling for add-on developers, bringing execution logging and cProfile-based profiling into the 3D viewport sidebar. It is a reimplementation of the earlier Plugin-Profiler project.

What is Add-on Profiler?

Add-on Profiler is a Python utility add-on for Blender that monitors code execution and captures profiling data during add-on development. It is a reimplementation of the original Plugin-Profiler add-on created by DB3D and improved by rubenmesserschmidt.

Its two main tools are execution logging and profiling, found on the Add-on Profiler tabs of the 3D viewport sidebar. Logging monitors all execution calls in the running Python session and can be filtered by options like function names and source files; because of how this works, execution runs considerably slower, but it makes rampant function calls easier to catch through live logs. Profiling uses the cProfile and pstats modules to capture profiling data, which can be formatted and sent to the system console or saved as a profiling data file.

Saved profiling data can be visualized with the Snakeviz library, which has to be installed locally as a separate package. The reimplementation is built for the extension system of Blender 4.2 and newer, with backwards compatibility known to Blender 2.90.0.

Who is Add-on Profiler best for?

Add-on Profiler is best for blender add-on developers who want to monitor code execution and capture profiling data from within the software during development.

How much does Add-on Profiler cost?

Add-on Profiler is completely free to download and use.

Key features

  • Execution logging that monitors all execution calls in the running Python session
  • Log output filtering by options like function names and source files
  • Filter Time logging option added in version 2.1.0
  • Profiling built on the cProfile and pstats modules
  • Profiling data formatted to the system console or saved as a profiling data file
  • Saved profiling data can be visualized with the Snakeviz library, installed separately
  • Tools accessible from the Add-on Profiler tabs of the 3D viewport sidebar

Tags

#Blender#profiling#debugging#add-on development#Python#performance#developer tools

Frequently asked questions

Does Add-on Profiler work with Blender 4.2 and older versions?

Add-on Profiler is a reimplementation built for the extension system of Blender 4.2 and newer, and it is listed as compatible with Blender 4.2 LTS and newer. Backwards compatibility is known to Blender 2.90.0, and the 2.1.0 release notes list tested compatibility across Blender 2.90 through 4.2. It installs from the packaged release like any other add-on, so if you are working within that version range you should be able to add it to your setup.

Do I need Snakeviz to use Add-on Profiler?

Add-on Profiler captures profiling data using the cProfile and pstats modules, and that data can be formatted and output to the system console or saved as a profiling data file without any extra library. Snakeviz only comes into play when you want to visualize saved profiling data files; it has to be installed locally as a separate package, and instructions for using it are in the Snakeviz documentation. So the core logging and profiling tools work on their own, with Snakeviz as an optional step for visualization.

What license is Add-on Profiler released under, and is it free?

Add-on Profiler is released under the GNU General Public License v3.0 or later, and it is listed here as free. For current licensing terms and any usage conditions, check the developer's page. The add-on also requests one permission, for files, so it can save and process benchmark and profile data. The source code is available through the developer's repository if you want to review how it works or how it is licensed in detail.

How do I install Add-on Profiler in Blender?

Add-on Profiler can be installed from the packaged release like any other Blender add-on, and it supports drag and drop into Blender or installing from disk. It is built to be compatible with the extension system introduced in Blender 4.2 and newer. General guidance on installing add-ons is available in the official Blender Manual, and once installed its tools appear on the Add-on Profiler tabs of the 3D viewport sidebar.

Alternatives to Add-on Profiler

Also in Workflow for Blender.

Similar plugins