parallelization
Splitting work simultaneously
Parallelization is the process of dividing a task so that multiple operations can run simultaneously rather than one after another.
The term belongs to computing, where parallelization exploits multiple processors to speed up calculations: Parallelization cut the rendering time from hours to minutes.
The verb is parallelize.
Passing strand through opening
- semaphoreFlag-based signaling system
- deadlockMutual blocking, no progress
- atomicityAtoms in a molecule
- barrierObstruction preventing passage
futures · promises · synchronization · channel · spawn · await · async · latch
Twisted fiber strands
- multithreadingParallel execution paths
- distributedDivided and given out
- clusterGathered group nearby
- GPUVisual processing hardware
CPU · cores · supercomputer · Hadoop · workstation · coprocessor · accelerator
Increase in pace
- throughputProcessing rate over time
- latencyDelay in system response
- bottleneckConstriction limiting throughput
- overheadLocated directly above
scalability · efficiency · granularity · starvation · contention · profiling · benchmarking · saturation
Concurrent stage processing
- vectorizationLoop-free array computation
- tilingSurface-covering arrangement
- shardingSplitting data horizontally
- replicationAct of duplicating precisely
chunking · striding · prefetching · affinity
Scoring for instrumental ensemble
- schedulingAssigning times to events
- partitioningDividing into sections
- decompositionBreakdown into simpler parts
- fan-outDistribute outward from center
threading
Passing strand through opening
- semaphoreFlag-based signaling system
- deadlockMutual blocking, no progress
- atomicityAtoms in a molecule
barrier · futures · promises · synchronization · channel · spawn · await · async · latch · monitor
threads
Twisted fiber strands
- multithreadingParallel execution paths
- distributedDivided and given out
- clusterGathered group nearby
GPU · CPU · cores · supercomputer · Hadoop · workstation · coprocessor · accelerator
speedup
Increase in pace
- throughputProcessing rate over time
- latencyDelay in system response
- bottleneckConstriction limiting throughput
overhead · scalability · efficiency · granularity · starvation · contention · profiling · benchmarking · saturation · utilization
pipelining
Concurrent stage processing
- vectorizationLoop-free array computation
- tilingSurface-covering arrangement
- shardingSplitting data horizontally
replication · chunking · striding · prefetching · affinity
orchestration
Scoring for instrumental ensemble
- schedulingAssigning times to events
- partitioningDividing into sections
- decompositionBreakdown into simpler parts
- optimizationoptimization, caching, optimum, indexing, prefetching
- build toolsmake, Maven, Ninja, gulp, rake
- compilersGCC, compiler, frontend, DMD, parser
- microfluidicsmicrochannel, microchannels, micropump, lab-on-a-chip, biochip
- ML settingshyperparameters, learning rate, epochs, dropout, regularization
- SIMD ComputingSSE, intrinsics, broadcast, broadcasting
parallelizationserialization
Encoding objects for transmission
linearization · consolidation · batch processing · unification · centralization
parallel, unparalleled, parallelism, paralleling, parallelogram, nonparallel, parallelograms