www.omatrix.com





:: O-Matrix ::
> Overview
> Examples
> Performance
   > Trig Functions
   > Statistics
   > Matrix Operations
   > Signal Processing
   > Image Processing
> Analysis Functions
> Data Visualization
> The O-Matrix Language
> Data Manipulation/IO
> Application Development
> Using Matlab m-files

> PowerPoint Overview
> Pricing & Ordering




O-Matrix Performance

O-Matrix has been designed from the ground up for accuracy and high-performance. The O-Matrix environment enables you to both prototype designs and perform large scale analysis within the integrated environment. O-Matrix has been built using highly optimized C/C++, FORTRAN, and assembly code to provide optimal execution performance. The linear algebra routines in O-Matrix are based on the algorithms from BLAS, LINPACK, and LAPACK to provide robust, accurate solutions. As of O-Matrix 6.4 the majority of the numerical functions and many of the data processing functions have been re-strucutured to to take advantage of multi-core machines.

    Overall, O-Matrix is the fastest matrix computation package we have tested.
    - SciViews

The following benchmarks are from the Stefen Steinhaus' Number Crunching Report, SciViews.org, and Matlab customers. The benchmark script is 100% Matlab compatible; the same script can be run in either O-Matrix or Matlab. Even greater performance gains are available when implementing solutions in the native O-Matrix language. The O-Matrix environment provides two languages - The native O-Matrix language which is similar to, but more flexible, powerful, and easier to use than Matlab; and Matlab mode for running Matlab code.

Benchmark O-Matrix 6.5 Matlab 7.6
FFT over 2^19 random complex values 0.044 0.084
FFT over 800,000 random complex values 0.100 0.125
Sorting 2,000,000 random values 0.201 0.271
Standard deviation of 2,000,000 random values 0.003 0.075
1000x1000 random matrix .^3 0.011 0.639
800x800 random matrix .^1000. 0.012 0.045
Gaussian error function over 500x500 matrix 0.001 0.043
800x800 Toeplitz matrix 0.014 0.050
Create 2000x2000 normal distributed random matrix 0.011 0.103
Create 2500x2500 ones matrix 0.014 0.029
Linear regression over 600x600 matrix (c=a\b') 0.019 0.045
720x720 cross-product (b= a' * a) 0.046 0.043
Eigenvalues of 320x320 random matrix 0.154 0.215
Determinant of 650x650 random matrix 0.023 0.038
Cholesky decomposition of 900x900 matrix 0.035 0.031
Inverse of 400x400 random matrix 0.015 0.023
750,000 Fibonacci number (vector calculation) 0.134 0.110
Creation of 1000x1000 Hilbert matrix 0.025 0.038
Escoufier's method on 37x37 matrix (loops) 0.156 0.340
Gamma function over 600x600 matrix 0.061 0.093
sin(x)+cos(x) over 1500x1500 random matrix 0.048 0.094
exp(log(x)) over 1500x1500 random matrix 0.130 0.198
matrix*scalar over 2000x2000 random matrix 0.022 0.025
matrix/scalar over 2000x2000 random matrix 0.020 0.036
All timings are in seconds. - Run on an Intel Core 2 Quad, Q6600 at 2.4 GHz, with 4GB of memory
All calculations performed with double-precision values


    I use O-Matrix for computationally intensive numerical mathematics in projects about
    plasma physics and engineering. The reasonable O-Matrix price has made it very
    affordable, and the outstanding execution performance has relieved me from the need to code in
    C/C++ for most of my projects.

    - Mario Charro, PhD., - Universidad Politecnica de Madrid, Spain

O-Matrix has a small memory footprint and efficiently uses system resources. For the benchmark above the initial memory usage, (immediately after application startup) was 7MB for O-Matrix and 63MB for Matlab. Peak memory usage during execution was 154MB for O-Matrix and 170MB for Matlab.

All benchmarks on www.omatrix.com are available in the example\benchmarks directory of the O-Matrix Light download. (To run Matlab compatible m-files in O-Matrix, press the lightning bolt icon on the toolbar, change the 'Files of type' drop down to 'Mlmode File Type', and then select the file.) Note that you must install the O-Matrix MFile Compatibility Library to run the Matlab-based benchmarks available on this page. See Why Users are Choosing O-Matrix for a more detailed product comparison of O-Matrix and Matlab.



Company |  Products |  Showcase |  Support |  Ordering
Copyright© 1994-2009 Harmonic Software Inc. - All rights reserved.