-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Expand file tree
/
Copy pathAlgorithms.js
More file actions
117 lines (117 loc) · 8.68 KB
/
Copy pathAlgorithms.js
File metadata and controls
117 lines (117 loc) · 8.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
var Algorithms =
[
[ "Partitioning Algorithm", "PartitioningAlgorithm.html", [
[ "Define a Partitioner for Parallel Algorithms", "PartitioningAlgorithm.html#DefineAPartitionerForParallelAlgorithms", null ],
[ "Define a Static Partitioner", "PartitioningAlgorithm.html#DefineAStaticPartitioner", null ],
[ "Define a Dynamic Partitioner", "PartitioningAlgorithm.html#DefineADynamicPartitioner", null ],
[ "Define a Guided Partitioner", "PartitioningAlgorithm.html#DefineAGuidedPartitioner", null ],
[ "Define a Closure Wrapper for a Partitioner", "PartitioningAlgorithm.html#DefineAClosureWrapperForAPartitioner", null ]
] ],
[ "Parallel Iterations", "ParallelIterations.html", [
[ "Include the Header", "ParallelIterations.html#ParallelIterationsIncludeTheHeader", null ],
[ "Create an Index-based Parallel-Iteration Task", "ParallelIterations.html#ParallelIterationsIndexBased", [
[ "Capture Indices by Reference", "ParallelIterations.html#ParallelForEachCaptureIndicesByReference", null ]
] ],
[ "Create an IndexRange-based Parallel-Iteration Task", "ParallelIterations.html#ParallelIterationsIndexRangeBased", null ],
[ "Create an Iterator-based Parallel-Iteration Task", "ParallelIterations.html#ParallelIterationsIteratorBased", [
[ "Capture Iterators by Reference", "ParallelIterations.html#ParallelForEachCaptureIteratorsByReference", null ]
] ],
[ "Configure a Partitioner", "ParallelIterations.html#ParallelIterationsConfigureAPartitioner", null ]
] ],
[ "Parallel Transforms", "ParallelTransforms.html", [
[ "Include the Header", "ParallelTransforms.html#ParallelTransformsInclude", null ],
[ "Create a Unary Parallel-Transform Task", "ParallelTransforms.html#ParallelTransformsUnary", [
[ "Capture Iterators by Reference", "ParallelTransforms.html#ParallelTransformsCaptureIteratorsByReference", null ]
] ],
[ "Create a Binary Parallel-Transform Task", "ParallelTransforms.html#ParallelTransformsBinary", [
[ "Capture Iterators by Reference", "ParallelTransforms.html#ParallelBinaryTransformsCaptureIteratorsByReference", null ]
] ],
[ "Configure a Partitioner", "ParallelTransforms.html#ParallelTransformsConfigureAPartitioner", null ]
] ],
[ "Parallel Reduction", "ParallelReduction.html", [
[ "Include the Header", "ParallelReduction.html#ParallelReductionInclude", null ],
[ "Create a Parallel-Reduction Task", "ParallelReduction.html#ParallelReductionCreate", [
[ "Capture Iterators by Reference", "ParallelReduction.html#ParallelReductionCaptureIteratorsByReference", null ]
] ],
[ "Create a Parallel-Transform-Reduction Task", "ParallelReduction.html#ParallelTransformReductionCreate", [
[ "Capture Iterators by Reference", "ParallelReduction.html#ParallelTransformReductionCaptureIteratorsByReference", null ]
] ],
[ "Create a Parallel-Reduce-by-Index Task", "ParallelReduction.html#ParallelReduceByIndexCreate", null ],
[ "Configure a Partitioner", "ParallelReduction.html#ParallelReductionConfigureAPartitioner", null ]
] ],
[ "Parallel Sort", "ParallelSort.html", [
[ "Include the Header", "ParallelSort.html#ParallelSortInclude", null ],
[ "Sort a Range of Items", "ParallelSort.html#ParallelSortCreate", [
[ "Capture Iterators by Reference", "ParallelSort.html#ParallelSortCaptureIteratorsByReference", null ]
] ],
[ "Sort with a Custom Comparator", "ParallelSort.html#ParallelSortCustomComparator", null ]
] ],
[ "Parallel Merge", "ParallelMerge.html", [
[ "Include the Header", "ParallelMerge.html#ParallelMergeInclude", null ],
[ "Motivation", "ParallelMerge.html#ParallelMergeMotivation", null ],
[ "Create a Parallel-Merge Task", "ParallelMerge.html#ParallelMergeCreate", null ],
[ "Capture Iterators by Reference", "ParallelMerge.html#ParallelMergeCaptureByReference", null ],
[ "Understanding the Parallel Merge Algorithm", "ParallelMerge.html#ParallelMergeAlgorithm", [
[ "Step 1: Flat Output Partitioning", "ParallelMerge.html#ParallelMergeAlgorithmOverview", null ],
[ "Step 2: Co-rank to Identify Input Subranges", "ParallelMerge.html#ParallelMergeAlgorithmCorank", null ],
[ "Step 3: How co_rank works? Binary Search!", "ParallelMerge.html#ParallelMergeAlgorithmBinarySearch", null ],
[ "Why parallel merge uses no partitioner", "ParallelMerge.html#ParallelMergeAlgorithmNoPartitioner", null ]
] ]
] ],
[ "Parallel Scan", "ParallelScan.html", [
[ "Include the Header", "ParallelScan.html#ParallelScanInclude", null ],
[ "What is a Scan Operation?", "ParallelScan.html#ParallelScanWhatIsAScan", null ],
[ "Create a Parallel Inclusive Scan Task", "ParallelScan.html#ParallelScanInclusive", [
[ "Capture Iterators by Reference", "ParallelScan.html#ParallelScanInclusiveCaptureByReference", null ]
] ],
[ "Create a Parallel Transform-Inclusive Scan Task", "ParallelScan.html#ParallelScanTransformInclusive", null ],
[ "Create a Parallel Exclusive Scan Task", "ParallelScan.html#ParallelScanExclusive", [
[ "Capture Iterators by Reference", "ParallelScan.html#ParallelScanExclusiveCaptureByReference", null ]
] ],
[ "Create a Parallel Transform-Exclusive Scan Task", "ParallelScan.html#ParallelScanTransformExclusive", null ]
] ],
[ "Parallel Find", "ParallelFind.html", [
[ "Include the Header", "ParallelFind.html#ParallelFindIncludeTheHeader", null ],
[ "What is a Find Algorithm?", "ParallelFind.html#ParallelFindWhatIsFind", null ],
[ "Create a Parallel Find-If Task", "ParallelFind.html#ParallelFindIf", [
[ "Capture Iterators by Reference", "ParallelFind.html#ParallelFindIfCaptureByReference", null ]
] ],
[ "Create a Parallel Find-If-Not Task", "ParallelFind.html#ParallelFindIfNot", [
[ "Capture Iterators by Reference", "ParallelFind.html#ParallelFindIfNotCaptureByReference", null ]
] ],
[ "Find the Minimum Element", "ParallelFind.html#ParallelFindMinElement", [
[ "Capture Iterators by Reference", "ParallelFind.html#ParallelFindMinElementCaptureByReference", null ]
] ],
[ "Find the Maximum Element", "ParallelFind.html#ParallelFindMaxElement", [
[ "Capture Iterators by Reference", "ParallelFind.html#ParallelFindMaxElementCaptureByReference", null ]
] ],
[ "Configure a Partitioner", "ParallelFind.html#ParallelFindConfigureAPartitioner", null ]
] ],
[ "Module Algorithm", "ModuleAlgorithm.html", [
[ "Include the Header", "ModuleAlgorithm.html#ModuleAlgorithmInclude", null ],
[ "What is a Module Task", "ModuleAlgorithm.html#WhatIsAModuleTask", null ],
[ "Create a Module Task over a Custom Graph", "ModuleAlgorithm.html#CreateAModuleTaskOverACustomGraph", null ]
] ],
[ "Task-parallel Pipeline", "TaskParallelPipeline.html", [
[ "Include the Header", "TaskParallelPipeline.html#TaskParallelPipelineIncludeHeaderFile", null ],
[ "Understand the Pipeline Scheduling Framework", "TaskParallelPipeline.html#UnderstandPipelineScheduling", null ],
[ "Create a Task-parallel Pipeline Module Task", "TaskParallelPipeline.html#CreateATaskParallelPipelineModuleTask", null ],
[ "Connect Pipeline with Other Tasks", "TaskParallelPipeline.html#ConnectWithTasks", [
[ "Example 1: Iterate a Pipeline", "TaskParallelPipeline.html#IterateAPipeline", null ],
[ "Example 2: Concatenate Two Pipelines", "TaskParallelPipeline.html#ConcatenateTwoPipelines", null ],
[ "Example 3: Define Multiple Parallel Pipelines", "TaskParallelPipeline.html#DefineMultipleTaskParallelPipelines", null ]
] ],
[ "Reset a Pipeline", "TaskParallelPipeline.html#ResetPipeline", null ]
] ],
[ "Scalable Task-parallel Pipeline", "ScalableTaskParallelPipeline.html", [
[ "Include the Header", "ScalableTaskParallelPipeline.html#IncludeTheScalablePipelineHeader", null ],
[ "Create a Scalable Pipeline Module Task", "ScalableTaskParallelPipeline.html#CreateAScalablePipelineModuleTask", null ],
[ "Reset a Placeholder Scalable Pipeline", "ScalableTaskParallelPipeline.html#ResetAPlaceholderScalablePipeline", null ],
[ "Use Other Iterator Types", "ScalableTaskParallelPipeline.html#ScalablePipelineUseOtherIteratorTypes", null ]
] ],
[ "Data-parallel Pipeline", "DataParallelPipeline.html", [
[ "Include the Header", "DataParallelPipeline.html#ParallelDataPipelineIncludeHeaderFile", null ],
[ "Create a Data Pipeline Module Task", "DataParallelPipeline.html#CreateADataPipelineModuleTask", null ],
[ "Understand Internal Data Storage", "DataParallelPipeline.html#UnderstandInternalDataStorage", null ]
] ]
];