Giter VIP home page Giter VIP logo

Comments (3)

stewartmiles avatar stewartmiles commented on May 22, 2024

A good starting point for this would be to profile an application (e.g the
Testbed) to determine which areas are most expensive given a particular
simulation. This would enable you to determine where to focus optimization
efforts.

If you're running on Linux boxes consider using
https://perf.wiki.kernel.org/index.php/Main_Page
If you're using OS X you could profile using XCode Instruments
On Windows there is a huge selection VTune, AMD CodeX, Visual Studio
Profiling Tools etc.

Jason (see the git log) - after profiling - spent a lot of time rewriting
the particle simulation in ARM SIMD which yielded significant gains. An
x86_64 version using intrinsics may be reasonable and maintainable. You
could also try plumbing MathFu https://github.com/google/mathfu in to get
SIMD optimization across the library to see whether that yields a gain.

Cheers,
Stewart

On Tue, Oct 6, 2015 at 12:17 PM, Patrick Drumm [email protected]
wrote:

Hello all,

Similarly to Jim Hye (who posted an issue about a year and a half ago), my
team and I found LiquidFun very intriguing and have selected it as the
subject of our final project. Rather than parallelizing the code however,
we are looking for ways to make LiquidFun run faster or more efficiently
relating to data stuctures. Basically we are looking for anywhere in the
program that might slow up a little bit - where we might be able to
implement an alternative, more efficient sorting algorithm, searching
algorithm, or data structure to store things.

We would appreciate any advice as to where in the program these
optimizations might be most useful!

Thanks,
Patrick Drumm


Reply to this email directly or view it on GitHub
#57.

from liquidfun.

Razzlegames avatar Razzlegames commented on May 22, 2024

Valgrind is also a pretty good tool for this (Unix-ish systems):
http://c.learncodethehardway.org/book/ex41.html . Keep in mind though, the
base of Liquid fun is Box2D. So any performance tuning in the base code
could be contributed back to that project. Maybe you're just talking about
the "Liquid" features though.

On Tue, Oct 6, 2015 at 1:13 PM, Stewart Miles [email protected]
wrote:

A good starting point for this would be to profile an application (e.g the
Testbed) to determine which areas are most expensive given a particular
simulation. This would enable you to determine where to focus optimization
efforts.

If you're running on Linux boxes consider using
https://perf.wiki.kernel.org/index.php/Main_Page
If you're using OS X you could profile using XCode Instruments
On Windows there is a huge selection VTune, AMD CodeX, Visual Studio
Profiling Tools etc.

Jason (see the git log) - after profiling - spent a lot of time rewriting
the particle simulation in ARM SIMD which yielded significant gains. An
x86_64 version using intrinsics may be reasonable and maintainable. You
could also try plumbing MathFu https://github.com/google/mathfu in to get
SIMD optimization across the library to see whether that yields a gain.

Cheers,
Stewart

On Tue, Oct 6, 2015 at 12:17 PM, Patrick Drumm [email protected]
wrote:

Hello all,

Similarly to Jim Hye (who posted an issue about a year and a half ago),
my
team and I found LiquidFun very intriguing and have selected it as the
subject of our final project. Rather than parallelizing the code however,
we are looking for ways to make LiquidFun run faster or more efficiently
relating to data stuctures. Basically we are looking for anywhere in the
program that might slow up a little bit - where we might be able to
implement an alternative, more efficient sorting algorithm, searching
algorithm, or data structure to store things.

We would appreciate any advice as to where in the program these
optimizations might be most useful!

Thanks,
Patrick Drumm


Reply to this email directly or view it on GitHub
#57.


Reply to this email directly or view it on GitHub
#57 (comment).

from liquidfun.

migdalskiy avatar migdalskiy commented on May 22, 2024

Obviously, profile what you are about to optimize, but if you're after learning how to optimize, might I (not so) humbly suggest my GDC talk about optimization strategies?
https://www.youtube.com/watch?v=Nsf2_Au6KxU

from liquidfun.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.