2P134

T2K Tsukuba !"#$%&'( GAMESS )*+,(1 ./0 123456789:, 2 ;<3456=> ?@5)

ABCDE 1,2, FGHI 1J!"#$%&'()*+,-./0123456.789:;<=>?@;<=AB23CD/&'()*+,-.EFGHIJKLMNOP9Q9RKST/LMOCD/()*UV NUMA
(Non-Uniform Memory Access)7WXJKYZ[O\]^_`a;<=0bc2d?6e-f=gE
hijJ9RKSTJkUFGhijJ9QlZ[a;<=0bc2d?6e-f=g(mn SMP,Symmetric Multiprocessing)7V\]^_`aUoKpUqrUoKE:sAB23NZ8^_`E
tujJ9RKlvw9/^_`?fc,Exy8z{|NO}ORpU#QO~REoKST/L
MO?6e-f=gU/&'()UV:TJkU7V~MtEx7OP9:OpenMP/MPI`2&'OOEOjJ9Q9RKS()//O()0b1./UoK GAMESS [1]UV:6d6O O4123O MPI 0b1.
7V¡OPl&'0b1.7OP9:NUMA +,-.U/¢£V¤¥Opz¦G:T/LM
O+,-.U§¨N¢£j©Klv/ª««Ex7jJ9RKS¬­UV:NUMA +,-.
UoK T2K Tsukuba +,-.[2]U GAMESS /®¯°|7±²³OMS

GAMESS )KLMGAMESS V&'NR9V:·¸/¹º» ¼6UoK Distributed Data Interface (DDI)iRl0bc,»½</&'E³OIJ9RKSDDI UV:broadcast ¾ global sum {/¿À¹º¾
send/recv /LMOZ/¹º/ÁN GET/PUT/ACC 7RPl`_63^_`?fc,(RMA)*C
EÂÃjJ9RK(version 1)Skld<60/ÄÅEÆÇjJ41^È3É()UhijJ9RK(version 2)SÊ!UV:;<=0bc2dª6/ËÌNZÍ89ª6Î\]^_`hiÏK*CEÂÃjJ:Coupled Cluster ()NR9L#QO()ÐÈ^_`U§¨N()UQKLMNOP9Q9RK(version 3)SÑÒ GAMESS 7\NtÓjJ9RK DDI NV TCP/IP
socket, MPI-1/socket mixed, MPI-1, ARMCI [3]{NLKÂÃEiÔjJ9:O()*+,.UÕÖO&'()E×¯UoKSsockets, mixed, mpi {/ÂÃUV:RMA ÂÑÏKlvN()0bc,7VØN6
d60bc,Ex7OK(´ 1)ST/lv0bc2d>?ol 2 0bc,E¢GT

CP 0CP1

CP 2

CP 3

GAMESS processes

replicated data

replicated data

replicated data

replicated data(compute process)(MWORDS)(MWORDS)(MWORDS)(MWORDS)

node replicated datanode replicated data(no keyword)(no keyword)

SYSV shared memory segment

7NO:6d6Ù/?
fc,E¦R()UV®¯N

SYSV shared memory segment

distributed dataÚÛÜÝK×¯®EoKS(MEMDDI)Þ ARMCI hi8lßÀVª6NQ/6d6,»2Eà¢jJKS

DS 4DS 5DS 6DS 7

GAMESS processes(data server)´ 1 µ¶O DDI /CD´(readme.ddi L)6d6VáN¢âãäNåKb6<æ«È7çèéNåKêë6/ì/lvNhijJ9RKSkl:
íJîJ/hiÉNZÏKO()ïÉ789V HF ()7 MP2()Eoð}JKSñN¹ºòE#QR/VóôUoKlv:¬­UVá789 MP2 ()6
õ23789®¯°|³OPlS

T2K Tsukuba !"#$
T2K Tsukuba +,-.V:sª6N 4 / Quad core AMD Opteron 0bc2d(16 0bc2d>?)ö÷8l&'()*+,-.Uo:32GByte /^_`\]89RKSø/ª6V 4 ¬/InfiniBand NLK fat-tree ù23ú6fCûNLüýjJ9:/ª6NZ89zþN§¨
O¹ºEÿ UQKSª6ÎN()i/!,f"#¾,ú20"#lORE:InfiniBand UüýjJl Lustre 4$ <+,-.NL§¨O I/O ÂÑ89RKSInfiniBand ù23ú6fhiÏKÞÉ789:mvapich1 {/ MPI 1 1`/ÁN IP over InfiniBand (IPoIB)EoKSNUMA +,-.NR9V:^_`Ì%0bc,/>?&VAB23N'(9K)E*O
4$f67OP9GKSTJ>È3b6<ÏKlvN Portable Linux Processor Affinity (PLPA)[4] DDI 1 1`N+,-,:0b1.à¢.N/0ÏKLMÂÃ8lS#"N12&OPQR®¯°|/lv/½È=;6f()789 MP2 ()Â³8lS()NV T2K Tsukuba +,-./
4 ª6(64 0bc2d>?)iR:ä\]^_`HM?<1`2.hi89RKS 1 Ní/345ÏSprocessor affinity (PA)7V:0bc,/0bc2d>?U¢)Ï)60ÏK
z/U:CORE Vñ0/0bc2d>?N ÈÏK/0:ANY V È8OR/0N7(ÏKSPA NR9:()0bc,(CP)76d6(DS)íJîJNZ8/0³OPlS89NOP9R
K/V:íJîJ/ DDI ÂÃNR945<3U/0jJK PA /0UoKST/34V processor
affinity E®¯NZ8YþN#QOÚÛÜÝ9::;NTJ/0ÏKT7E*UoKT7
589RKSkl ARMCI NLKÂÃUV:6d6Eª6<7N=å8)à¢jJOR
T7U()0bc,NÜÝKÚÛE>?@jRT7EABjJ:T/lvÁ/ÂÃNZ8]hN
OPl7CÝ}JKS 1 T2K Tsukuba +,-. 4 ª6NLK MP2 -,3()/Â³.ë
D

D

D

DDI
NetworksocketIPoIB

socketIPoIB

socket
mixed
mixed
mixed
mpi
mpi
mpi
armci D
IPoIB mvapich1 mvapich1 mvapich1 mvapich1 mvapich1 mvapich1 mvapich2

PA(CP)

ANY

CORE

CORE

ANY

CORE

CORE

ANY

CORE

CORE

CORE

PA(DS)

ANY

ANY

CORE

ANY

ANY

CORE

ANY

ANY

CORE

CORE(0) D

CPU/s

72.4

67.5

72.8

82.8

87.4

127.0

78.6

73.4

77.6

97.6

WALL/s

108.5

99.5

240.0

108.8

122.2

273.6

113.7

107.3

240.9

99.2

[1] GAMESS (General Atomic and Molecular Electronic Structure System),
http://www.msg.chem.iastate.edu/gamess/[2] ARMCI (Aggregate Remote Copy Interface), http://www.emsl.pnl.gov/docs/parsoft/armci/[3] T2K Open Supercomputer Alliance, http://www.open-supercomputer.org/[4] PLPA (Portable Linux Processor Affinity), http://www.open-mpi.org/projects/plpa/

D