at least first and second minipages;
storing a respective first one of the data items in each of the first minipages, and a respective second one of the data items in each of the second minipages, whereby the data items stored in the first minipages constitute a first group, and the data items stored in the second minipages constitute a second group;
mapping respective first and second virtual pages, in a virtual memory space of the processors, to each of the pages of the physical memory in the sequence, such that the first and second virtual pages are associated respectively with the first and second minipages on each of the pages in the physical memory, and the first data item on each of the pages of the physical memory receivesthe virtual pages includes using a local operating system running on each of the processors to map the virtual pages to the physical pages in a local memory associated with each of the processors, and altering the access permissions includes altering the permissions for all of the virtual pages in the sequential range with a single operating system call.
In a preferred embodiment, receiving the request includes receiving a first request by the process during a first, fine-granularity phase of the process, to access a single one of the data items in the selected group, and receiving a second request by the process during a second, coarse-granularity phase of the process, to access a multiplicity of the data items over the sequential range.
There is additionally provided, in accordance with