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

P0876 fiber_context - fibers without scheduler #117

Open
jensmaurer opened this issue Jan 26, 2019 · 12 comments
Open

P0876 fiber_context - fibers without scheduler #117

jensmaurer opened this issue Jan 26, 2019 · 12 comments

Comments

@jensmaurer
Copy link
Member

@jensmaurer jensmaurer commented Jan 26, 2019

P0876R5 fiber_context - fibers without scheduler (Oliver Kowalke, Nat Goodspeed)

@jensmaurer jensmaurer added this to the 2019-02 milestone Jan 26, 2019
@ogiroux ogiroux added this to Wednesday in SG1KonaFeb2019 Feb 14, 2019
@ogiroux ogiroux moved this from Wednesday to Friday in SG1KonaFeb2019 Feb 17, 2019
@jensmaurer

This comment has been minimized.

Copy link
Member Author

@jensmaurer jensmaurer commented Mar 20, 2019

@wg21bot

This comment has been minimized.

Copy link
Collaborator

@wg21bot wg21bot commented Jun 23, 2019

P0876R6 fiber_context - fibers without scheduler (Oliver Kowalke, Nat Goodspeed)

@wg21bot wg21bot added this to the 2019-07 milestone Jun 23, 2019
@ogiroux ogiroux added this to Wednesday in SG1 in Cologne 2019 Jul 13, 2019
@ogiroux ogiroux moved this from Wednesday to Monday in SG1 in Cologne 2019 Jul 13, 2019
@ogiroux

This comment has been minimized.

Copy link
Collaborator

@ogiroux ogiroux commented Jul 19, 2019

When a non-empty fiber_context is destroyed...

...we like the previous version of the paper (R5+fixes?).
SF F N A SA
0 4 9 7 1

...we like the paper as proposed (R6).
SF F N A SA
1 0 3 10 9

...we like the paper changed to UB (so the user has to do it all).
SF F N A SA
1 12 6 3 1

...we like the paper changed to invoke a function (in that fiber).
SF F N A SA
6 9 9 0 0 - Increases consensus

The cancellation function should have a default in the TS
SF F N A SA
0 2 4 17 2

@ogiroux

This comment has been minimized.

Copy link
Collaborator

@ogiroux ogiroux commented Jul 19, 2019

After the following changes are applied...

  • change ~fiber_context and operator=() to have "requires: is empty" instead of cancelling
  • add cancel() and cancel_from_any_thread() that calls the cancellation function if not empty
  • replace thread termination when returning an empty fiber_context, with UB
    ...the SG1 design of fiber_context is ready for a TS vehicle
    SF F N A SA
    3 7 0 0 0

We need more SG1 wording review before merging into a TS
SF F N A SA

  • Unanimous consent
@wg21bot

This comment has been minimized.

Copy link
Collaborator

@wg21bot wg21bot commented Aug 23, 2019

P0876R8 fiber_context - fibers without scheduler (Oliver Kowalke, Nat Goodspeed)

@wg21bot wg21bot modified the milestones: 2019-07, 2019-11 Aug 23, 2019
@wg21bot

This comment has been minimized.

Copy link
Collaborator

@wg21bot wg21bot commented Oct 15, 2019

P0876R9 fiber_context - fibers without scheduler (Oliver Kowalke, Nat Goodspeed)

@theres-waldo theres-waldo added the EWGI label Oct 28, 2019
@theres-waldo

This comment has been minimized.

Copy link
Collaborator

@theres-waldo theres-waldo commented Oct 28, 2019

Based on discussion with JF, this should get language review, and it should start with EWG-I.

@ogiroux ogiroux added this to Thursday in SG1Belfast2019 Nov 3, 2019
@ogiroux ogiroux moved this from Thursday to No planned discussion in SG1Belfast2019 Nov 3, 2019
@theres-waldo

This comment has been minimized.

Copy link
Collaborator

@theres-waldo theres-waldo commented Nov 7, 2019

EWG-I in Belfast

P0876R9 is ready to bring to EWG as it stands.
SF / F / N / A / SA
2 / 8 / 2 / 1 / 0

@theres-waldo theres-waldo added EWG and removed EWGI labels Nov 7, 2019
@jfbastien jfbastien added this to Friday in EWGBelfast2019 Nov 7, 2019
@theres-waldo

This comment has been minimized.

Copy link
Collaborator

@theres-waldo theres-waldo commented Nov 7, 2019

(EWG-I did suggest adding a section to the paper to discuss some of the issues that came up, such as TLS and and saving the floating-point state. However, given the poll, I forwarded the paper to EWG without blocking on that revision.)

@jfbastien

This comment has been minimized.

Copy link
Collaborator

@jfbastien jfbastien commented Jan 5, 2020

This was seen by EWG in Belfast, will see again.

@jensmaurer jensmaurer removed this from the 2019-11 milestone Jan 5, 2020
@wg21bot

This comment has been minimized.

Copy link
Collaborator

@wg21bot wg21bot commented Jan 18, 2020

P0876R10 fiber_context - fibers without scheduler (Oliver Kowalke, Nat Goodspeed)

@wg21bot wg21bot added this to the 2020-02 milestone Jan 18, 2020
@jfbastien jfbastien added this to Unscheduled in EWG Prague Jan 22, 2020
@jfbastien jfbastien moved this from Unscheduled to Wednesday in EWG Prague Jan 23, 2020
@jfbastien

This comment has been minimized.

Copy link
Collaborator

@jfbastien jfbastien commented Feb 12, 2020

EWG Prague, Wednesday afternoon:

Needs to be updated to list the questions which the TS is going to answer.

  • We’d like a timeline of future work, to understand how this interacts with other language facilities, and what library facilities would be useful to add.
  • We want to understand how blocking primitives such as static initializers would need to change for fiber.
  • Does this require a language change that inhibit optimizations, e.g. around function calls or TLS.
  • Do we need some way to control how the stack is allocated?
  • The problem of cancellation.
  • Should fibers be allowed to resume on different a thread than the one it was suspended on?
  • Is this onerous for implementers to provide?
  • What are the different implementation choices on other operating systems / architectures, what tradeoffs are made?
  • Why do you need a separate API if you need a separate API?

Please gather whatever other questions need to be answered for a TS, both from Library and Language perspectives.

We’d like to see this again for consideration into a TS.

SF F N A SA
7 11 6 1 0
@jensmaurer jensmaurer removed this from the 2020-02 milestone Feb 18, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.