Evaluate the benefits of SMP support for IO-intensive Erlang applications

University essay from KTH/Skolan för informations- och kommunikationsteknik (ICT)

Author: Erisa Dervishi; [2012]

Keywords: ;

Abstract: In the recent years, parallel hardware has become the mainstream standard worldwide. We are living in the era of multi-core processors which have improved dramatically the computer’s processing power.The biggest problem is that the speed of software evolution went much slower, resulting in microprocessors with features that software developers could not exploit. However, languages that support concurrent programming seem to be the solution for developing effective software on such systems. Erlang is a very successful language of this category, and its SMP (Symmetric Multi Processing) feature for multi-core support increases software performance in a multi-core environment. The aim of this thesis is to evaluate the benefits of the SMP support in such an environment for different versions of the Erlang runtime system, and for a very specific target of Erlang applications, the Input/Output-intensive ones. The applications chosen for this evaluation (Mnesia,and Erlang MySql Driver), though being all IO bound, differ from the way they handle the read/write operations from/to the disk. To achieve the aforementioned goal, Tsung, an Erlang-written tool for stressing databases and web servers, is adapted for generating the required load for the tests. A valuable contribution of this thesis is expanding Tsung’s functionalities with a new plugin for testing remote Erlang nodes and sharing it with the users’ community. Results show that SMP helps in handling more load. However, SMP’s benefits are closely related to the application’s behavior and SMP has to be tuned according to the specific needs.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)