PerspectiveExamples

Benchmarks — Python by release

Y Line chart of Time (ms), grouped by version, split by benchmark, filtered to outlier == false, sorted by version_idx, with 1 computed expression column.

Mean time of each Python benchmark case across every published Perspective release.

Benchmarks — Python by release: Y Line chart of Time (ms), grouped by version, split by benchmark, filtered to outlier == false, sorted by version_idx, with 1 computed expression column.

Data

Perspective's own benchmark results for perspective-python — the native engine, driven from a Node.js client over WebSocket — as published with each GitHub release: every timed iteration of table construction, streaming updates, pivots, expressions, joins and serialization over the Superstore dataset, for the current and prior releases, measured by CI on a GitHub Actions ubuntu-22.04 runner.

Loaded from /data/benchmark-python.arrow as arrow into the perspective-server engine.

Configuration

This example is a saved <perspective-viewer> workspace. Pass this JSON to viewer.restoreWorkspace() to reproduce it over the same table:

{
    "layout": {
        "type": "tab-layout",
        "tabs": [
            "p0"
        ],
        "selected": 0
    },
    "panels": {
        "p0": {
            "table": "",
            "title": "Time by release",
            "plugin": "Y Line",
            "group_by": [
                "version"
            ],
            "split_by": [
                "benchmark"
            ],
            "columns": [
                "Time (ms)"
            ],
            "expressions": {
                "Time (ms)": "\"real_time\" / 1000"
            },
            "aggregates": {
                "Time (ms)": "avg",
                "version_idx": "avg"
            },
            "filter": [
                [
                    "outlier",
                    "==",
                    false
                ]
            ],
            "sort": [
                [
                    "version_idx",
                    "desc"
                ]
            ]
        }
    },
    "active": "p0"
}

About Perspective

Perspective is an open-source, WebAssembly-powered data grid, pivot table and charting component for large, real-time and streaming datasets — in the browser, Python, Jupyter, Node.js and Rust.

Documentation