PROCESS ASSIGNMENT BY NODAL AFFINITY IN A MYULTIPROCESSOR SYSTEM HAVING NON-UNIFORM MEMORY ACCESS STORAGE ARCHITECTURE
 Inventors: Mark Robert Funk; Larry Keith
McMains; Donald Arthur Morrison,
all of Rochester; Robert Anthony
Petrillo. Fountain; Robert Carl
Seemann. Rochester; Arthur Douglas
Smet. Rochester; Timothy Joseph
Torzewski. Rochester, all of Minn.
 Assignee: International Business Machines
Corporation. Arraonk. N.Y.
 Appl. No.: 622,230
 Filed: Mar. 27, 19<»6
 Int CL6 G06F 12/02; G06F 9/44
 U.S. CI 711/170; 711/148; 395/675
 Field of Search 395/672. 674.
395/474. 475, 670. 675. 676; 711/147.
 References Cited
U.S. PATENT DOCUMENTS
4,914,570 4/1990 Peacock 395/676
4,980,822 12/1990 Brantley, Jr. et al 711/202
5,093,913 3/1992 Bishop et al 711/152
5,210,844 5/1993 Shimura et al 711/153
5,228,127 7/1993 Ikeda et al 395/200.55
5237,673 8/1993 Orbits et al 711/170
5,269,013 12/1993 Abramson et al 711/170
5,325,526 6/1994 Cameron et al 395/672
5,349,664 9/1994 Ikeda et al 395/652
5,404,521 4/1995 Murray 395/674
5,592,671 1/1997 Hirayama 395/674
Chase et al., "The Amber System: Parallel Programming on a Network of Multiprocessors," Proceedings of the 12th ACM Symposium on Operating Systems Principles. Dec. 1989. pp. 147-158.
Primary Examiner—Eddie P. Chan
Assistant Examiner—Kevin L. Ellis
Attorney, Agent, or Firm—Felsman. Bradley. Gunter &
According to the present invention, pool allocation and process assignment mechanisms create process nodal affinity in a NUMA multiprocessor system for enhanced performance. The multiprocessor system includes multiple interconnected multiprocessing nodes that each contain one or more processors and a local main memory, the system main storage being distributed among the local main memories of the multiprocessing nodes in a NUMA architecture. A pool reservation mechanism reserves pools of memory space within the logical main storage, and the pool allocation mechanism allocates those pools to real pages in the local main-memory of multiprocessing nodes. Processes to be created on the multiprocessor are given an attribute that indicates an associated pool. Upon creation, the process assignment mechanism will only assign a process to a multiprocessing node that has been allocated the pool indicated by the process' attribute. This process nodal affinity increases accesses by the assigned process to local main storage of that node, thereby enhancing system performance.
22 Claims, 4 Drawing Sheets