What is MtxVec really?
MtxVec started as an object-oriented numerical library covering linear algebra for matrices and vectors in 1999. Ever since then it has been improving it's speed and functionality. Today MtxVec stands for unprecedented high performance as a math library with a wide range of mathematical functionality. It enables Delphi and .NET developers with truly rapid scientific application development.
Why use MtxVec when Delphi already has math functions?
There are two main reasons. Speed and functionality. If your application needs to deliver real time mathematical results, you need speed. If your application needs to implement special, less known mathematical algorithms, not covered in standard math libraries, you need functionality. In either case MtxVec is a good choice.
Who uses these libraries?
Users include scientists from research labs at Universities, corporate development teams for process control applications and other commercial application designers. In general it's those who know and need math and recognize its potential for their cause.
How does it work?
From the users point of view it's as easy as possible. After including the library and reading the Quickstart introduction, you're ready to begin and let the real hard work happen in the background - in assembly level optimized classes.
Do I need to buy Intel MKL for MtxVec to work?
No. MtxVec uses some functions from MKL library and an additional license is not required.
Will MtxVec run on Linux?
The support for Linux is still an open option and can happen if there will be enough demand.
What about support for 64 bits?
Currently supports 64bit on .NET framework
Are there going to be specialy optimized libraries for the AMD CPU's?
MtxVec already runs at optimal performance taking advantage of SIMD and SSE2 on AMD's.
Which compilers does MtxVec support?
The standard .NET languages C#, VB.NET and C++ with VS2005 and VS2008. Borland/CodeGear/Embarcadero native W32 Delphi compilers 6,7, 9, 2006, 2007, 2009 and 2010. and C++Builder.
Do MtxVec assemblies pass PEVerify test?
Yes. They use unmanaged code though because it is not possible to write assembler in .NET.
Since MtxVec is based on routines only those algorithms available in the library are speeded up?
If all the functions used to write another function run at 90% efficiency, then the new function will also run at 90% efficiency. This means that you can build very fast algorithms by carefully using MtxVec primitives.
Wont MtxVec become obsolete once native/.NET compilers are improved?
Even the best x86 native compilers today still use specialy optimized libraries. And there are two things that make MtxVec special: high quality code of a vast array of different numerical algorithms and speed. While in theory everything is possible, the reality of today shows astounding performance gains (10-30x) for numerical applications which use MtxVec. The only way to expirience those gains, is to try the library.