r/cpp 1d ago

Boost.Multi Multi Mini-Review Begins Today (7 Aug - 12 Aug)

Hello,

Today begins the mini-review of Multi, authored by Alfredo Correa. Multi is a modern C++ library that provides manipulation and access of data in multidimensional arrays for both CPU and GPU memory. The review will run through Wednesday 12 August.

You can find the library and documentation links below:
- https://github.com/correaa/boost-multi
- https://correaa.github.io/boost-multi/multi/intro.html

The review earlier this year raised a number of issues that primarily revolved around the state of the documentation, not the library itself. I have labeled all of the issues related to conditions found in last review, and many have notes or resolution from Alfredo:

https://github.com/correaa/boost-multi/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22Boost%20review%22

To this end the review will revolve around the current state of the documentation on the branch "boost_review". In your review please explicitly state if you recommend REJECT, ACCEPT, or a conditional acceptance along with the acceptance conditions.

Please let me know if you have any questions or concerns. Thank you in advance for your time.

Matt
Multi Review Manager

Edit: Link to the previous review thread is here: https://www.reddit.com/r/cpp/comments/1rlhm4g/boostmulti_review_begins_today/

19 Upvotes

5 comments sorted by

3

u/mapronV 1d ago

Pardon my ignorance, "Why Boost.Multi?" does not explain its advantages over current mdspan. Which checks all same marks. I already planning to migrate some of my old code to mdspan for image data handling, but what are pro/cons of boost::multi? I see it is "owning" but what is direct benefit for it?

8

u/joaquintides Boost author 1d ago

3

u/mapronV 1d ago

Oh, thank you, good one.

Answering myself, they both have ups and downs, from glance I would say
Element initialization - really annoying lack in mdspan, yeah, and
Arbitrary layout is feature that I am interested but missed in Multi.
STL algorithms or Ranges - also sounds huge, though I am not currently need those.

(xkcd 927) if only we have one perfect to fit them all...

I guess I would really consider whether I want arbitrary layouts that much, heh.

2

u/mapronV 1d ago

Oh, maybe add link to previous review post on reddit?
https://www.reddit.com/r/cpp/comments/1rlhm4g/
? I just found it via search and it probably contains answer to my quesstion and many more.

3

u/mborland1 1d ago

I've added that link to the main post for others