The 4-1-1 is an irregular insideHPC feature where we highlight some member of the HPC ecosystem with a quick look at who they are and what they do. If you’d like your company to be considered for a 4-1-1 feature, drop us an email.
eXludus develops software solutions that add resource allocation intelligence to Linux systems that dynamically optimize multi-core server throughput without need for re-writing applications. Here’s the 4-1-1.
Who: eXludus is a software development company that has spent the past 2+ years developing a solution that allows existing applications to make better use of rapidly increasing processor core counts. The founder and lead engineers spent most of their careers in high performance computing — vendor and user side — developing OS schedulers and cluster management tools, parallelizing applications, and running large supercomputer sites. Realizing that: a) multi-core processors and most existing (serial/lightly parallel) applications are not well matched, b) parallelizing applications is costly, and hard, and c) that more cores will place more strain on shared system resources, they have been applying their knowledge to developing an easy-to-deploy solution that allows multi-core processors to be used more effectively, thereby increasing overall system throughput.
What: MCOPt software transparently adds a dynamic application profiler and resource allocation layer to Linux systems. MCOPt increases system throughput by applying queuing theory techniques to ‘best fit’ actual resource needs to cores and memory. With MCOPt, users can safely process more concurrent tasks per system and take full advantage of multi-core power, as MCOPt limits shared-resource contentions and oversubscription problems which can lead to performance degradation. MCOPt is simply installed as a kernel module and requires no application changes. The company will soon be releasing an application profiler database extension to MCOPt that maintains historical runtime information that details actual resource consumption.
Why (you care): MCOPt provides an easily installed mechanism that can provide immediate throughput gains for many applications, and makes it simpler for users to extract more value from multi-core systems. If you have source access and in-house parallelism skills (neither a given), re-writing apps is a costly multi-year effort and, even then, the rate of parallelism will in most cases fall short of the rate of core count increase. An improved resource allocation layer that makes intelligent scheduling decisions to cores and memory based on actual application needs can help get more work completed in less time.