Class ParallelOnDemandOptimizer
A variant of the on-demand method optimizer that runs batches of tasks in parallel rather than in sequence.
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Flame.Compiler.Pipeline
Assembly: Flame.Compiler.dll
Syntax
public class ParallelOnDemandOptimizer : OnDemandOptimizer
Constructors
| Improve this Doc View SourceParallelOnDemandOptimizer(IReadOnlyList<Optimization>)
Creates a method body optimizer.
Declaration
public ParallelOnDemandOptimizer(IReadOnlyList<Optimization> pipeline)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IReadOnlyList<Optimization> | pipeline | A pass pipeline: a sequence of optimizations to apply to every method body. |
ParallelOnDemandOptimizer(IReadOnlyList<Optimization>, Func<IMethod, MethodBody>)
Creates a method body optimizer.
Declaration
public ParallelOnDemandOptimizer(IReadOnlyList<Optimization> pipeline, Func<IMethod, MethodBody> getInitialMethodBody)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IReadOnlyList<Optimization> | pipeline | A pass pipeline: a sequence of optimizations to apply to every method body. |
System.Func<IMethod, MethodBody> | getInitialMethodBody | A delegate that tries to find an initial method body for a method. This initial method body is is the starting point for further optimizations, both interprocedural and intraprocedural. |
Methods
| Improve this Doc View SourceRunAllAsync<T>(IEnumerable<Func<Task<T>>>)
Declaration
public override Task<IReadOnlyList<T>> RunAllAsync<T>(IEnumerable<Func<Task<T>>> tasks)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<System.Func<System.Threading.Tasks.Task<T>>> | tasks |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyList<T>> |
Type Parameters
Name | Description |
---|---|
T |
Overrides
Flame.Compiler.Pipeline.Optimizer.RunAllAsync<T>(System.Collections.Generic.IEnumerable<System.Func<System.Threading.Tasks.Task<T>>>)