Parallel Computing
A computational model that breaks programs into smaller sequential operations and performs those smaller operations simultaneously across multiple processors.
Sequential Computing
The standard programming model where the computer executes each operation of the program in order, one at a time.
Speedup
The ratio of the time taken to run a program sequentially to the time taken to run the parallelized program, indicating the efficiency gained by parallel computing.
DetectCat Function
A function in the program that determines whether an image contains a cat, independent of the results from other calls to the function.
Multi-core Processors
Modern computers with multiple cores that can independently execute operations, enabling parallel computing to speed up algorithms.
Speedup Calculation
The process of determining the efficiency improvement gained by parallelizing a program, calculated as the ratio of sequential time to parallelized time.
Variable Execution Times
The phenomenon where operations in parallelized segments may take different amounts of time, affecting the overall execution time of the program.
Task Allocation
A strategy in parallel computing where tasks are dynamically assigned to available processors to optimize processing time and efficiency.