The property of a computer program, or program segment, that allows for the simultaneous execution of operations on different data values, thus making it possible to allocate the work to a set of operators and accomplish the work in parallel. One example of work that is very vectorizable is taking an entire matrix of values and multiplying each by 2. It is possible for different operators to work on different cells of the matrix at the same time. One example of work that is not vectorizable is adding to each item in an array the value of the preceding item in the array as each calculation is dependent upon the results of the preceding calculation so there is no way to perform the operations at the same time. Vectorization is only one sub-class - probably one of the most restrictive sub-classes - of parallelizable programming