Hello,

I have sent my proposal for Dacapo benchmark suite investigation, but haven't sent it to the list to discuss before. After discussion with potential mentor, I send it.

I think I'll be able to correct bugs and improve performances of some parts of the API. I'm not sure either to be able to significantly improve all the parts of the API tested by Dacapo. Dacapo have several tests. It will be useful to know on which test you think I should focus. I will test execution time of each test and compare them with RI, and identify which part of the API are used by each benchmark test, but if you want to take a look before, each test is very briefly described here : http://www.dacapobench.org/benchmarks.html

Here's my proposal. If you have any comment...

=====

Proposal Title: [Harmony][performance] Investigate dacapo benchmark suite

Student Name: Rudy Pons

Student E-mail: rudy.p...@etu.u-bordeaux1.fr

Student Major: Computer Science

Student Degree: Studying for Graduate of Science Degree, 2nd year


Organization/Project: Apache Software Fondation/Harmony Project

Assigned Mentor: Mark Hindess


Proposal Abstract:

The goal of the project is to fix bugs and improve Harmony API global performance by investigating results and performance of the Dacapo benchmark suite on Harmony.

Detailed Description:

Investigate the performance of the Dacapo benchmark suite (http://www.dacapobench.org/) on Harmony. Some of the benchmarks don't run and some are unstable, and some run slower than the RI.. This task would be to figure out why they don't run, what could be done to make them more stable and how to make them run faster.

First step will be to run Dacapo suite, find which test don't run or are unstable, read Dachapo source code to understand why they don't work fine. Exploring JIRA tickets related to modules used in these tests should be useful too. Then, I will be able to list all broken features involved in the Dacapo suite, begin to read appropriate Harmony code, produce patches to fix these problems, and add regression tests.

Second step will be to improve performance. For this, I will focus on tests where Harmony is slower than RI, try to write some new tests to understand what precise parts of Harmony are slower than RI for this test. I will sort all of these part to find the slowest, and become familiar with involved Harmony code, to find how many time should take each part to obtain significant performance improvement. Then I will focus on best parts to work on, looking possible performance improvement for code time ratio, and use of the API. Then I will try different modifications on Harmony, and compare the results between these modifications on Dacapo benchmark.

I?ve read part of the Dacapo source code, and begin to fix bugs on the H2 test.

Available Timeline:

I have exams to attend and will not be fully available for the Community Bonding Period before the end of these exams, May 11th.
I have no other unavailability during GSoC.

Draft Timeline:

Week 1: Run Dacapo benchmark suite, read source code, and identify bugs.

Week 2-5: Explore Harmony source code, write patch to fix identified bugs and add regression tests.

Week 6: Write shorter tests than Dacapo ones to identify precisely slowest part in Harmony.

Week 7-11: Write and compare several optimisations for different parts of the API.

(This timeline is only a draft, as I can't predict how many bugs will be discovered, and so how many time will be necessary to fix them)

Additional Information:

I?ve been using Java since 3 years, and have worked on several projects based on Java, including a file conversion utility, a tennis tournament draws manager, a cheap online game, and some AI for games.

I?m 19 years old, living in Bordeaux, France, and studying in Bordeaux 1 University.

=====

Thanks,

Rudy Pons

Reply via email to