Hi Jason,

I have seen patches being under review for a long time, and IMHO adding an 
extra 10-30 mins is not the real bottleneck.
I'd rather wait a little bit more but being sure I am not breaking anything...

about ruby protocols, let me say that we (in arm) are relatively happy with the 
current setup:

1) Quick regressions are run on a commit base (your presubmit.sh). This means 
it won't take a lot of time/computation
2) Long regressions (ruby protocols are tested here) are run every night on a 
batch of MERGED commits.
Which means at a certain point we just checkout origin/HEAD and we run long 
regressions.

This is the setup I would actually recommend: a sanity suite (quick) being run 
on a commit base, and more serious tests
(long) being run periodically. If you are scared about overloading the 
framework, you can always scale down our ambition
and run long regressions every two nights.
Running less frequently is better than not running at all 🙂

Please let me know what you think about this; other devs are welcome to comment 
as well,

Giacomo


________________________________
From: Jason Lowe-Power <ja...@lowepower.com>
Sent: 02 May 2019 22:59
To: Giacomo Travaglini; Rahul Thakur
Cc: gem5 Developer List
Subject: Re: [gem5-dev] Continuous integration is live!

Hi Giacomo,

In tests/main.py we call scons and use the current environment defaults to 
build gem5. I don't know if the kokoro infrastructure supports other compilers. 
This might be something that Rahul can address.

I'm also not sure if we can find a way to run more compilations in parallel on 
Kokoro. I'm happy to refactor the test scripts to do this. However, as it is, 
we are currently compiling at least 4 binaries mostly sequentially, which is 
making the testing take a significant amount of time. If we add more compilers 
(and more Ruby protocols), this is going to begin to get out of hand. It would 
also be good to compile .fast, .opt, and .debug, but I believe we're only 
compiling .opt right now.

Cheers,
Jason

On Thu, May 2, 2019 at 5:53 AM Giacomo Travaglini 
<giacomo.travagl...@arm.com<mailto:giacomo.travagl...@arm.com>> wrote:
Hi Jason,

I understand; Another thing I would like to ask:

Which script is building gem5 in jenkins? Ideally it would be nice to build 
with BOTH gcc and clang (so that we avoid
periodic "fix clang build" patches. I would also make the version 
configurable/visible from the script so that
we can track changes in compiler support and people can compare failures in 
case they managed to build
seamlessly on their local workspace

Giacomo
________________________________
From: Jason Lowe-Power <ja...@lowepower.com<mailto:ja...@lowepower.com>>
Sent: 26 April 2019 17:49
To: Giacomo Travaglini
Cc: gem5 Developer List
Subject: Re: [gem5-dev] Continuous integration is live!

Hi Giacomo,

You *do* have permission :). Anyone can modify tests/jenkins/presubmit.cfg and 
presubmit.sh. In fact, if you look at the history of the presubmit.sh, it *was* 
running the old tests. See 
https://gem5-review.googlesource.com/c/testing/jenkins-gem5-prod/+/18028, for 
instance.

The problem is that we can't distribute most of the binaries (e.g., SPEC 
binaries). We could probably upload them to a private location on the Google 
Cloud and have jenkins consume them that way, but I believe that will be more 
work than it's worth.

I personally believe that putting effort into porting tests is more worth 
everyone's time than trying to get the old tests to run, but that's just my 
opinion. I'm happy to merge changes to run the old tests. I personally believe 
we should only merge tests into the verification tester which everyone can run 
locally, but I'm open to proprietary tests, especially in the short term if we 
have a plan to make them not proprietary.

Cheers,
Jason

On Fri, Apr 26, 2019 at 9:36 AM Giacomo Travaglini 
<giacomo.travagl...@arm.com<mailto:giacomo.travagl...@arm.com>> wrote:
Hi Jason,

It's really amazing that we have a testing framework in place, thanks for your 
effort!
At the moment as far as I can tell we are only running tests registered within 
the new
testing library.

I was wondering if we could temporarily enable the system to run legacy quick 
regressions as well,
while waiting for porting those to the new library. I guess it is something 
that shouldn't require a lot of work

(just calling .util/regress I guess)

I am saying this since a patch recently merged broke some syscall emulation 
tests and I think it would
be beneficial for us to run the entire test suite straightaway while porting 
tests manually.
I could even handle it myself if I had permission to configure the system.

Let me know your thoughts,

Giacomo

________________________________
From: gem5-dev <gem5-dev-boun...@gem5.org<mailto:gem5-dev-boun...@gem5.org>> on 
behalf of Jason Lowe-Power <ja...@lowepower.com<mailto:ja...@lowepower.com>>
Sent: 16 April 2019 16:30
To: gem5 Developer List; Rahul Thakur
Subject: [gem5-dev] Continuous integration is live!

Hi all,

We now have initial support for continuous integration testing! We should
all thank Google for donating the CPU time and infrastructure to run these
tests. Specifically, Rahul Thakur has been incredibly helpful for the past
two years in getting this off the ground. Thanks, Rahul and the rest of the
team at Google who has been helping us set this up!

Now, if you submit a patch to gerrit and receive a maintainer +1, "kokoro"
will kick off a build / test of gem5. Once that is complete, you will
receive a verified +1. If it fails, you will receive a verified -1. The
logs can be viewed by anyone once the job is completed by following the
link posted by kokoro (the https://source.cloud.google.com, not the sponge
link). You can see an example on a patch I recently submitted here:
https://gem5-review.googlesource.com/c/public/gem5/+/18068. Note that the
tests take a couple of hours to run. However, I believe there is no limit
to the number of different changes that can be tested at the same time.

Soon, we are going to enable commit gating with the verified +1 tag. I.e.,
you will have to pass the continuous integration tests before you can
commit your code.

Note that this is using the "new" testing infrastructure. You can run this
locally by running "./main.py" in the tests directory. More information
about how to run tests and add tests can be found in the TESTING.md file.
If there are any questions/issues do not hesitate to contact me or the
list. The documentation for the new infrastructure can still be improved.
Right now, we're running about 30 tests. You can find the tests that we are
running in the tests/gem5 directory.

We are looking for volunteers to help us port more of the old tests to the
new infrastructure and to expand the coverage of our tests. I'm happy to
help anyone get started on this and point out which tests still need to be
migrated, where our biggest coverage holes are, etc.

Cheers,
Jason
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org<mailto: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.
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.
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

Reply via email to