Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make a funky BoxyDataPayload type for DateTimeFormat #3600

Open
Tracked by #3413
Manishearth opened this issue Jun 29, 2023 · 1 comment
Open
Tracked by #3413

Make a funky BoxyDataPayload type for DateTimeFormat #3600

Manishearth opened this issue Jun 29, 2023 · 1 comment
Labels
A-design Area: Architecture or design A-performance Area: Performance (CPU, Memory) C-datetime Component: datetime, calendars, time zones question Unresolved questions; type unclear

Comments

@Manishearth
Copy link
Member

Part of #3413

We discussed that DateTimeFormat stack size could be reduced by using a type that behaves like DataPayload, but its yoke variant is boxed. DateTimeFormat would then use it instead for symbols data.

In a future where #3128 happens we can still benefit from this by using a struct-of-borrows type. (effectively a Yoke<SymbolsDataBorrowed, Option<Box<SymbolsData>>> where SymbolsDataBorrowed is a struct full of borrows of the individual types)

In a future where we are no_alloc, the boxing optimization can be disabled in no_alloc mode.

This should be an internal change, though it may result in a new public DataPayload type.

@sffc
Copy link
Member

sffc commented Oct 5, 2023

Might be partially fixed by #3865

@sffc sffc added question Unresolved questions; type unclear A-performance Area: Performance (CPU, Memory) A-design Area: Architecture or design C-datetime Component: datetime, calendars, time zones labels Oct 5, 2023
@sffc sffc added this to the Backlog ⟨P4⟩ milestone Oct 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-design Area: Architecture or design A-performance Area: Performance (CPU, Memory) C-datetime Component: datetime, calendars, time zones question Unresolved questions; type unclear
Projects
None yet
Development

No branches or pull requests

2 participants