[OpenJDK 2D-Dev] Various fixes to pisces stroke widening code

Denis Lila dlila at redhat.com
Mon Jul 12 15:05:00 UTC 2010


Is it ok if I do this? I already started working on it on Friday.
I think I should be done by tomorrow.

But yes, I agree that we should convert to floating point. As for
performance, there's also the fact that right now we're trading 
one double multiplication for 2 casts to long, 1 long multiplication,
1 bit shift of a long, and 1 cast back to an int. I don't know much
about how these are done in hardware, but it doesn't seem like they'd
be faster than the double multiplication.

As for large coordinates, there's a bug report about it (one not
reported by me :) ) here: https://bugzilla.redhat.com/show_bug.cgi?id=597227
I submitted a matching bug report on bugs.sun.com (ID 6967436), but I
can't find it when I search for it.


----- "Jim Graham" <james.graham at oracle.com> wrote:

> Sigh...
> Pisces could really stand to upgrade to floats/doubles everywhere, for
> several reasons:
> - FPU ops are likely as fast if not faster on modern hardware due to 
> parallel execution of FP instructions alongside regular instructions.
> - Don't have to worry about getting coordinates larger than 32K (I
> don't 
> think this is well tested, but I imagine that Pisces will not deal
> with 
> it very gracefully).
> - Lots of code is greatly simplified not having to deal with the 
> semantics of how to do fixed point multiplies, divides, and
> conversions.
> I meant to do this during the original integration, but I wanted to
> get 
> the task done as quickly as possible so that we could have an open 
> source alternative to the closed Ductus code so I left that task for a
> later update.  But, now that a lot of work is being done on the code
> to 
> fix it up, it might be better to do the float conversion now so that
> the 
> maintenance is easier and before we end up creating a lot of new fixed
> point code.
> My plate is full right now, but hopefully I can interest someone else
> in 
> doing a cleanup cycle?  (Donning my Tom Sawyer hat... ;-)
> 			...jim

More information about the 2d-dev mailing list