CompanyProductsScienceSupportWhatsnew
[Product Releases]
Index
[Blog]

Most recent post

[News]

Can we trust docking results?
Sept 2010

IBM Systems and Technology Group releases a white paper with eHiTS and Cell
Oct 2008

EPA's ToxCastTM project will use SimBioSys' eHiTS as docking engine
Nov, 2007

[Events]

240th ACS
Aug 22-26, 2010
Boston, MA, USA
booth #945
see >> more

Index

Computational resource problems

Memory is never enough

As the available physical memory (RAM) grows in the average workstation, so do our expectations and the requirements imposed by various software vendors. The end results is that at any given time (from the '60s through today and very likely in the future as well) we run our scientific software with heavy use of virtual memory, i.e. swapping to disk, which is slowing down the computation.

Therefore, swapping is a crucial performance question. Most software vendors leave that task entirely to the operating system, which has absolutely no information about the order in which the various memory blocks will be required by the program in the next few milliseconds, seconds. Hence, the OS will use a heuristic algorithm, guess and frequently miss.

Idle processors and waiting jobs

Multiprocessor systems (SMPs and clusters, e.g. Beowulf) become more and more common and used widely for CPU intensive computational chemistry tasks. Nobody wants to see idle processors and waiting jobs at the same time, but it happens very frequently if the task management is left to the OS, which has no specific knowledge about the application, the lengths of various jobs, their dynamic memory requirements during their runs, their dependency, priority.

Simbiosys solutions:

Compute Manager: dependency/priority queue

MoDeST® contains a Compute Manager, which handles jobs with a dependency and priority driven queue, which has information about the memory requirements of the jobs. The Compute Manager can optimize the use of available CPUs, with its specific knowledge about the MoDeST® jobs, which are not available for the OS. Furthermore, it can cancel jobs if they become obsolete due to some interactive changes.

Memory Manager: read/write locks & smart swapping

MoDeST® uses its own Memory Manager system which contains read/write locking mechanism to offer maximum parallelization possibility with data safety. The swapping is controlled according to the queue of the Compute Manager and also by memory block locking/unlocking mechanism which provides a way to give information about future expected use (timing) of each block. This allows a smart swapping mechanism, which will always outperform the OS, the gain varies between 10% and several order of magnitudes depending on the ratio of virtual memory usage to the available physical memory. E.g. a typical OS swapping becomes unusable slow at around 4:1 ratio, while MoDeST® MemMan can still provide a reasonable performance at 10:1 ratio.




Copyright © 2010 SimBioSys Inc., All rights reserved.