Kanoj Sarcar <kanoj@sgi.com>  Nov 1999 ˺ǽ˽񤭤ޤ
http://oss.sgi.com/projects/numa/ ԤΥ֥ڡޤ
ܸܹ <hng@ps.ksky.ne.jp>
    ͺ <nakano@apm.seikei.ac.jp>

ΥեŪϡLinux vm ˤ NUMA ϢΥɤ˴ؤơ
ǿΡΥȤ͡ʿ͡˽񤤤Ƥ餦ȤǤ

ޤ NUMA ȤϲǤ礦ΥƥǤϡץå餢
ΰ (NUMA Υϡɥϥ꤬ս֤Ƥ
ޤ) ؤΥ֤ΥץåȥΰȤΡֵΥפˤ
ưۤʤޤγΰؤΥ֤ϡĤ cpu 
ʤޤ cpu ȤߤϤ줾֥ΡɡפȸƤФޤΤ褦
ƥǤϡͥǥΡɴ֤̿Ǿޤ뤳Ȥǽ
顢ͭˤʤޤΤλȤߤȤƤϡͥ text ȥ꡼
꡼ǡΡɴ֤ʣꡢͥμʬɬ
פȤǡ¤ƤΥΡɤΥ˳Ǽꤹʤɡ¿
ˤ錄ޤ

ΤȤnuma ݡȤεǽơʬϢ³
ʪ򤤤˸ΨŪѤ뤫ȤȤ˽椷Ƥޤ
äơNUMA ǤϤʤƤ⡢ʪɥ쥹֤礭ʥۡ
ĤȤǤ륢ƥʤ顢ƱɤȤޤ
餹٤ƤΥɤ CONFIG_DISCONTIGMEM ˤäƤҤȤޤȤ
Ƥޤ

ܿνʳǤϡbootmem Υɤ NUMA Ԥޤ
ˤϡ bootmem_data_t ¤Τ˥ץ벽ˡ
ޤθΡɤȤΥ뤬Υɲä
ޤŪˤϡbootmem Ѥץåȥեʤ
ʤǤ⡢ bootmem  mem_map ǡ¤Τ򡢺ŬȻפ
֤뤳ȤǽǤ

ƥΡɤΥڡƥǡ¤Τ pg_data_t ˥ץ벽
ޤbootmem_data_t ϡΰ˲᤮ޤ󡣥ɤ NUMA
̾ UMA ץåȥեफƱ褦˸褦ˤ뤿ᡢ
UMA ץåȥեŪ˳Ƥ줿 pg_data_t Ĥ褦
ʤޤ (contig_page_data)ΡƱ褦˸褦ˤפᡢ
"numnodes" Ȥѿ⡢٤ƤΥץåȥեƤޤ
٥ޡԤäƤϢ졢¿ѿ㤨 low_on_memory,
nr_free_pages ʤɤ pg_data_t  NUMA 뤫ɤƤ
ȤˤʤǤ礦

ߤΤȤ NUMA ǧڡƥɤϡڡƤ̡
Ρɤ˥饦ɥӥǳƤƤȤޤϾ衢
NUMA ΰܿϤСȥΡɤνŪ۴ĸ
(concentratic circle search) Ԥ褦ѹǤ礦
alloc_pages_node ɲä줿Τǡɥ饤ФϤΥ
ƤӽФСNUMA ץåȥեफ UMA ץåȥեफռ
ʤƤɤʤޤ
