Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-core-dev] RE: core.resources Performance Test question

Hi Frederic,

> BTW, I had a look on my tool and saw that it was not too 
> costly to finalize the implementation to display a new number

that is great! - But I don't think I'll need the pages for the
latest I-build since I'll want to compare an upcoming N-build
or I-build on the official performance machines against the
baseline anyways. So it'll be sufficient if that upcoming 
N-build or I-build has the new number (heapsize) displayed
for both the new build and the previous baseline.

> Would it be possible to open a bug for this against 
> Platform/Releng in order to track the work around this? 

You are welcome:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=292545

Cheers,
--
Martin Oberhuber, Senior Member of Technical Staff, Wind River
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm
 
 

> -----Original Message-----
> From: Frederic Fusier [mailto:frederic_fusier@xxxxxxxxxx] 
> Sent: Friday, October 16, 2009 5:18 PM
> To: Oberhuber, Martin
> Cc: Boris Bokowski; John Arthorne; Eclipse Platform Core 
> component developers list.; Szymon Brandys
> Subject: RE: core.resources Performance Test question
> 
> Martin,
> 
> What you did for the performance test let you know that your 
> change didn't
> introduce huge regression. That's a very good first point.
> Now, we'll see the test history to confirm or infirm the 
> assumption that it
> didn't either introduce any noticeable regression...
> 
> BTW, I had a look on my tool and saw that it was not too 
> costly to finalize
> the implementation to display a new number while generating 
> performance
> results HTML page. So, now, I have in hand the I20091013-1302 
> performance
> results pages with the Java Heap Size number results displayed in all
> scenario data pages. If you are interested in these pages for
> org.eclipse.core component, I can send them to you in a zip 
> file (which is
> around 8Mb)...
> 
> I agree that the generation could be smarter and filter the 
> outlier, but
> it's somehow difficult to clearly identify these kind of number
> statistically speaking. I'll have a think about it and see 
> what could be
> done for such scenario results... Would it be possible to 
> open a bug for
> this against Platform/Releng in order to track the work 
> around this? TIA
> 
> Cordialement/Regards,
> 
> Frédéric
> 
> 
> 
> 
> |------------>
> | From:      |
> |------------>
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
>   |"Oberhuber, Martin" <Martin.Oberhuber@xxxxxxxxxxxxx>       
>                                                               
>                          |
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
> |------------>
> | To:        |
> |------------>
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
>   |Frederic Fusier/France/IBM@IBMFR                           
>                                                               
>                          |
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
> |------------>
> | Cc:        |
> |------------>
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
>   |"Boris Bokowski" <Boris_Bokowski@xxxxxxxxxx>, "John 
> Arthorne" <John_Arthorne@xxxxxxxxxx>, "Eclipse Platform Core 
> component developers list."      |
>   |<platform-core-dev@xxxxxxxxxxx>, "Szymon Brandys" 
> <Szymon.Brandys@xxxxxxxxxx>                                   
>                                   |
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
> |------------>
> | Date:      |
> |------------>
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
>   |10/16/2009 02:06 PM                                        
>                                                               
>                          |
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
> |------------>
> | Subject:   |
> |------------>
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
>   |RE: core.resources Performance Test question               
>                                                               
>                          |
>   
> >-------------------------------------------------------------
> --------------------------------------------------------------
> -----------------------|
> 
> 
> 
> 
> 
> Hi Frederic,
> 
> many thanks for the detailed explanations!
> And, thanks for the good news especially :)
> 
> Unfortunately I really don't have time at the moment to do
> performance runs locally, and given what Boris said in the
> Arch call, the chances of getting accurate results on my
> Laptop are very small anyways.
> 
> So what I did, was run the performance test once -- this does
> repeat the same test 5 times already and does some computations
> of deviation etc. Doing this, I was not able to see any
> measurable difference in performance before my change versus
> after it -- which, I think, is news good enough to wait for
> final verification by the official performance test machines.
> 
> Regarding the heap size, I'm not yet sure whether that is a
> usable number. I've been running some local tests and the
> number is unexpectedly very unstable -- between unrelated
> test runs it varies up and then down again and I have no clue
> why that would be. I can only guess that the Hotspot VM might
> be to blame. So I guess that's another item to investigate
> separately, and I would think that investing into better
> infrastructure for displaying heapsize data is not much worth
> when the data itself is not yet well understood.
> 
> The one thing that I would really suggest for the generated
> HTML pages is that obvious outliers in the baseline should
> not be taken as baseline number. right now, it looks like
> the latest baseline is always taken and if that is an outlier,
> it's bad luck. It would be better to just not consider obvous
> outliers of baseline (and take a baseline that's 1,2,3...weeks
> old instead).
> 
> Thanks a lot for your time. For now, I am waiting for another
> N-build with performance results [like others as well, I guess].
> 
> Cheers,
> --
> Martin Oberhuber, Senior Member of Technical Staff, Wind River
> Target Management Project Lead, DSDP PMC Member
> http://www.eclipse.org/dsdp/tm
> 
> 
> 
> > -----Original Message-----
> > From: Frederic Fusier [mailto:frederic_fusier@xxxxxxxxxx]
> > Sent: Friday, October 16, 2009 12:12 PM
> > To: Oberhuber, Martin
> > Cc: Boris Bokowski; John Arthorne; Eclipse Platform Core
> > component developers list.; Szymon Brandys
> > Subject: Re: core.resources Performance Test question
> >
> > Hi Martin,
> >
> > Here are some clues on your questions:
> >       I agree that the results of the Elapsed Process Time for this
> >       scenario does not look really stable. It clearly
> > appears that from
> >       time to time (on each machine), there are some
> > outliers. IMO, if you
> >       need to have a good idea of what is the mean for this
> > test, then  you
> >       simply should remove this outliers and compute it... As
> > I said in the
> >       Arch' call, we already do that for the JDT/Core tests
> > when we run
> >       them locally. We perform 20 runs and to smooth the
> > results, hence
> >       remove the potential outliers), we remove the 5 worst
> > and the 5 best
> >       results. Doing this we get a 1% precision on all of 
> our tests...
> >       except for the compiler which precision felt to 4% 
> since it has
> >       become multi-threaded...
> >       As the machine may evolve over time (hardware, OS or core
> >       applications - e.g. OS update), a baseline is run each
> > week. This
> >       should prevent results to be polluted by other changes
> > than the ones
> >       done in the Eclipse code. One side effect of this is
> > that baseline
> >       results may vary on tests which have some stability issue...
> >       CPU Time was initially used as reference at the beginning of
> >       Performance results. They are often more stable than 
> the Elapsed
> >       Process Time, so logically seemed to be the candidate
> > to measure and
> >       compare performance results. The problem is that this
> > time does not
> >       match what the users see while using the IDE... So, as
> > we want to
> >       measure the performance from a user perspective to be
> > sure that the
> >       user cannot feel any regression (at least unexplained),
> > we finally
> >       decided to use the Elapsed Process Time as reference in
> > the Eclipse
> >       performance tests. We obviously lost precision in our
> > measurement but
> >       became closer to the user perception of the overall IDE
> > performance.
> >       Other numbers than the Elapsed Process and CPU times
> > are stored in
> >       the performance database while running the tests. The
> >       org.eclipse.test.performance.Dimension gives all
> > numbers currently
> >       stored for each tests. So, the good news is that the memory
> >       consumption, roughly given by the 'Java Heap Size'
> > number should give
> >       you some clues about the improvement of your change,
> > but the bad new
> >       is that this number is not currently displayed in the 
> HTML pages
> >       while generating the results. The other good news is
> > that I'm working
> >       on a performance results tool which should allow users
> > to generate
> >       their own results, typically adding any other stored
> > Dimension number
> >       to the generated HTML pages (see
> >       
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=288234)... but the
> >       other bad news is that this tool is not finalized yet
> > and I would
> >       need some time to implement this specific functionality...
> >
> > So, to summarize... in your case, to have a good idea of the
> > performance
> > impact of your change, I would advice you to perform several
> > runs of this
> > test (at least 10) on a local machine for
> >    the baseline
> >    the last released version
> >    the last released version + your patch
> >
> > Then for each group of tests (1, 2 & 3):
> >    remove either the obvious outliers or systematically the
> > two worst and
> >    best results
> >    compute the means with the remaining results
> >    compare deltas: (2 - 1) vs (3 vs 1) to know whether your
> > change has an
> >    impact or not on the performance results...
> >
> > HTH
> >
> > Cordialement/Regards,
> >
> > Frédéric
> >
> >
> >
> >
> > |------------>
> > | From:      |
> > |------------>
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> >   |"Oberhuber, Martin" <Martin.Oberhuber@xxxxxxxxxxxxx>
> >
> >                          |
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> > |------------>
> > | To:        |
> > |------------>
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> >   |"Szymon Brandys" <Szymon.Brandys@xxxxxxxxxx>, "John
> > Arthorne" <John_Arthorne@xxxxxxxxxx>, "Boris Bokowski"
> > <Boris_Bokowski@xxxxxxxxxx>, Frederic  |
> >   |Fusier/France/IBM@IBMFR, "Eclipse Platform Core component
> > developers list." <platform-core-dev@xxxxxxxxxxx>
> >                           |
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> > |------------>
> > | Date:      |
> > |------------>
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> >   |10/15/2009 08:39 PM
> >
> >                          |
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> > |------------>
> > | Subject:   |
> > |------------>
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> >   |core.resources Performance Test question
> >
> >                          |
> >
> > >-------------------------------------------------------------
> > --------------------------------------------------------------
> > -----------------------|
> >
> >
> >
> >
> >
> > Hi all,
> >
> > as I have mentioned in the Arch call yesterday, I have
> > implemented a change
> > to core.resources that should greatly reduce memory 
> consumption during
> > "Refresh Project", and now I'd like to verify that it doesn't
> > take longer
> > to run and in fact does reduce memory consumption.
> >
> > In anticipation of tonight's 3.6 run with performance tests,
> > I investigated
> > the previous performance run on I20091013-1302:
> > http://download.eclipse.org/eclipse/downloads/drops/I20091013-
> > 1302/performance/org.eclipse.core.php?fp_type=0
> >
> > My questions:
> >       For the "Refresh Project" scenario that I'm interested
> > in, the test
> >       shows 68% improvement (compared to 3.5) on SLED10, but 53%
> >       degradation on Windows (on no change at 2.3% on RHEL5).
> > These numbers
> >       do not seem reasonable at all. I'm assuming that this
> > is due to the
> >       outlier in elapsed process time (see below) -- right?
> > Or how else to
> >       interpret this?
> >       Digging deeper:
> >
> > http://download.eclipse.org/eclipse/downloads/drops/I20091013-
> > 1302/performance/eplnx1/Scenario166.html
> >        the baseline shows a complete outlier in terms of
> > elapsed process
> >       time. How to interpret that? Shouldn't the baseline
> > always remain the
> >       same? And all percentage comparison be against a mean value of
> >       baseline, rather than an outlier as done here?
> >       Why do the tests (when looking on the highest level)
> > look at Elapsed
> >       Process time rather than CPU time, which seems stable here?
> >       I'm interested in memory consumption, but the test data
> > does not even
> >       seem to record that... or where can I find it?
> > Thanks,
> > Martin,
> > --
> > Martin Oberhuber, Senior Member of Technical Staff, Wind River
> > Target Management Project Lead, DSDP PMC Member
> > http://www.eclipse.org/dsdp/tm
> >
> >
> >
> >
> >
> 
> 
> 
> 


Back to the top