Thread overview | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
January 10, 2014 How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Dear D users, I think the GC is the one are that is holding D the most back, so I’d like to help it. But I have no idea how. No, I’m not talking about the technical stuff, rather about the organizational stuff and the contribution workflow. It seems like sociomantics wanted to port CDGC to D2 but I did not see any work following that, they also wanted to refactor the existing GC but I also don’t think much has been done there. Then there is also a precise GC. It exists, but is anything planned for this to be included? So, I’d really like to help with the GC but I have no idea how. - There is no overview of what people are doing on the GC or their GC forks - I have basically no idea what of the current work will be included into Phobos, so I don’t what to base my contribution on - I don’t know which ideas I could work on so that they eventually will be included - Finally, I don’t know what the core D team is already planning or what their vision is, what they’re planning themselves, what they want to see in D, what they will accept as contribution Maybe we need a project page or a group or something for the GC? Where we can collect all ideas, see who’s working on what, see what’s wanted and so on. rgds, Kira Backes |
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kira Backes | On 1/9/14 11:26 PM, Kira Backes wrote:
> Dear D users,
>
>
> I think the GC is the one are that is holding D the most back, so I’d
> like to help it. But I have no idea how. No, I’m not talking about the
> technical stuff, rather about the organizational stuff and the
> contribution workflow.
Well you've contributed the inspirational part, per my last post :o). In truth I'd be planning it for a while, but since you just wrote this was a good time.
Andrei
|
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | On Friday, 10 January 2014 at 08:04:49 UTC, Andrei Alexandrescu wrote:
> Well you've contributed the inspirational part, per my last post :o). In truth I'd be planning it for a while, but since you just wrote this was a good time.
>
> Andrei
Great news! Then please tell me as soon as I can help with *anything* (be it test-driving your implementation, documentation, writing unit tests, fixing bugs, writing articles and maybe even implementing a part of it, and so on)
I’ve done some testing with the current GC and the current stop-the-world latency is acceptable until about 50,000 objects, but I’ll probably need a lot more than that for the MMORPG server. Right now I’m using the GC for everything, which is the right approach I think to not do premature optimizations ;-) When the project is about to go live (scheduled end of 2014) I hope the GC is improved enough so it can just stay like it is (and I’d gladly publish benchmark numbers and write articles about the improvements). Only as a last resort would I move resources to manual memory management. So I really hope we can improve this until the end of 2014 and as I said I’ll help with anything I can.
rgds, Kira Backes
|
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kira Backes | On Friday, 10 January 2014 at 07:26:37 UTC, Kira Backes wrote:
> It seems like sociomantics wanted to port CDGC to D2 but I did not see any work following that, they also wanted to refactor the existing GC but I also don’t think much has been done there.
AFAIK it is on hold because porting demands more time Leandro can currently spend on it. Ask him for details.
|
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kira Backes | On 2014-01-10 08:26, Kira Backes wrote: > Dear D users, > > > I think the GC is the one are that is holding D the most back, so I’d > like to help it. But I have no idea how. No, I’m not talking about the > technical stuff, rather about the organizational stuff and the > contribution workflow. > > It seems like sociomantics wanted to port CDGC to D2 but I did not see > any work following that, they also wanted to refactor the existing GC > but I also don’t think much has been done there. Then there is also a > precise GC. It exists, but is anything planned for this to be included? > > So, I’d really like to help with the GC but I have no idea how. > - There is no overview of what people are doing on the GC or their GC forks As far as I know there are two efforts on improving the GC: * Leandro Lucarella (sociomantics as you mentioned above) - Working on a concurrent GC. http://dconf.org/2013/talks/lucarella.html * Rainer Schütze - Working on a concurrent GC. http://dconf.org/2013/talks/schuetze.html > - I have basically no idea what of the current work will be included > into Phobos, so I don’t what to base my contribution on > - I don’t know which ideas I could work on so that they eventually will > be included > - Finally, I don’t know what the core D team is already planning or what > their vision is, what they’re planning themselves, what they want to see > in D, what they will accept as contribution As far as I know nothing is decided. We all just know we want a better GC. I have not heard anything from the core D team. What's missing is someone to finish the work and create a pull request. > Maybe we need a project page or a group or something for the GC? Where > we can collect all ideas, see who’s working on what, see what’s wanted > and so on. That would probably be a good idea. Perhaps on the wiki http://wiki.dlang.org/ -- /Jacob Carlborg |
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kira Backes | On Friday, 10 January 2014 at 08:15:47 UTC, Kira Backes wrote:
>
> I’ve done some testing with the current GC and the current stop-the-world latency is acceptable until about 50,000 objects,
Could you post your benchmark code so I can see results on my systems (Win7 64 and OS X). What platform did you test?
|
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Szymon Gatner | On Friday, 10 January 2014 at 10:57:06 UTC, Szymon Gatner wrote:
> On Friday, 10 January 2014 at 08:15:47 UTC, Kira Backes wrote:
>
>> I’ve done some testing with the current GC and the current stop-the-world latency is acceptable until about 50,000 objects,
>
> Could you post your benchmark code so I can see results on my systems (Win7 64 and OS X). What platform did you test?
Yep. Depending on where the delays are, it might be possible to
tune things a bit until whatever new design is finished.
|
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kira Backes | On 10.01.2014 08:26, Kira Backes wrote: > Dear D users, > > > I think the GC is the one are that is holding D the most back, so I’d > like to help it. But I have no idea how. No, I’m not talking about the > technical stuff, rather about the organizational stuff and the > contribution workflow. > > It seems like sociomantics wanted to port CDGC to D2 but I did not see > any work following that, they also wanted to refactor the existing GC > but I also don’t think much has been done there. Then there is also a > precise GC. It exists, but is anything planned for this to be included? I have just rebased and recreated the precise GC fork of druntime the other day: https://github.com/rainers/druntime/commits/gcx_precise2 I hope this has commits that are better reviewable than the last version. I was planning to create a pull request just to make it more public and get the ball rolling. What's blocking the inclusion is that the compiler does not generate proper type information. This pull request is trying to fix it: https://github.com/D-Programming-Language/dmd/pull/2480 but it often breaks with other commits. Unfortunately it never received any feedback apart from some code-styling notes. |
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rainer Schuetze | On 1/10/14 12:06 PM, Rainer Schuetze wrote: > I have just rebased and recreated the precise GC fork of druntime the > other day: https://github.com/rainers/druntime/commits/gcx_precise2 > I hope this has commits that are better reviewable than the last > version. I was planning to create a pull request just to make it more > public and get the ball rolling. > > What's blocking the inclusion is that the compiler does not generate > proper type information. This pull request is trying to fix it: > https://github.com/D-Programming-Language/dmd/pull/2480 > but it often breaks with other commits. > > Unfortunately it never received any feedback apart from some > code-styling notes. Thanks! If there's anything major the community could help with right now, it would be reviewing https://github.com/D-Programming-Language/dmd/pull/2480 and then https://github.com/rainers/druntime/commits/gcx_precise2. Andrei |
January 10, 2014 Re: How to contribute to GC? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | On Friday, 10 January 2014 at 20:22:45 UTC, Andrei Alexandrescu wrote:
> On 1/10/14 12:06 PM, Rainer Schuetze wrote:
>> I have just rebased and recreated the precise GC fork of druntime the
>> other day: https://github.com/rainers/druntime/commits/gcx_precise2
>> I hope this has commits that are better reviewable than the last
>> version. I was planning to create a pull request just to make it more
>> public and get the ball rolling.
>>
>> What's blocking the inclusion is that the compiler does not generate
>> proper type information. This pull request is trying to fix it:
>> https://github.com/D-Programming-Language/dmd/pull/2480
>> but it often breaks with other commits.
>>
>> Unfortunately it never received any feedback apart from some
>> code-styling notes.
>
> Thanks! If there's anything major the community could help with right now, it would be reviewing https://github.com/D-Programming-Language/dmd/pull/2480 and then https://github.com/rainers/druntime/commits/gcx_precise2.
>
>
> Andrei
Is there perhaps the need for a curated* list of top priority pulls that need reviewing?
*by yourself and walter, with perhaps a few other contributors who pull some weight.
|
Copyright © 1999-2021 by the D Language Foundation