Author Mihai Gherge MSc.
RheoCube is an all-in-one cloud-based tool for preparing, running, and analyzing complex fluid simulations. Some aspects of this process are quite computationally demanding and, as one can therefore expect, have associated costs. In this post we outline all aspects affecting the costs related with the use of RheoCube.
Simulations can be generally described as a set of rules that predict how an object should behave. These instructions are expressed in numerical terms, so that a computer can calculate the results and offer an answer. By choosing the conditions in which the simulation will run, the user will solicit an amount of calculations from the computer. These conditions describe the properties of the simulated objects and the external parameters that influence them.
Depending on the level of detail used to describe a system, the amount of calculations solicited from the computer changes. In RheoCube, the complexity of a system can change depending on, for example, the simulation size, the number of components, or the presence of salt. Higher complexity means the computer will need more time to resolve the task. A well designed model will find a balance between how detailed the system will be described and how computationally demanding the instructions will be for the computer.
The computer will perform these calculations at a specific speed, depending on the performance of the processing unit. A faster processor will be able to resolve a set of instructions in less time. Most of the common technological devices such as PCs, laptops and phones have processing units that can be used to calculate a set of instructions. However, complex physico-chemical models such as the ones used in RheoCube will be too demanding for every-day devices. As a consequence, we work with external providers that can supply the adequate computational and storage resources for a reasonable cost. In this way, RheoCube becomes a completely browser-based tool that can be easily accessed from any device with access to the internet. Currently, our main provider is Amazon Web Services (AWS).
The whole of the costs associated with the use of RheoCube, can be divided into three main contributions. These consist of the computational resources needed to run a simulation, the resources needed to perform data analysis and create visualizations, and data storage space where the simulation results are saved.
1. The simulation of a complex fluid system
This is the step that generates the most costs. Meso-scale and molecular-scale simulations are built on different architectures. Meaning that, depending on what type of simulation is being run, different processing units will be assigned from AWS. Meso-scale simulations generally require more computational resources to finish. On average, a simulation of a simple system of 5 fluids can last between 2 to 3 hours to finish. A more complex system with surfactants and particles can take 1 to 2 days of simulation time, or even more. The latest feature in RheoCube, however, will allow for the use of High Performance Computing (HPC) resources. With the use of HPC, RheoCube will be able to handle larger systems that would have previously taken too much time to compute. This is done by splitting the simulation box and assigning multiple compute resources to solve each part of the box in parallel. The costs per compute time increase but the total computational duration is reduced.
Molecular-scale simulations on RheoCube typically use less resources and therefore, require more time to complete. In the upcoming RheoCube 1.2 release we plan to increase the number of accessible cores for molecular simulations, so that the computational time is reduced by a factor of 3 to 4.
2. The storage of data generated in a simulation
After a simulation has been completed, the generated data is stored on AWS drives and can be accessed at any point for further data analysis and visualization. The storage of data generates separate costs depending on the size of the data needing storage. For instance, a completed simulation of the flow of a complex meso-scale system can generate up to 50 GB of data. To reduce costs, however, simulations that do not need to be accessed frequently can be archived. The storage costs for archived experiments are significantly reduced. Alternatively, when data has become obsolete, simulations can also be deleted entirely.
3. The analysis and visualization of simulation data
The data that has been generated by a simulation can be accessed via a separate module, called Data Analysis and Visualization. Here, the user can select from a wide range of specialized widgets to analyze the virtual experiment results by building three dimensional visualizations, graphs, charts, and maps among others. Although less resource-demanding, these actions also require some processing power. The costs are applied only when the session is running. An analysis session can be started and ended whenever the user needs to. To prevent accidental cost accumulation when sessions are unintentionally left running, there is an option available to automatically shut the session down at midnight.
At RheoCube we are always looking for ways to improve. This also holds true for the costs associated with doing virtual experiments. For instance, we are constantly looking for ways to improve our simulation models, not just their accuracy and level of detail, but also in terms of their cost and energy efficiency. We are also exploring new types of compute resources to maximize simulation speed, reduce costs and make running simulations more sustainable. All to make virtual experimentation of complex fluids even more accessible.