ILGPU  0.9.0
ILGPU.Backends Namespace Reference

Namespaces

namespace  EntryPoints
 
namespace  IL
 
namespace  OpenCL
 
namespace  PointerViews
 
namespace  PTX
 
namespace  SeparateViews
 

Classes

class  Backend
 Represents a general ILGPU backend. More...
 
class  BackendCodeGenerator
 Extension methods for IBackendCodeGenerator instances.
 
class  BackendExtension
 Represents an abstract backend extensions that can store additional data. More...
 
class  CodeGeneratorBackend
 Represents a backend that works on several code generators and kernel builders in parallel to speed up code generation. More...
 
class  CompiledKernel
 Represents a compiled kernel that encapsulates emitted binary code. More...
 
interface  IBackendCodeGenerator
 Represents an abstract code generator that works on a given data type. More...
 
interface  IBackendHook
 Represents a custom backend hook. More...
 
class  InvalidCodeGenerationException
 An exception that is thrown in case of a fatal error in a backend. More...
 
interface  IPhiBindingAllocator
 An abstract binding allocator for the class PhiBindings. More...
 
class  NotSupportedIntrinsicException
 An exception that is thrown in case of a not support intrinsic. More...
 
struct  PhiBindings
 Maps phi nodes to basic blocks in order to emit move command during the final code generation phase. More...
 
class  PTXArchitectureUtils
 Utilities for the PTXArchitecture enumeration.
 
struct  PTXInstructionSet
 Represents a PTX ISA (Instruction Set Architecture). More...
 
class  RegisterAllocator
 Represents a generic register allocator. More...
 
class  VariableAllocator
 Represents a generic high-level variable allocator. More...
 

Enumerations

enum  TargetPlatform { TargetPlatform.X86, TargetPlatform.X64 }
 Represents a target platform. More...
 
enum  BackendType { BackendType.IL, BackendType.PTX, BackendType.OpenCL }
 Represents the general type of a backend. More...
 
enum  BackendFlags : int { BackendFlags.None = 0 }
 Represents general backend-specific code-generation flags. More...
 
enum  PTXArchitecture {
  PTXArchitecture.SM_30, PTXArchitecture.SM_32, PTXArchitecture.SM_35, PTXArchitecture.SM_37,
  PTXArchitecture.SM_50, PTXArchitecture.SM_52, PTXArchitecture.SM_53, PTXArchitecture.SM_60,
  PTXArchitecture.SM_61, PTXArchitecture.SM_62, PTXArchitecture.SM_70, PTXArchitecture.SM_72,
  PTXArchitecture.SM_75, PTXArchitecture.SM_80
}
 Represents a PTX architecture. More...
 

Enumeration Type Documentation

enum ILGPU.Backends.BackendFlags : int
strong

Represents general backend-specific code-generation flags.

Enumerator
None 

The default flags (none).

Represents the general type of a backend.

Enumerator
IL 

An IL backend.

PTX 

A PTX backend.

OpenCL 

An OpenCL source backend.

Represents a PTX architecture.

Enumerator
SM_30 

The 3.0 architecture.

SM_32 

The 3.2 architecture.

SM_35 

The 3.5 architecture.

SM_37 

The 3.7 architecture.

SM_50 

The 5.0 architecture.

SM_52 

The 5.2 architecture.

SM_53 

The 5.3 architecture.

SM_60 

The 6.0 architecture.

SM_61 

The 6.1 architecture.

SM_62 

The 6.2 architecture.

SM_70 

The 7.0 architecture.

SM_72 

The 7.2 architecture.

SM_75 

The 7.5 architecture.

SM_80 

The 8.0 architecture.

Represents a target platform.

Enumerator
X86 

The X86 target platform.

X64 

The X64 target platform.