Posted Friday, April 27, 2007 8:03 AM
|
|
|
|
| Hi, I recently downloaded the trial version for testing in my vb.net app. My need is basically to avoid/minimise the for loops associated whenever dealing with arrays and matrices. The matrix library is simple to use but is there a loss of speed in using the library over the direct for loops ? Nilimb
|
|
Posted Friday, April 27, 2007 8:21 AM
|
|
|
|
| On the contrary you will get a performance improvement 100-500% compared to normal managed code. The Bluebit .NET Matrix Library uses internally highly optimized native C++ libraries, and combines together managed and unmanaged code and delivers the best of both worlds; the speed of native C++ code and the feature-rich and easy to use environment of the .NET Framework. Please find here some performance benchmarks : http://www.bluebit.gr/benchmarks.htm Please contact us again if there is anything more we can help.
Trifon Triantafillidis | Lead Developer |
|
|
|
Posted Friday, April 27, 2007 8:52 AM
|
|
|
|
| could you please point to documentation of vector examples . Is there an example i can use to compare the speed ?
|
|
Posted Friday, April 27, 2007 12:51 PM
|
|
|
|
I am afraid we do not have any tests for vectors online. I you wish you may specify the vector sizes and operations you need timings for and I can run some tests and post the results here.
Trifon Triantafillidis | Lead Developer |
|
|
|
Posted Monday, April 30, 2007 6:41 AM
|
|
|
|
| Sure That will be really helpful. Can you suggest the time for finding squareroot of [x(3000,1).^2 + y(3000,1).^2] compared to a straightforward code.
|
|
Posted Monday, April 30, 2007 8:43 AM
|
|
|
|
I have used the following code: int n = 3000; Vector A = new Vector(n); Vector B = new Vector(n); Vector C ; double d; A.FillRandom(); B.FillRandom(); DateTime start = DateTime.Now; C = Vector.Multiply(A, A) + Vector.Multiply(B, B); d = Math.Sqrt( C.Sum() ); TimeSpan span = DateTime.Now.Subtract(start); Console.WriteLine("result ={0}, time={1}", d, span.Ticks/ TimeSpan.TicksPerMillisecond ); Console.Read(); The results for various values of n are: n milliseconds 3000 0 10000 0 100000 1 1000000 31 10000000 390 My machine is a Pentium 4 at 3.2GHz
Trifon Triantafillidis | Lead Developer |
|
|
|
|
|