Performance issue on resize

Offen
#32 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Refactoring
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
cpp
Bereich
performance

Rechercherichtung

Beginne damit, die Implementierung von boost::multi_array für resize und die Behandlung von fortran_storage_order() zu finden. Verwende das Minimalbeispiel unter https://godbolt.org/z/GWbxcM14h, um das aktuelle Verhalten und die Performance zu vergleichen; abgeschlossen ist die Aufgabe, wenn das Resizing nur der rechtesten Dimension das Verhalten ohne die hier beschriebenen verschachtelten std::copy-Aufrufe bewahrt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

When I use boost::multi_array with boost::fortran_storage_order(), and I want to .resize by only the latest (rightmost) dimension, the current implementation is a nested N function call (std::copy), one by dimension.
The same functionality can be reached with one std::copy on the storage.

This minimal example shows the problem:
https://godbolt.org/z/GWbxcM14h

Vorherrschende Sprache
C++
Sterne
32
Forks
39
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus boostorg/multi_array

Alle Issues in boostorg/multi_array

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.