A Comparative Evaluation of Matlab, Octave, FreeMat, Scilab, and R on Tara

Author/Creator ORCID

Date

2012

Department

Program

Citation of Original Publication

Rights

This item is likely protected under Title 17 of the U.S. Copyright Law. Unless on a Creative Commons license, for uses protected by Copyright Law, contact the copyright holder or the author.

Abstract

Matlab is the most popular commercial package for numerical computations in mathematics, statistics, the sciences, engineering, and other fields. Octave, FreeMat and Scilab are free numerical computational packages that have many of the same features as Matlab. R is a free Statistical package. Although R does not belong to the same line of products as Matlab, it is similar to Matlab in its computational capabilities. These packages are available to download on the Linux, Windows, and Mac OS X operating systems. We investigate whether they are viable alternatives to Matlab for uses in research and teaching. We compare the results on the cluster tara in the UMBC High Performance Computing Facility with 86 nodes, each with two quadcore Intel Nehalem processors and 24 GB of memory. The tests focused on usability lead us to conclude that the package Octave is the most compatible with Matlab, since it uses the same syntax and has the native capability of running m-files. Both FreeMat and Scilab were hampered by somewhat different syntax or function names and some missing functions. The tests focused on efficiency show that Matlab and Octave are fundamentally able to solve problems of the same size and with equivalent efficiency in absolute times, except in one test dealing with a very large problem. FreeMat and also Scilab exhibit significant limitations on the problem size and the efficiency of the problems they can solve in our tests. The syntax of R is significantly different from that of Matlab, Octave, FreeMat, and Scilab. R too exhibited certain limitations on the size of problems it could solve for and its performance was similar to that of FreeMat and Scilab. In summary, we conclude that Octave is the best viable alternative to Matlab because it was not only fully compatible (in terms of syntax) with Matlab in our tests, but it also performed very well.