[C++] Investigate scalar.h usage and reduce cost of function.h include
- Vorherrschende Sprache
- C++
- Sterne
- 17.1k
- Forks
- 4.3k
- Ø Merge
- 3 T. 18 Std.
- Gemergte PRs (30 T.)
- 91
Beschreibung
### Describe the enhancement requested
Scalars are usually passed around via shared_ptr. So we can often get away with a forward declaration. However, clang build analyzer reports that the scalar.h header is included quite often. We should investigate why this is and see if we can shave a bit of time off our builds by fixing it.
In addition, the function.h include is rather heavy. It is included often because it is needed by the api_xyz.h files in the compute module. However, these files only need the function options. We should see if breaking function options into its own file helps shave down the build time.
### Component(s)
C++
Beitragsleitfaden
Rechercherichtung
Verwende den clang build analyzer, um zu untersuchen, warum scalar.h so häufig eingebunden wird, und konzentriere dich dabei auf die Verwendung von shared_ptr und Möglichkeiten für Vorwärtsdeklarationen. Untersuche anschließend function.h und die api_xyz.h-Dateien im compute-Modul, um festzustellen, ob das Trennen der Funktionsoptionen die Include-Kosten reduziert. Erledigt bedeutet, die gemessenen Auswirkungen auf den Build zu dokumentieren und die Include-Struktur entsprechend schlanker zu gestalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cpp
- Bereich
- build-system, performance
- Issue-Typ
- Refactoring
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100