XLcloud Use Case - MFIC: Interactive computation fluid dynamics for the cloud

Use Case Overview

In the context of virtual reality, CEA LIST explores interactive numerical simulation of different physical phenomena. At the core of these phenomena is the movement of rigid bodies used in virtual prototyping (see MVIC use case). When adressing the area of training or security, simulation of other physical phenomena may be required in order to simulate the virtual environnement involved by the training scenari, such as propagation of smoke, liquids, or even simulation of radiologic sources. All these simulation are to be performed with a user interacting with the virual environment, thus applying modifications to the ongoing simulation. As an example, the use may move a rigid body that will constraint the spreading of a liquid, or according to the actions of a trainee, if he fails at some steps, smoke may be released from an industrial installation.

Platform Short Description

All interactive simulations developped by the CEA-LIST rely on a middleware layer based on the Orocos  environment. This platform allows the definitions of components, called "agents". Each agent will manage either a computation loop (physical simulation), an interaction peripheral such has haptic interface, space mouse, tracking device..., or the rendering of the simulation. The rendering agent  is based on Ogre3D, with enhancements for stereo display. In order to setup a simulation, agents are set-up and connected together before entering the simulation loop. One important service provided by the Orocos layer is the ability to deploy the agents (hence the simulation) over a network using CORBA (ACE-TAO implementation is included in our executable). Also agents can be connected or disconnected during the simulation. More information on this in the component builder manual of Orocos.

Beyond this first level of distribution provided by corba, a second level of parallelism can be found within the computation agents themselves, currently using multi-core architecture and shared memory.    

So a typical simulation will be the result of agregation of (one or more) visualisation agent, peripherial handling agents, and simulation agents, distributed over a network of workstation or computation cluster. The virtual environment of the simulation will also require the upload of big CAD data (eg collada files) representing the objects handled by the simulation. One important point is that all these simulations are supposed to run on commodity hardware or network, so here we will see the virtual cluster as a network of powerfull workstations on which we will distribute simulation nodes.

Figure 1: XDE Framework Architecture Diagram


Figure 2: How the DIO framework interfaces the XDE with the different interaction peripherals.


Use Case Description

The goal of the MFIC Use Case is to evaluate the possibility of interactive simulations of fluids or smokes, and the real-time rendering of the simulation, using the cloud. CEA develops numerical methods in order to simulate liquids or smokes, interacting with 3D complex geometries, in the context of industrial risk prevention, or training. Both simulation and visual rendering need significant processing power. We support parallelism in SMP mode and start to move to distributed memory, and the level of parallelization will evolve during the project, in particular in order to better leverage the processing power and flexibility provided by the cloud. We will also study the balancing between the computing part and the rendering part of the simulation. We plan to study the best deployment strategies and resources allocations, in particular the load balancing and data transfert between the fluid simulation stage and the rendering stage.

To be more specific, the considered use case will be the simulation of an accidental scene, with smoke propagation. The variable smoke opacity can disturb firefighters trying to access the scene.

State of the art

CEA-List was already a partner in several projects including industrial partners in the domain of security (ANR V3S, SAGECE, FUI DESCARTES, …). The focus was always interactive physical interaction, where the end user interact with the simulation being performed (this makes the difference with HPC simulation). As a responses to these needs, CEA-List developped a interactive simulation code for smoke and fluids, and a first generation of rendering engine.

Locks / innovation

As of today, 3 locks are identified :


  •  achieve interactivity for fluid simulation on the cloud with interaction with the user.
  •  optimization of the rendering part according to the needs of the application
  •  increased physical realism, for both simulation and rendering, thanks to cpu power resources provided by the cloud.

Figure 3: Instability simulation from Von Karman with Lattice-Botlzmann method.

Figure 4: Interactive simulation of a smoke disturbed by a mobile object.

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 5.4.6 - Documentation - Legal Notice

Site maintained by