FREEDOM251

Freedom251 › Profiling Software

Scalene

Free plan ExtensionLinuxMacWebWindows

Visit Scalene Alternatives Pricing

Scalene's own site

What Scalene is

Scalene is a free, open-source profiler for Python programs, available for free. It measures CPU, GPU, and memory use, with reports at both line and function level that separate Python execution from native-code and system time. Memory reports show per-line use, distinguish Python and native allocations, and point to lines with likely leaks. GPU profiling reports time on NVIDIA-based systems. For asynchronous code, Scalene attributes wall-clock waiting to the suspended coroutine line and reports mean and peak concurrent waiters. Its GUI can show stitched Python and native call stacks, memory flame charts, and a timeline. You can use it from the command line, web interface, Visual Studio Code extension, or Jupyter notebooks. The web interface processes profiles locally and works offline. Scalene supports optimization proposals through Amazon Bedrock, Microsoft Azure, OpenAI, and local models via Ollama. Installation platforms listed include macOS, Linux, Windows, and Windows Subsystem for Linux 2. Profiling overhead is typically no more than 10–20%, and often less.

Who it suits

Scalene suits Python developers who need to investigate CPU, GPU, memory, or asynchronous waiting costs. It also fits users who want profiling through a command line, GUI, editor extension, or notebook.

What it does well

  • Reports CPU, GPU, and memory use.
  • Separates Python, native-code, and system time.
  • Identifies lines with likely memory leaks.
  • Offers command-line, GUI, VS Code, and notebook interfaces.
  • Web interface works offline and processes profiles locally.

What to know first

  • GPU profiling reports time on NVIDIA-based systems.
  • Windows troubleshooting may require the Visual C++ Redistributable.

Limits

The listed plan is free. GPU profiling reports time on NVIDIA-based systems, and profiling overhead is typically no more than 10–20%, and often less.

Plans

PlanBilled and limitsPrice
ScaleneOpen-source Python profiler · install via pip or condaFree

As github.com lists them, read 4 Oct 2026. The maker's own page has the final word.

Getting started

  1. Install Scalene via pip or conda.
  2. Choose a supported installation platform: macOS, Linux, Windows, or Windows Subsystem for Linux 2.
  3. Use the command line, web-based GUI, Visual Studio Code extension, or Jupyter notebooks.
  4. For AI optimization proposals, choose a listed provider: Amazon Bedrock, Microsoft Azure, OpenAI, or Ollama local models.

Overview

Scalene is a Python profiler for developers diagnosing CPU, memory, GPU, or asynchronous waiting costs. It is strongest when a program crosses Python and native-code boundaries or when a broad runtime figure is not enough to locate a problem.

Its line-level reports and multiple ways to inspect results make it a capable free option for Python work. The main caveats are that GPU reporting is limited to NVIDIA-based systems and profiling adds overhead, typically no more than 10–20% and often less.

Key features

  • CPU and execution time: Scalene reports performance by line and function, separating Python time from native-code and system time. That separation can help developers decide whether to optimize Python logic or investigate work outside the interpreter, rather than chasing a single total.
  • Memory: Per-line memory reporting distinguishes Python allocations from native ones and identifies lines with likely leaks. It gives developers useful leads for investigation, but a likely leak is not itself a diagnosis.
  • GPU: GPU profiling reports time on NVIDIA-based systems. This makes Scalene relevant to Python workloads on that hardware, but readers using other GPU platforms should not choose it for GPU analysis.
  • Asynchronous work: Scalene attributes wall-clock await time to the line where a coroutine suspends, and reports mean and peak concurrent waiters. Those measures can help locate waiting in async code, not just CPU-heavy work.
  • Visual inspection: Its GUI can show stitched Python and native call stacks, memory flame charts, and a timeline. These views can help follow work across code boundaries and inspect memory patterns without relying only on textual output.
  • Interfaces: The profiler works from the command line, a web GUI, a Visual Studio Code extension, or Jupyter notebooks. The range suits both terminal-based investigations and notebook or editor workflows. Its web interface processes profiles locally and works offline; API keys passed through environment variables are sent only to the local browser session and are not written into the HTML file.
  • AI proposals: Optimization suggestions can use Amazon Bedrock, Microsoft Azure, OpenAI, or local models through Ollama. This adds a route to proposed changes, but the profiling data remains the basis for deciding what to optimize.

Pricing

Scalene costs nothing. The open-source Python profiler is installed through pip or conda, with no paid tier or trial to weigh against the free option. Its Apache-2.0 license is also relevant to teams considering how to use or adapt the project.

There are no published seat counts or usage quotas attached to the plan. Profiling overhead still matters in practice: the README puts it typically at no more than 10–20%, and often lower, so measured runs may take longer than unprofiled ones.

Platforms

Scalene is a desktop-deployed profiler for Python, with sampling profiling and CPU, memory, and thread profiling. Supported installation platforms include macOS, Linux, Windows, and Windows Subsystem for Linux 2. The product is also available as a web interface and extension, with Jupyter notebook support.

Windows support includes full memory profiling starting with Scalene 2.0. Troubleshooting may require the Visual C++ Redistributable, a practical setup consideration for Windows users.

Who it's for

Scalene is a good fit for Python developers who need to distinguish interpreter work from native or system time, trace memory use to particular lines, or inspect asynchronous waits. It is especially useful when the team wants more than a command-line report, since the GUI, editor extension, and notebook interface provide alternate ways to examine profiles.

It is less suitable when GPU analysis must cover non-NVIDIA systems, or when profiling overhead is unacceptable. Teams seeking community discussion can use the project's Scalene Slack.

Pros and cons

  • Pro: Line- and function-level CPU reporting separates Python, native-code, and system time, helping narrow the source of a slowdown.
  • Pro: Per-line memory analysis distinguishes Python and native allocations and flags likely leaks, giving memory investigations a concrete starting point.
  • Pro: The GUI, command line, VS Code extension, and Jupyter support accommodate different development workflows.
  • Pro: The browser interface works offline and processes profiles locally, useful for keeping profile inspection on the local machine.
  • Con: GPU profiling is for NVIDIA-based systems, limiting its appeal for other GPU hardware.
  • Con: Profiling adds overhead, typically up to 10–20%, which can affect the runtime being measured.
  • Con: Windows troubleshooting may require the Visual C++ Redistributable, adding a setup step for some users.

Alternatives

Profiling Software is the broader category to explore when comparing tools beyond a Python-specific profiler.

  • Grafana Cloud Application Observability is a better fit for readers seeking cloud application observability with a free allowance of 2,232 host hours and a Pro option billed at $0.025 per host hour plus a $19 monthly platform fee.
  • Javadoc is the relevant alternative for Java documentation; it is included with JDK 25, whose binaries are free under Oracle No-Fee Terms and Conditions through September 2028.
  • Pyroscope suits readers looking for a profiling service with a free plan including 50 GB ingested per month and 14-day retention, or a Pro plan with a $19 monthly platform fee.
  • VisualVM is a standalone Java troubleshooting tool for Windows, Linux, and macOS, covering Java 8–26.
  • AMD Auto-Detect and Install Tool is for Windows users who need AMD Radeon graphics or Ryzen chipset detection and installation support.
  • async-profiler is a free Apache-2.0 profiler with Linux and macOS binaries for readers comparing another open-source profiling option.
  • Google Cloud Profiler is a no-cost cloud profiler with profile data retained for 30 days, subject to quotas and limits.
  • Grafana k6 is a load-testing option with a free allowance of 500 virtual user hours per month and a Pro plan with a $19 platform fee.

Verdict

Choose Scalene if you need detailed Python profiling across CPU, memory, native-code, and async behavior, with several interfaces and no software charge. Its most compelling advantage is the combination of line-level detail and views that can show where Python work gives way to native execution. Look elsewhere if GPU reporting must extend beyond NVIDIA hardware or if even moderate profiling overhead is unacceptable.

Verdict

Scalene combines detailed Python profiling with multiple interfaces and optional AI optimization proposals. Its NVIDIA-based GPU reporting and potential Windows troubleshooting requirement are worth noting before choosing it.

Questions

How much does Scalene cost?

The Scalene plan is free. It is open source under the Apache-2.0 license.

Which platforms support installation?

The project lists macOS, Linux, Windows, and Windows Subsystem for Linux 2.

Which interfaces can I use?

Scalene can be used from the command line, a web-based GUI, a Visual Studio Code extension, or Jupyter notebooks.

What does Scalene profile?

It profiles Python programs for CPU, GPU, and memory use, including line- and function-level reports. GPU profiling reports time on NVIDIA-based systems.

Which AI providers are supported for optimization proposals?

The project lists Amazon Bedrock, Microsoft Azure, OpenAI, and local models via Ollama.

Does the web interface send profiles to a server?

The project says the web interface processes profiles locally and works offline. It also says environment-provided API keys are sent only to the local browser session and are never written into the HTML file.

Facts from Scalene's own pages

AI providers
For optimization suggestions, Scalene lists Amazon Bedrock, Microsoft Azure, OpenAI, and local models via Ollama as supported providers. · github.com, 4 Oct 2026
Async profiling
Async profiling attributes wall-clock await time to the line where a coroutine is suspended and reports mean and peak concurrent waiters. · github.com, 4 Oct 2026
Detailed profiling
It reports performance at line and function level and separates Python time from native-code and system time. · github.com, 4 Oct 2026
GPU support
GPU profiling reports time on NVIDIA-based systems. · github.com, 4 Oct 2026
Install platforms
The project lists macOS, Linux, Windows, and Windows Subsystem for Linux 2 as supported installation platforms. · github.com, 4 Oct 2026
Interfaces
Scalene can be used from the command line, a web-based GUI, a Visual Studio Code extension, or Jupyter notebooks. · github.com, 4 Oct 2026
License
The repository identifies its license as Apache-2.0. · github.com, 4 Oct 2026
Local processing
The web interface processes profiles locally and works offline; the project says API keys passed from environment variables are sent only to the local browser session and are never written into the HTML file. · github.com, 4 Oct 2026
Memory analysis
It reports per-line memory use, distinguishes Python from native allocations, and identifies lines with likely memory leaks. · github.com, 4 Oct 2026
Performance overhead
The README says profiling overhead is typically no more than 10–20%, and often less. · github.com, 4 Oct 2026
Purpose
Scalene profiles Python programs for CPU, GPU, and memory use and provides AI-powered optimization proposals. · github.com, 4 Oct 2026
Stack views
Its GUI can display stitched Python and native call stacks, memory flame charts, and a timeline. · github.com, 4 Oct 2026
Support
The project links to a Scalene community Slack for community discussion. · github.com, 4 Oct 2026
Windows note
Starting with Scalene 2.0, Windows supports full memory profiling; troubleshooting may require the Visual C++ Redistributable. · github.com, 4 Oct 2026

Where Scalene stands on Freedom251

Look at these too