xtensor-stack/xtensor

C++ tensors with broadcasting and lazy computing

View on GitHub ↗Jump to charts ↓

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 47 minutes ago
Added to GitGenius on September 18th, 2026
Created on October 30th, 2016
Open Issues & Pull Requests: 427 (+0)
GitHub issues: Enabled
Number of forks: 442
Total Stargazers: 3,765 (+0)
Total Subscribers: 82 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 19.3 days
Mean response time: 251.1 days
90th percentile: 974.3 days
Tracked items: 62

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 7, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits.

How this project is maintained

92% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 83% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 39
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,018 days
Stale 30+ days: 39
Stale 90+ days: 36

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Bug (9)
  • Question (4)
  • Feature Request (3)
  • C++20 (2)
  • Enhancement (2)
  • Answered (1)
  • C++17 (1)
  • Compiler bug (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

xtensor is a C++ library for numerical analysis with multi-dimensional arrays that provides lazy broadcasting and expression-based computation.

The library solves the problem of performing efficient numerical operations on multi-dimensional data in C++ by offering an expression system that delays computation until results are needed, enabling lazy evaluation and automatic broadcasting. It follows C++ standard library idioms and provides an API inspired by NumPy, making it familiar to developers accustomed to Python's array programming model. The tool includes adaptors that allow existing data structures to be integrated into its expression system, and it can process NumPy, Julia, and R arrays in-place through language bindings.

Developers should choose xtensor for projects requiring high-performance numerical computing in C++ where lazy evaluation and broadcasting semantics are valuable. It suits applications that need to interoperate with Python data structures or other scientific computing ecosystems. The library is available as a header-only installation through package managers including mamba, conda, and vcpkg, making integration straightforward. It depends on the xtl library and optionally on xsimd for SIMD acceleration, which can be enabled by defining a preprocessor macro before including headers.

The project maintains active development with regular updates to support newer C++ standards, progressing from C++14 through C++17 and C++20 across successive versions. The tool is documented with comprehensive reference materials and supports interactive exploration through Jupyter notebooks via the xeus-cling kernel, enabling a NumPy-like workflow directly in C++.