Extreme Optimization™: Complexity made simple.

Numerical Components
for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Contact us
Introduction
Deployment Guide
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand ReferenceReference
  • Home
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Reference
    • Extreme.Mathematics Namespace
    • Extreme.Mathematics.Algorithms Namespace
    • Extreme.Mathematics.Calculus Namespace
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations Namespace
    • Extreme.Mathematics.Curves Namespace
    • Extreme.Mathematics.Curves.Nonlinear Namespace
    • Extreme.Mathematics.EquationSolvers Namespace
    • Extreme.Mathematics.Generic Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions Namespace
    • Extreme.Mathematics.LinearAlgebra.IO Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners Namespace
    • Extreme.Mathematics.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra.Sparse Namespace
    • Extreme.Mathematics.Optimization Namespace
    • Extreme.Mathematics.Optimization.LineSearches Namespace
    • Extreme.Mathematics.SignalProcessing Namespace
    • Extreme.Statistics Namespace
    • Extreme.Statistics.Distributions Namespace
    • Extreme.Statistics.IO Namespace
    • Extreme.Statistics.Multivariate Namespace
    • Extreme.Statistics.Random Namespace
    • Extreme.Statistics.Tests Namespace
    • Extreme.Statistics.TimeSeriesAnalysis Namespace
  • Extreme.Mathematics.LinearAlgebra.Providers Namespace
    • BlasLevel1 Class
    • BlasLevel2 Class
    • BlasLevel3 Class
    • ComplexBlasLevel1 Class
    • ComplexBlasLevel2 Class
    • ComplexBlasLevel3 Class
    • ComplexLapack Class
    • ComplexSparseBlas Class
    • Lapack Class
    • LinearAlgebraProvider Class
    • ManagedBlasLevel1 Class
    • ManagedBlasLevel2 Class
    • ManagedBlasLevel3 Class
    • ManagedComplexBlasLevel1 Class
    • ManagedComplexBlasLevel2 Class
    • ManagedLinearAlgebraProvider Class
    • ManagedSparseBlas Class
    • SingleBlasLevel1 Class
    • SingleBlasLevel2 Class
    • SingleBlasLevel3 Class
    • SingleComplexBlasLevel1 Class
    • SingleComplexBlasLevel2 Class
    • SingleComplexBlasLevel3 Class
    • SingleComplexLapack Class
    • SingleComplexSparseBlas Class
    • SingleLapack Class
    • SingleLinearAlgebraProvider Class
    • SingleManagedBlasLevel1 Class
    • SingleManagedBlasLevel2 Class
    • SingleManagedBlasLevel3 Class
    • SingleManagedComplexBlasLevel1 Class
    • SingleManagedComplexBlasLevel2 Class
    • SingleManagedLinearAlgebraProvider Class
    • SingleManagedSparseBlas Class
    • SingleSparseBlas Class
    • SparseBlas Class
  • LinearAlgebraProvider Class
    • Members
    • LinearAlgebraProvider Constructor
    • Methods
    • Properties
Collapse image Expand Image Copy image CopyHover image
         




LinearAlgebraProvider Class

Members See Also 
Encapsulates the currently active BLAS implementation.

Namespace: Extreme.Mathematics.LinearAlgebra.Providers
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 4.2.11333.0 (4.2.12253.0)

Syntax

C#
                      public abstract class LinearAlgebraProvider : IProvider, 
	IParallelized
Visual Basic (Declaration)
                      Public MustInherit Class LinearAlgebraProvider _
	Implements IProvider, IParallelized
Visual C++
                      public ref class LinearAlgebraProvider abstract : IProvider, 
	IParallelized
F#
[<AbstractClassAttribute>]
type LinearAlgebraProvider =  
    class
        interface IProvider
        interface IParallelized
    end

Remarks

The classes in the Extreme.Mathematics.LinearAlgebra namespace use the standard Basic Linear Algebra Subroutines (BLAS) whenever possible. The Extreme Optimization Mathematics Library for .NET provides two implementations. One is in 100% managed code. The other calls a native, highly optimized, processor-specific kernel.

This class exposes properties that allow you to specify the BLAS objects that are to be used by the classes in this namespace.

You can select the managed implementation by calling the UseManaged()()()() method. To select the native implementation, call the UseNative()()()() method. The native kernel is used by default. This is the fastest option, especially for larger matrices, but also has a larger memory footprint.

Alternatively, you can plug in platform optimized versions by inheriting from the BlasLevel1, BlasLevel2, and BlasLevel3 abstract base classes.

Inheritance Hierarchy

System..::..Object
  Extreme.Mathematics.LinearAlgebra.Providers..::..LinearAlgebraProvider
    Extreme.Mathematics.LinearAlgebra.Providers..::..ManagedLinearAlgebraProvider

See Also

LinearAlgebraProvider Members
Extreme.Mathematics.LinearAlgebra.Providers Namespace
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel1
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel2
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel3

Send comments on this topic to support@extremeoptimization.com

Copyright (c) 2004-2011 ExoAnalytics Inc.

Copyright © 2003-2013, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.