GPUs Will Process Physics, ATI Says

Discussion in 'GPGPU Technology & Programming' started by Arty, Oct 6, 2005.

  1. ERK

    ERK
    Regular

    Joined:
    Mar 31, 2004
    Messages:
    287
    Likes Received:
    10
    Location:
    SoCal
    But of course you can't do this with multiple bodies in the system, e.g. asteroid field. (or if you do, it doesn't save you anything, since then you have to do the axes transformations.)
     
  2. KimB

    Legend

    Joined:
    May 28, 2002
    Messages:
    12,928
    Likes Received:
    230
    Location:
    Seattle, WA
    The effect of gravity would be so minimal in the local area of an asteroid field that it can easily be ignored when performing a simulation of flying through one.
     
  3. KimB

    Legend

    Joined:
    May 28, 2002
    Messages:
    12,928
    Likes Received:
    230
    Location:
    Seattle, WA
    Yeah, that's true. Easier, I guess, just to go with the full description.
     
  4. neliz

    neliz GIGABYTE Man
    Veteran

    Joined:
    Mar 30, 2005
    Messages:
    4,904
    Likes Received:
    23
    Location:
    In the know
    The problem is, I haven't seen "breaking" in a physics demo yet :)

    So far, everyone involved in physics seems to restrain itself to objectX with Y velocity and Z mass colliding with object A with B rigidity.
     
  5. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    7,610
    Likes Received:
    825
    For a demo you might be able to get away a fixed space subdivision by wasting a lot of memory, if you use a grid with a grid distance the same as the particle diameter you might even be able to use rasterization to update the structure (map each particle to the closest grid point, you can't ever get more than one particle per grid point without intersections). Not very practical outside a demo though.
     
  6. Dio

    Dio
    Veteran

    Joined:
    Jul 1, 2002
    Messages:
    1,758
    Likes Received:
    8
    Location:
    UK
    I know, I don't post enough nowadays... I just don't have much left to say anymore. I haven't worked out if it's because you guys worked it all out and don't need me <sniff> or if I am just more circumspect :).

    I did consider just replying "Both." :D
     
  7. KimB

    Legend

    Joined:
    May 28, 2002
    Messages:
    12,928
    Likes Received:
    230
    Location:
    Seattle, WA
    Well, right, because it's a hard problem to solve. You've got two solutions, basically:
    1. Have each rigid body actually be a collection of bodies. Every time a force acts on the object, calculate the stress/strain at every connection, and break if it's too great. This solution has the problem that it makes forces acting on the object take much more processing power than the simple rigid body dynamics case.
    2. Have a set of algorithms that automatically generate new bodies from old ones in the event of violent collisions. This algorithm has the drawback that performance becomes potentially unbounded if there are many collisions.
     
  8. neliz

    neliz GIGABYTE Man
    Veteran

    Joined:
    Mar 30, 2005
    Messages:
    4,904
    Likes Received:
    23
    Location:
    In the know
    I wouldn't consider the first option (considering something like Red Faction.)

    Number two seems much more plausible.
    Sure, it causes an "easy" object with say, 500 poly's to generate a lot of smaller objects causing the amount of objects and amount of polygons in one scene to increase by an insane magnitude.. but the calculations are simple.
    Force Vectors; surely, calculating a few vectors upon impact: one main vector for conveying the energy of impact and a limited amount of reflecting vectors deciding the amount of "debris" caused by such an impact.
     
  9. ERK

    ERK
    Regular

    Joined:
    Mar 31, 2004
    Messages:
    287
    Likes Received:
    10
    Location:
    SoCal
    Or even just Atari 'Asteroids'... now in 3D!
    Humus, how about a demo? :)
     
  10. IgnorancePersonified

    Regular

    Joined:
    Apr 12, 2004
    Messages:
    778
    Likes Received:
    18
    Location:
    Sunny Canberra
    Yeh didn't think vectored thrust was hard, just indicating that the empire strikes back scenario doesn't use real physics for all objects and any demo wouldn't need to. Exploding asteroids and tie fighters leaving no debris, "flying' through space, walking on the "floor" of the slug lair etc. However the Asteroids themselves provides a good case to demonstrate the difference between the 2 solutions with a toggle switch.

    I didn't think the Ati demo was really that compelling. A vortex of wierd shapes spinning at high speed?? I slowed the vid that was provided down and it still still didn't realy blow me away. I know it's a lot of hard work but I found some of the agiea demo's a lot more interesting (Hanger ones) since they could be tansportable into a game scenario. In fact I think they were using Unreal 3 engine.

    I'm talking about recreating the movie action scene - not simualting a "real" asteroid field since the movie was far from real and gives a lot of lattitude to show effects without being nailed to the realism cross.
     
  11. Acert93

    Acert93 Artist formerly known as Acert93
    Legend

    Joined:
    Dec 9, 2004
    Messages:
    7,782
    Likes Received:
    162
    Location:
    Seattle
    Not to change directions too much...

    But will the changes in the D3D10 pipeline be helpful in running physics on a GPU? If so, what changes will be beneficial and in what ways?

    I ask because one of the 2 primary goals setup at the onset of D3D10 development was to continue moving the API and GPUs toward architectures that were general purpose friendly(-er).
     
  12. Mintmaster

    Veteran

    Joined:
    Mar 31, 2002
    Messages:
    3,897
    Likes Received:
    87
    Yeah, this is why I'm skeptical about how good GPUs will be at physics. All the tricks to reduce pair-wise interactions would be really tough to implement in a massively parallel algorithm. I could see Cell and Xenon doing fine because they don't need to decouple calculations as much to run well, but it looks tough for GPUs to do general physics.

    When NVidia and AGEIA talked about 10,000 objects/boulders/particles, I was thinking oh crap, is this just n^2 brute force? I'd be surprised if a more intelligent CPU method didn't perform faster.

    It would make more sense to me if GPUs only checked for collisions with a few objects external to the system, or if the CPU narrowed down the search somehow (which would require the GPU to send info back to the CPU).
     
  13. g__day

    Regular

    Joined:
    Jun 22, 2002
    Messages:
    580
    Likes Received:
    2
    Location:
    Sydney Australia
    I wonder if all the N-body particle interaction algorithms used for astronomy (galaxies simulations) are going to be dusted off to see if there are techniques for reducing complexity.

    Think through worse case complexity; I guess you start with collision detection and on collison then you not only have to conserve momentum and kinetic energy, you have the added complexity of checking each body for elastic vs plastic vs destructive deformations during interactions and checking for further collateral releases of potential energy.

    A simple example of this would be say a molotov cocktail (glass petrol bomb) hitting a pane of glass. The bomb could bounce of unhurt (at low velocity), but if this happenned and the bomb shattered on the ground it might explode and break the glass (or not), and / or the heat of its fire might melt or shatter the window pane (or not). Alternatively the bottle might pass through the pane of glass (shattering the bottle or not), or both might shatter becoming travelling shrapnel. Finally you must also check for the release (and timing) of stored potential energy (e.g. when the petrol bomb ruptures you'd have flying glass and a spray of igniting petrol rapidly vaporising, possibly starting a fuel air explosion) all of which gives you new objects and imparts new kinetic energy and momentum vectors to everything in the blast radius which could trigger further latent potential energy releases from other affected bodies.

    That's the penultimate modelling I guess.

    Tricky do do for many bodies in real time, possibly N-Bodies interaction simplification techniques could help...
     
    #193 g__day, Jun 10, 2006
    Last edited by a moderator: Jun 10, 2006
  14. lopri

    Regular

    Joined:
    Aug 4, 2004
    Messages:
    259
    Likes Received:
    1
    [​IMG]

    ....

    I really like the concept, though.. I have 2 spare cards right now and they're just sitting pretty.
     
  15. lopri

    Regular

    Joined:
    Aug 4, 2004
    Messages:
    259
    Likes Received:
    1
    Then again, this might as well be our future..

    [​IMG]

    :roll:
     
  16. nutball

    Veteran Subscriber

    Joined:
    Jan 10, 2003
    Messages:
    2,492
    Likes Received:
    979
    Location:
    en.gb.uk
    Those algorithms rely heavily on the sorts of data-structures which are quite hard to build on GPUs in their current form (trees, linked-lists, etc.).
     
  17. zed

    zed
    Legend

    Joined:
    Dec 16, 2005
    Messages:
    6,415
    Likes Received:
    2,139
    5 million???
    just quickly (half drunk) done a benchmark on my athlon2.0 ghz, + i get over 40million/sec + even ~30million with high collision rates, thus either
    A/ they suck (so why the noise) so that cant be right
    B/ theyre doing a lot more than sphere-to-sphere collisions

    + WRT flying through asteroid belt see one of these (sorry i should of labled them better + excuse the singing as well)
    http://rapidshare.de/files/7375543/testF.avi.html
    http://rapidshare.de/files/7281010/testE.avi.html
    http://rapidshare.de/files/7236368/testB.avi.html
     
  18. Mate Kovacs

    Newcomer

    Joined:
    Dec 12, 2004
    Messages:
    163
    Likes Received:
    3
    Location:
    Mountain View, CA
    Yeah, anything that needs random access would suffer from the stream model. Even an AABB sweep (that only needs arrays, so nothing fancy) would suck.
     
  19. IgnorancePersonified

    Regular

    Joined:
    Apr 12, 2004
    Messages:
    778
    Likes Received:
    18
    Location:
    Sunny Canberra
    zed:
    Says the files have been deleted excepting the middle one.
     
  20. zed

    zed
    Legend

    Joined:
    Dec 16, 2005
    Messages:
    6,415
    Likes Received:
    2,139
    thats the one flying over an island i take it?
    another was in a desert + another was flying through an asteroid belt.
    i can upload those if ppl wish
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...