Thread overview | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
May 03, 2015 dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Just merged in is a new compiler switch that instruments generated code to collect statistics on memory allocation usage and generates a report upon program termination. (Much like how -profile works.) This was based on a prototype Andrei had written earlier. Andrei and I suspect it can be of great use in figuring out why a program may be excessively slow or consume excessive memory. I encourage giving it a try on some non-trivial project, and see if it gives useful information. |
May 04, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Sunday, 3 May 2015 at 21:11:58 UTC, Walter Bright wrote:
> Just merged in is a new compiler switch that instruments generated code to collect statistics on memory allocation usage and generates a report upon program termination. (Much like how -profile works.)
>
> This was based on a prototype Andrei had written earlier.
>
> Andrei and I suspect it can be of great use in figuring out why a program may be excessively slow or consume excessive memory.
>
> I encourage giving it a try on some non-trivial project, and see if it gives useful information.
Nice! I bet this can be used to improve Phobos in tandem with @nogc.
|
May 04, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Can be -profile and -profile=gc mixed together?
On Sunday, 3 May 2015 at 21:11:58 UTC, Walter Bright wrote:
> Just merged in is a new compiler switch that instruments generated code to collect statistics on memory allocation usage and generates a report upon program termination. (Much like how -profile works.)
>
> This was based on a prototype Andrei had written earlier.
>
> Andrei and I suspect it can be of great use in figuring out why a program may be excessively slow or consume excessive memory.
>
> I encourage giving it a try on some non-trivial project, and see if it gives useful information.
|
May 04, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrea Fontana | On 5/4/2015 6:06 AM, Andrea Fontana wrote:
> Can be -profile and -profile=gc mixed together?
Yes, and you'll get two reports.
|
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Monday, 4 May 2015 at 19:24:57 UTC, Walter Bright wrote:
> On 5/4/2015 6:06 AM, Andrea Fontana wrote:
>> Can be -profile and -profile=gc mixed together?
>
> Yes, and you'll get two reports.
Does it work with a multithreaded application (in contrast to -profile) ?
|
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Monday, 4 May 2015 at 19:24:57 UTC, Walter Bright wrote:
> On 5/4/2015 6:06 AM, Andrea Fontana wrote:
>> Can be -profile and -profile=gc mixed together?
>
> Yes, and you'll get two reports.
So I think they should be called -profile and -profile-gc.
Or at least -profile=code -profile=gc (but i guess there's a problem with retro-compatibility)
Andrea
|
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to extrawurst | On 5/4/2015 10:53 PM, extrawurst wrote:
> Does it work with a multithreaded application (in contrast to -profile) ?
Yes, and -profile was also fixed a week ago to handle multiple threads.
|
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | I have a problem with regexes inside my project. 5376580784 [] std.regex.internal.kickstart.Kickstart!char.ShiftOr.this dmd\windows\bin\..\..\src\phobos\std\regex\internal\kickstart.d:284 Calling of regex's crot with any argument causes that. Problem only exists if my project is compiled without -debug flag. If i try dustmite it then problem dissapears. I don't know how i can help to developers but maybe one could investigate. As a workaround i'm using ctRegex. |
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Temtaime | *ctor *and then appication terminates with OOM exeption |
May 05, 2015 Re: dmd -profile=gc | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Tuesday, 5 May 2015 at 09:30:55 UTC, Walter Bright wrote:
> On 5/4/2015 10:53 PM, extrawurst wrote:
>> Does it work with a multithreaded application (in contrast to -profile) ?
>
> Yes, and -profile was also fixed a week ago to handle multiple threads.
Awesome! Looking forward for the next release!!
|
Copyright © 1999-2021 by the D Language Foundation