[PATCH] D16726: [Profiling] Speed up unittests by ~5x
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 1 18:22:37 PST 2016
On 01/29/2016 10:01 AM, David Blaikie via llvm-commits wrote:
>
>
> On Fri, Jan 29, 2016 at 9:48 AM, Xinliang David Li <davidxl at google.com
> <mailto:davidxl at google.com>> wrote:
>
> We are talking about a very small cost here. Even before this change,
> the time of running this test is ~1s.
>
>
> Sure - but partly I'm arguing on principles here because the tests all
> add up over time. I'd like to make sure we're developing/sustaining
> good habits about what we add to the test/edit cycle of developers on
> the project.
+1.
>
>
> David
>
> On Fri, Jan 29, 2016 at 9:38 AM, David Blaikie <dblaikie at gmail.com
> <mailto:dblaikie at gmail.com>> wrote:
> >
> >
> > On Fri, Jan 29, 2016 at 9:29 AM, Xinliang David Li
> <davidxl at google.com <mailto:davidxl at google.com>>
> > wrote:
> >>
> >> It is the testing the related APIs for PGO profile reader.
> >
> >
> > Sure, but I'm asking why it's insufficient to test it just
> once/with a
> > smaller input - what value is added by testing it with such a
> large input
> > (why not 512? and if that, why not 1 or some otherwise trivially
> small
> > input?) or with 10 different levels of padding?
> >
> > Unit tests in particular, and our regression suite in general,
> are generally
> > designed to be specifically targeted/purposeful tests. Broader
> input testing
> > would be left to the test-suite and/or fuzzing tests (especially
> coverage
> > based fuzzing which seems likely to provide better value per CPU
> cycle than
> > a more manual/repeated approach like this)
> >
> >>
> >>
> >> David
> >>
> >>
> >>
> >> On Fri, Jan 29, 2016 at 9:24 AM, David Blaikie
> <dblaikie at gmail.com <mailto:dblaikie at gmail.com>> wrote:
> >> >
> >> >
> >> > On Fri, Jan 29, 2016 at 9:15 AM, Xinliang David Li
> <davidxl at google.com <mailto:davidxl at google.com>>
> >> > wrote:
> >> >>
> >> >> The iteration is also encoded in the name.
> >> >
> >> >
> >> > That it tests compression? If we're using a standard compression
> >> > algorithm,
> >> > I would expect we would just test the compression algorithm
> directly. I
> >> > don't think there's any need to test that the compression
> algorithm
> >> > works in
> >> > any particular use case (test that the contents is compressed).
> >> >
> >> > The input seems pretty arbitrarily chosen - it's not clear
> why that
> >> > provides
> >> > the right tradeoff between time and coverage, it looks a bit
> scattershot
> >> > ("if we put enough stuff through this, perhaps it'll give
> confidence
> >> > that it
> >> > works") - maybe something better suited to ASan Fuzzing
> rather than a
> >> > unit
> >> > test.
> >> >
> >> > Blanket testing with broad inputs probably isn't suitable for
> a unit
> >> > test.
> >> >
> >> > A single test that demonstrates that the contents is smaller
> compressed
> >> > (if
> >> > there's a non-compressed option) might be worthwhile. Though
> it looks
> >> > like
> >> > this test doesn't even test that - I assume I could remove the
> >> > compression
> >> > support from this library & still pass the test...
> >> >
> >> >>
> >> >>
> >> >> David
> >> >>
> >> >> On Fri, Jan 29, 2016 at 9:03 AM, David Blaikie
> <dblaikie at gmail.com <mailto:dblaikie at gmail.com>>
> >> >> wrote:
> >> >> > If we're asking the question - why does this need to be
> 1024? What's
> >> >> > the
> >> >> > specific purpose of the iteration? (why would 1 be too few
> >> >> > iterations,
> >> >> > for
> >> >> > example?)
> >> >> >
> >> >> > On Fri, Jan 29, 2016 at 9:01 AM, David Li via llvm-commits
> >> >> > <llvm-commits at lists.llvm.org
> <mailto:llvm-commits at lists.llvm.org>> wrote:
> >> >> >>
> >> >> >> davidxl accepted this revision.
> >> >> >> davidxl added a comment.
> >> >> >> This revision is now accepted and ready to land.
> >> >> >>
> >> >> >> lgtm
> >> >> >>
> >> >> >>
> >> >> >> http://reviews.llvm.org/D16726
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> _______________________________________________
> >> >> >> llvm-commits mailing list
> >> >> >> llvm-commits at lists.llvm.org
> <mailto:llvm-commits at lists.llvm.org>
> >> >> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> >> >> >
> >> >> >
> >> >
> >> >
> >
> >
>
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160201/c4624f89/attachment.html>
More information about the llvm-commits
mailing list