[OpenJDK Rasterizer] RFR: Marlin renderer #2

Jim Graham james.graham at oracle.com
Thu Jun 18 20:02:55 UTC 2015


Hi Laurent,

On 6/18/15 11:07 AM, Laurent Bourgès wrote:
> I will now try being more opened minded to your valuable comments to
> improve code maintainability without sacrifying too much the performance
> level.

It's a philosophy, not a hard requirement.  And it is more important in 
a large project, especially Open Source where you get new people working 
on things all the time.

In the short term, with just you working on the code, some concepts are 
much more manageable.  Since you seem to be the only one putting forth 
any effort right now I have to balance disrupting the practices and 
philosophies that you are more comfortable with since they would make 
you more productive and the future of what happens when you achieve your 
objectives and the code awaits a new champion.  Please don't ever let it 
progress to the point where you are too frustrated with some of the 
suggestions I am proposing that you want to walk away from the work, 
though.  In the long run, having the improvements you are making in the 
code will be considerably more important than the amount of up-take time 
for future efforts.  On the other hand, I do think that the best code 
bases I've seen in the past have been very concise to read and learn and 
understand and have had almost no quirky side effects outside of the 
advertised APIs.  It's more of a mindset to care about code simplicity 
as you care about efficiency so both get designed in as you go.

> If you are now OK, can I push the patch including the 2 syntax fixes ?
> So I need to create a new bug id (to be able to push the changeset)  ...

Definitely.

> Should I wait you merge gr repo with latest jdk changes ?

D'oh!  I'll take care of that right away.

> As you wonder  if initial arrays are still necessary, I will run tonight
> some benchmarks with initial arrays = [0].

"arrays = [0]" - is that arrays set to bucket 0 sizes?  That would be my 
guess as to how to proceed.

> I think the 30% overhead was a long time ago and should be less (dirty
> cache). However the cache code represents some overhead = get/grow/put +
> more resizing (copy) than initial arrays....

I would think that starting out with bucket 0 sizes would reduce the 
frequency of resizing, no?

			...jim


More information about the graphics-rasterizer-dev mailing list