Shared-memory multiprocessor systems can schedule these processes on whatever physical processors are available, distributing program execution over several processors. VMM can run more or fewer processes than there are physical processors. VMM automatically synchronizes parallel operations, so the number of processes and processors should not affect program behavior, although it is likely to affect program performance. VMM can be used to simulate parallel processing on single-processor systems. Parallel Data VMM partitions positions of parallel shapes among VMM processes in blocks and distributes parallel data among VMM processes.
Serial data is replicated in each process.
VMM performance on most systems suffers from poor paging performance without page prefetching, although it eliminates extra buffer copying. Parallel left indexing accesses an arbitrary set of positions within a parallel variable. To handle these cases, VMM mmap s the entire range of positions, deferring page management to the operating system and VM hardware. VMM does not modify the parallel index value by sorting it. O only indirectly, by using separate processes for each disk.