[parsec-users] performance improvement for fluidanimate

Fedorova, Julia Julia.Fedorova at intel.com
Mon Jun 28 01:14:55 EDT 2010

Hi Chris, all

I have some performance improvement for fluidanimante application.

They are some small code changes in ComputeForces (in case of serial version) and in
ComputeForcesMT & ComputeDensitiesMT functions (in pthreads version)
that lead to ~ 18% speed up as measured for serial and pthreads, native input with 500 frames on Xeon Core i7 single socket platform.

Gcc-serial (indeed 1 thread):
Initial - 358.6 sec
Optimized - 293.4 sec

gcc-pthreads, 4 threads:
Initial - 109.7 sec
Optimized - 89 sec

It is related to excessive branch misprediction cost in the code and putting additional "if" upper by the code flow gives visible performance boost.

Although above numbers are for the intel platform - I believe the changes will bring benefit for other platforms/CPU also - as they minimize wasted work that created by branch misprediction.

Is there interest to such changes?
I will send the patches then.


Regards, Julia Fedorova

Closed Joint Stock Company Intel A/O
Registered legal address: Krylatsky Hills Business Park, 
17 Krylatskaya Str., Bldg 4, Moscow 121614, 
Russian Federation

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/parsec-users/attachments/20100628/93bbfe72/attachment.htm>

More information about the parsec-users mailing list