from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(16, 16, 8) Component("BGQ-core") Program("BGQ-core", "cmt-bone-be.txt") Property("BGQ-core", "app.elementSize", lambda gid, cid, cids, index: 9) Property("BGQ-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("BGQ-core", "app.transferSizeX", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.transferSizeY", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.transferSizeZ", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("BGQ-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("BGQ-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("BGQ-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i):
from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(4, 2, 2) Component("BGQ-core") Program("BGQ-core", "cmt-bone-be.txt") Property("BGQ-core", "app.elementSize", lambda gid, cid, cids, index: 5) Property("BGQ-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("BGQ-core", "app.transferSizeX", lambda gid, cid, cids, index: 16000) Property("BGQ-core", "app.transferSizeY", lambda gid, cid, cids, index: 16000) Property("BGQ-core", "app.transferSizeZ", lambda gid, cid, cids, index: 16000) Property("BGQ-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("BGQ-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("BGQ-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("BGQ-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i):
from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(128, 64, 64) Component("BGQ-core") Program("BGQ-core", "cmt-bone-be.txt") Property("BGQ-core", "app.elementSize", lambda gid, cid, cids, index: 9) Property("BGQ-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("BGQ-core", "app.transferSizeX", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.transferSizeY", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.transferSizeZ", lambda gid, cid, cids, index: 51840) Property("BGQ-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("BGQ-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("BGQ-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("BGQ-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i):
from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(32, 32, 32) Component("BGQ-core") Program("BGQ-core", "cmt-bone-be.txt") Property("BGQ-core", "app.elementSize", lambda gid, cid, cids, index: 11) Property("BGQ-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("BGQ-core", "app.transferSizeX", lambda gid, cid, cids, index: 77440) Property("BGQ-core", "app.transferSizeY", lambda gid, cid, cids, index: 77440) Property("BGQ-core", "app.transferSizeZ", lambda gid, cid, cids, index: 77440) Property("BGQ-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("BGQ-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("BGQ-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("BGQ-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i):
from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(64, 64, 32) Component("BGQ-core") Program("BGQ-core", "cmt-bone-be.txt") Property("BGQ-core", "app.elementSize", lambda gid, cid, cids, index: 6) Property("BGQ-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("BGQ-core", "app.transferSizeX", lambda gid, cid, cids, index: 23040) Property("BGQ-core", "app.transferSizeY", lambda gid, cid, cids, index: 23040) Property("BGQ-core", "app.transferSizeZ", lambda gid, cid, cids, index: 23040) Property("BGQ-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("BGQ-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("BGQ-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("BGQ-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i):
from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(8, 4, 4) Component("Titan-core") Program("Titan-core", "cmt-bone-be.txt") Property("Titan-core", "app.elementSize", lambda gid, cid, cids, index: 9) Property("Titan-core", "app.elementsPerProcess", lambda gid, cid, cids, index: 64) Property("Titan-core", "app.transferSizeX", lambda gid, cid, cids, index: 51840) Property("Titan-core", "app.transferSizeY", lambda gid, cid, cids, index: 51840) Property("Titan-core", "app.transferSizeZ", lambda gid, cid, cids, index: 51840) Property("Titan-core", "app.timesteps", lambda gid, cid, cids, index: 1) Property("Titan-core", "app.phyParam", lambda gid, cid, cids, index: 5) Property("Titan-core", "mpi.commRank", lambda gid, cid, cids, index: cid) Property("Titan-core", "mpi.commSize", lambda gid, cid, cids, index: cids) def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y")
# -- Should be specified in AppBEO. Not here. Have it here for now from cartesianrank import CartesianGrid global cartesianData cartesianData = CartesianGrid(4, 4, 2) #Should match with the system config Topology dimensions. Must talk about this def cartX(g, rank, c, i): return cartesianData.myCoordinates(rank, "X") def cartY(g, rank, c, i): return cartesianData.myCoordinates(rank, "Y") def cartZ(g, rank, c, i): return cartesianData.myCoordinates(rank, "Z") def cartXp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Xplus") def cartHasXp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Xplus") >= 0 def cartYp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Yplus") def cartHasYp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Yplus") >= 0 def cartZp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Zplus") def cartHasZp(g, rank, c, i): return cartesianData.neighbourRank(rank, "Zplus") >= 0 def cartXm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Xminus") def cartHasXm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Xminus") >= 0 def cartYm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Yminus") def cartHasYm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Yminus") >= 0 def cartZm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Zminus") def cartHasZm(g, rank, c, i): return cartesianData.neighbourRank(rank, "Zminus") >= 0 # component config name = sys.argv.pop() # Make a new component and give it a program. Component( name ) # Assign software properties. -- Should be specified in AppBEO. Not here. Have it here for now