Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries 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
    • Data Analysis 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
    • Partners
    • Contact us
Introduction
Deployment Guide
Configuration
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 Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.Distributed.Cuda
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.FSharp
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.Generic.LinearAlgebra
    • Extreme.Mathematics.Generic.LinearAlgebra.Implementation
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers
    • Extreme.Mathematics.Generic.SignalProcessing
    • Extreme.Mathematics.Implementation
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Complex
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IO
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.LinearAlgebra.Providers
    • Extreme.Mathematics.LinearAlgebra.Sparse
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.Genetic
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Numerics.FSharp
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.IO
    • Extreme.Statistics.Linq
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Random
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics.LinearAlgebra.Providers
    • 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
  • ManagedLinearAlgebraProvider Class
    • ManagedLinearAlgebraProvider Constructor
    • Properties
    • Methods
ManagedLinearAlgebraProvider ClassExtreme Optimization Numerical Libraries for .NET Professional
Encapsulates the currently active BLAS implementation.
Inheritance Hierarchy

SystemObject
  Extreme.Mathematics.LinearAlgebra.ProvidersLinearAlgebraProvider
    Extreme.Mathematics.LinearAlgebra.ProvidersManagedLinearAlgebraProvider

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

C#
VB
C++
F#
Copy
public class ManagedLinearAlgebraProvider : LinearAlgebraProvider
Public Class ManagedLinearAlgebraProvider
	Inherits LinearAlgebraProvider
public ref class ManagedLinearAlgebraProvider : public LinearAlgebraProvider
type ManagedLinearAlgebraProvider =  
    class
        inherit LinearAlgebraProvider
    end

The ManagedLinearAlgebraProvider type exposes the following members.

Constructors

  NameDescription
Public methodManagedLinearAlgebraProvider
Constructs a new ManagedLinearAlgebraProvider.
Top
Properties

  NameDescription
Public propertyBaseName (Inherited from LinearAlgebraProvider.)
Public propertyBlasLevel1
Gets the implementation of the Level 1 BLAS for double-precision arguments.
(Overrides LinearAlgebraProviderBlasLevel1.)
Public propertyBlasLevel2
Gets the implementation of the Level 2 BLAS for double-precision arguments.
(Overrides LinearAlgebraProviderBlasLevel2.)
Public propertyBlasLevel3
Gets the implementation of the Level 3 BLAS for double-precision arguments.
(Overrides LinearAlgebraProviderBlasLevel3.)
Public propertyComplexBlasLevel1
Gets or sets the current implementation of the Level 1 BLAS for double-precision complex arguments.
(Overrides LinearAlgebraProviderComplexBlasLevel1.)
Public propertyComplexBlasLevel2
Gets or sets the current implementation of the Level 2 BLAS for double-precision complex arguments.
(Overrides LinearAlgebraProviderComplexBlasLevel2.)
Public propertyComplexBlasLevel3
Gets or sets the current implementation of the Level 3 BLAS for double-precision complex arguments.
(Overrides LinearAlgebraProviderComplexBlasLevel3.)
Public propertyComplexLapack
Gets or sets the current LAPACK implementation for double-precision complex arguments.
(Overrides LinearAlgebraProviderComplexLapack.)
Public propertyComplexSparseBlas
Gets or sets the current implementation of the sparse BLAS for double-precision complex arguments.
(Overrides LinearAlgebraProviderComplexSparseBlas.)
Public propertyHasSharedDegreeOfParallelism (Inherited from LinearAlgebraProvider.)
Public propertyLapack
Gets the LAPACK implementation for double-precision arguments.
(Overrides LinearAlgebraProviderLapack.)
Public propertyMaxDegreeOfParallelism
Returns the maximum degree of parallelism used by this provider.
Protected propertyParallelOptions
Gets an object that specifies how the calculations should be parallelized.
(Inherited from LinearAlgebraProvider.)
Public propertySparseBlas
Gets the implementation of the sparse BLAS for double-precision arguments.
(Overrides LinearAlgebraProviderSparseBlas.)
Top
Methods

  NameDescription
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodWithMaxDegreeOfParallelism
Returns a provider with the specified maximum degree of parallelism.
Top
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 override base classes. You can then supply an instance of your class or classes as parameters to the [!:UseCustom] method.

Version Information

Numerical Libraries

Supported in: 5.x, 4.x
See Also

Reference

Extreme.Mathematics.LinearAlgebra.Providers Namespace
Extreme.Mathematics.LinearAlgebra.ProvidersBlasLevel1
Extreme.Mathematics.LinearAlgebra.ProvidersBlasLevel2
Extreme.Mathematics.LinearAlgebra.ProvidersBlasLevel3

Copyright (c) 2004-2016 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2018, 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.