long compile time question
Era Scarecrow
rtcvb32 at yahoo.com
Wed Oct 24 02:50:37 PDT 2012
On Wednesday, 24 October 2012 at 04:49:19 UTC, 1100110 wrote:
>> The following takes nearly three minutes to compile.
>> The culprit is the line bar ~= B();
>> What is wrong with this?
> I have the same issue on linux x64 2.060
>
> So appending to a dynamic array isn't really that efficient.
> But this goes WAY over that line. I'm timing your test now.
>
> It's still going...
It appears it's all happening during copying init, why I am not
sure.
[code]
struct B {
enum SIZE = 1024 * 64;
int[SIZE] x;
}
//same timing issue, no array involved
void test(B b) {}
void main() {
test(B());
}
[/code]
I've changed the *64 to various numbers and gotten curious
results. The mb is the noted (estimated) memory footprint it used
during compiling.
1: 0m0.725s mb:??
2: 0m1.414s mb:??
4: 0m2.620s mb:28
8: 0m8.937s mb:30
16: 0m35.869s mb:34
32: 2m36.922s mb:42
64: 9m27.353s mb:56
More information about the Digitalmars-d-learn
mailing list