Fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab. Uses template meta-programming techniques.

Also provides efficient wrappers for LAPACK, BLAS and ATLAS libraries, including high-performance versions such as OpenBLAS and Intel MKL.

Useful for machine learning, pattern recognition, signal processing, bioinformatics, statistics, finance, etc.

For more details, see http://arma.sourceforge.net

Features

  • Easy to use - has many MATLAB like functions
  • Useful for prototyping directly in C++
  • Useful for conversion of research code into production environments
  • Permissively licensed - can be used in proprietary software and products
  • Used for machine learning, pattern recognition, computer vision, signal processing, bioinformatics, statistics, finance, etc
  • Efficient classes for vectors, matrices, cubes (1st, 2nd, 3rd order tensors)
  • Fast singular value decomposition (SVD), eigen decomposition, QR, LU, Cholesky, FFT
  • Clustering using k-means and Gaussian Mixture Models (GMM)
  • Automatic vectorisation of expressions (SIMD)
  • Contiguous and non-contiguous submatrices
  • Automatically combines several operations into one to increase speed and efficiency
  • Automatically uses OpenMP for speedups

Project Samples

Project Activity

See All Activity >

Follow Armadillo C++ matrix library

Armadillo C++ matrix library Web Site

Other Useful Business Software

WhatsUp® Gold - Start A Free 30-Day Trial WhatsUp® Gold - Start A Free 30-Day Trial Icon
WhatsUp® Gold - Start A Free 30-Day Trial Icon

All-in-one monitoring of your entire infrastructure with the industry's most user friendly pricing. Free trial of our award-winning software

If you are like the rest of our user community, your IT team is busy. With pressure to deliver on-time projects, you don’t have a lot of time to spend making your management tools work. You need network monitoring tools that work for you. You want tools that makes it easy to find performance issues before your users do and resolve them before they impact the business. That’s why tens of thousands of customers around the world love WhatsUp Gold.
1/2
How many devices do you monitor on your company's network?
2/2
One last question before you visit our site:

When do you plan to purchase a network performance monitoring solution?

Rate This Project

Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
18
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

User Reviews

  • Excellent library.

    1 user found this review helpful.
  • This library is great for converting Matlab code into efficient C++. My methodology is to copy the Matlab into a C++ editor window, and convert line-by-line. It's not a one-to-one conversion, but, it's close (2-3 lines C++ to 1 Matlab). Efficiency is excellent. I have benchmarked a dot product operation and found its use with OpenBLAS is close to the maximum CPU capability. The only downside is that when Armadillo throws an exception (during development), it can be difficult to find the source of the problem. The best solution is a stack trace in the debugger.

    1 user found this review helpful.
  • Excellent all-purpose matrix library.

    1 user found this review helpful.
  • I like this project. It takes advantage of the new C++ features and is very easy to use.

    1 user found this review helpful.
  • Excellent usability, active development

    1 user found this review helpful.
Read more reviews >

Additional Project Details

Intended Audience

Information Technology, Science/Research, Education, Advanced End Users, Developers, Engineering

Programming Language

MATLAB, C++

Registered

2008-02-08