CUDAFLOW plug-in

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

CUDAFLOW plug-in

Post by kaistudio » Mon Apr 04, 2011 4:30 pm

I've test my ParticleSolverPlgSdk type plug-in named 'cudaflow' ver0.1 with a typical scene setting.
In the scene, I got 3.6x speed-up than CPU based solver. :)

Specification:
# of particles: 505832
# of Thread : 16 (2 Xeon CPUs: 2.27, 2.39 )
RAM: 8GB
# of GPU : 1 (GTX 580 with 1.5GB memory)

Here are some playback avi files.
http://taekwon.kaist.ac.kr/realflow/compare-cpuonly.avi
http://taekwon.kaist.ac.kr/realflow/com ... elease.avi
You do not have the required permissions to view the files attached to this post.
Last edited by kaistudio on Tue Apr 05, 2011 9:06 am, edited 2 times in total.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: cudaflow plug-in ver0.1

Post by kaistudio » Mon Apr 04, 2011 4:45 pm

FYI, there was no significant difference in speed btw debug, release version.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: cudaflow plug-in ver0.2

Post by kaistudio » Tue Apr 05, 2011 9:03 am

Now, the interaction with existing daemons is enabled!
It's now version 0.2 :)

Movie (79MB)
http://taekwon.kaist.ac.kr/realflow/cudaflow-daemon.avi
You do not have the required permissions to view the files attached to this post.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Sat Apr 09, 2011 5:06 pm

Now, the CUDA based collision (fully compatible with realflow geometries ) enabled!
It's now version 0.3 ;)
You do not have the required permissions to view the files attached to this post.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Sun Apr 10, 2011 4:33 pm

Now, UI (properties) for simulations and collisions are enabled!
It's now version 0.4 :)
You do not have the required permissions to view the files attached to this post.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Fri Apr 15, 2011 4:55 am

Now, surface tracking (finding water surface particles) feature is added!
It's now version 0.5 8-)

IoSim
Posts: 5
Joined: Thu Jun 10, 2010 8:23 am
Location: Denmark
Contact:

Re: CUDAFLOW plug-in

Post by IoSim » Fri Apr 15, 2011 9:22 am

Very interesting project :)
It sounds like you're making good progress.

-Cheers Ole
Ole Lemming
www.iosim.dk

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Fri Apr 22, 2011 1:21 pm

Thanks for the comment!
Now, I've added
+ sub-step according to collision particle size and velocity -> ver0.6 :)
+ PCISPH solver -> ver0.7 :)

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Fri Jun 17, 2011 6:59 am

2011 Apr 04 ~ 2011 May 17

ver0.1 Basic CUDA based ParticleSolverPlgSdk type plug-in
ver0.2 Interaction with deamon
ver0.3 Object collision handling
ver0.4 UI update
ver0.5 Surface tracking
ver0.6 Sub-step for accurate collision
ver0.7 PCISPH solver
ver0.8 File exporter (data: particle normal, magnitude of gradient of color field) for secondary particle generation
ver0.9 Sub-particles generation
ver1.0 Scalable gaussian kernel with negative radius

1) Rendered using Maxwell.
2) Visualization using a custom bitmap emitter.
You do not have the required permissions to view the files attached to this post.

kaistudio
Posts: 16
Joined: Mon Dec 06, 2010 1:31 pm

Re: CUDAFLOW plug-in

Post by kaistudio » Fri Jun 17, 2011 7:43 am

Screenshot:
ui.jpg
A sceenshot of a test scene.
The bunny is an imported obj and have 9 bitmap emitters for generating sub-particles.
The 9 Bitmap emitters are exploited to use my custom emitter(type is 'debug' in my case).
The customization is simple; my 'debug' emitter is a kind of ParticleSolverPlgSdk which does nothing during integrate, computeInternalForces callback.

How to use:
1) User can apply CUDAFLOW plug-in by selecting the fluid type to 'CUDAFLOW' to an emitter.
(I have a plan to extend to support multiple emitters in short time ;) )
In the test scene, I've used Circle emitter.

2) Before the simulation, user should set up simulation options>Integration
as in attached file (Fixed with substep:1).
fxtime.jpg
This process is required that CUDAFLOW has its own sub-step procedure.

3) Run by clicking 'Simulate' button

Preparation:
User has to install CUDA toolkit
I recommand to download CUDA toolkit 3.2 for 'window xp/vista/7 with 64 bit binaries'
(http://developer.nvidia.com/cuda-toolkit-32-downloads)

Schedule:
I'll write a help document for parameters in CUDAFLOW.
After that, the dll files for CUDAFLOW, debug type will be uploaded with the tutorial.

Resource:
Source code and test dll(before release) are available upon a request
Send an email to: taekwon@kaist.ac.kr (http://taekwon.kaist.ac.kr)
You do not have the required permissions to view the files attached to this post.

Post Reply