boostorg / boostorg/hana

Investigate the performance of cartesian_product

Open
#271 0 comments 1 reaction 0 assignees View on GitHub
optimization
Dominant language
C++
Stars
1.9k
Forks
225
PR merge metrics
No merged PRs in 30d

Description

In a [recent discussion](https://gitter.im/mpark/variant?at=5716c55225b488663625639b) with @mpark, we found out that his implementation of multi visitation on variants was **much** faster than an equivalent implementation based on Hana (in terms of compile-time, we didn't check the runtime). This might hint at a performance problem in `hana::cartesian_product`, or even at a more general performance problem with constexpr-based computation of indices. This has to be looked into.

Contributor guide

Open the contributing guide

Research direction

Start with hana::cartesian_product and the linked Gitter discussion, then compare its compile-time behavior with the cited multi-visitation implementation. Investigate whether the slowdown is specific to cartesian_product or reflects a broader issue with constexpr-based index computation, and document a reproducible comparison and the findings.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, performance
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.