Re: [gem5-dev] strange web of dependencies

2017-05-02 Thread Gabe Black
Ok, that's actually pretty helpful. I tried running util/regress with that
chunk of code removed (the one with the foreboding comment), and it
actually started tripping over itself, so that gives me something to work
with. Thanks!

Gabe

On Tue, May 2, 2017 at 6:20 AM, Curtis Dunham <curtis.dun...@arm.com> wrote:

> Hi Gabe,
>
> I am the author of this part of the build system.  SCons' support for
> dynamic generation of dependencies is really bad, so I had to build out the
> artificial targets to compensate.
>
>
> Unfortunately as this work was three years ago, I don't remember all the
> gory details of the problems faced without the extra serializing
> dependencies, other than it was quite obvious and you would notice the
> builds not working, especially in an invocation with lots of targets across
> architectures (say, as in a util/regress), when the different architectures
> are in different build phases.  If you haven't been able to reproduce it, I
> suspect it may no longer be an issue, as some flaws with that change
> specifically have been fixed (e.g. by b8c1e370f).   See also the commit
> description for fe27f937, but I suspect you've already read it.  Sorry I
> can't be much more helpful than that.
>
>
> Curtis
>
> 
> From: gem5-dev <gem5-dev-boun...@gem5.org> on behalf of Gabe Black <
> gabebl...@google.com>
> Sent: Tuesday, May 2, 2017 12:28:36 AM
> To: gem5 Developer List
> Subject: [gem5-dev] strange web of dependencies
>
> Hi folks. I was digging around in the scons stuff, and I notice a lot of
> artificial targets that have a complicated relationship of
> interdependencies and which seem to be there to serialize various steps of
> the build. There's a comment talking about how things are broken if a
> particular set of those dependencies are removed with -j settings above 1,
> but I wasn't able to reproduce any failure by removing them.
>
> I don't doubt there was some sort of dependency problem. I'd like to be
> able to reproduce it so I can remove the false dependencies, increase the
> parallelism of the build, and hopefully speed things up. Any hints as to
> how I can recreate whatever the problem was?
>
> Gabe
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy the
> information in any medium. Thank you.
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Re: [gem5-dev] strange web of dependencies

2017-05-02 Thread Curtis Dunham
Hi Gabe,

I am the author of this part of the build system.  SCons' support for dynamic 
generation of dependencies is really bad, so I had to build out the artificial 
targets to compensate.


Unfortunately as this work was three years ago, I don't remember all the gory 
details of the problems faced without the extra serializing dependencies, other 
than it was quite obvious and you would notice the builds not working, 
especially in an invocation with lots of targets across architectures (say, as 
in a util/regress), when the different architectures are in different build 
phases.  If you haven't been able to reproduce it, I suspect it may no longer 
be an issue, as some flaws with that change specifically have been fixed (e.g. 
by b8c1e370f).   See also the commit description for fe27f937, but I suspect 
you've already read it.  Sorry I can't be much more helpful than that.


Curtis


From: gem5-dev <gem5-dev-boun...@gem5.org> on behalf of Gabe Black 
<gabebl...@google.com>
Sent: Tuesday, May 2, 2017 12:28:36 AM
To: gem5 Developer List
Subject: [gem5-dev] strange web of dependencies

Hi folks. I was digging around in the scons stuff, and I notice a lot of
artificial targets that have a complicated relationship of
interdependencies and which seem to be there to serialize various steps of
the build. There's a comment talking about how things are broken if a
particular set of those dependencies are removed with -j settings above 1,
but I wasn't able to reproduce any failure by removing them.

I don't doubt there was some sort of dependency problem. I'd like to be
able to reproduce it so I can remove the false dependencies, increase the
parallelism of the build, and hopefully speed things up. Any hints as to
how I can recreate whatever the problem was?

Gabe
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev
IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] strange web of dependencies

2017-05-01 Thread Gabe Black
Hi folks. I was digging around in the scons stuff, and I notice a lot of
artificial targets that have a complicated relationship of
interdependencies and which seem to be there to serialize various steps of
the build. There's a comment talking about how things are broken if a
particular set of those dependencies are removed with -j settings above 1,
but I wasn't able to reproduce any failure by removing them.

I don't doubt there was some sort of dependency problem. I'd like to be
able to reproduce it so I can remove the false dependencies, increase the
parallelism of the build, and hopefully speed things up. Any hints as to
how I can recreate whatever the problem was?

Gabe
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev