Commit da0a3ba7 authored by Francois Tessier's avatar Francois Tessier
Browse files

Regression test on BG/Q. HACC-IO test cases fixed.

parent b9d583d0
include make.inc/Makefile.xc40 include make.inc/Makefile.bgq
all:libtapioca.a all:libtapioca.a
......
MPICXX = CC MPICXX = mpicxx
MPI_CFLAGS = -g -O3 -I$(HOME)/install/include/ -DXC40 -DDEBUG MPI_CFLAGS = -g -O3 -I$(HOME)/install_bgq/include/ -DBGQ #-DDEBUG
MPI_LDFLAGS = -L$(HOME)/install/lib/ -ltapioca -llustreapi MPI_LDFLAGS = -L$(HOME)/install_bgq/lib/ -ltapioca
all: miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO all: miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO
......
MPICXX = mpicxx
MPI_CFLAGS = -g -O3 -I$(HOME)/install_bgq/include/ -DBGQ #-DDEBUG
MPI_LDFLAGS = -L$(HOME)/install_bgq/lib/ -ltapioca
all: miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO
miniHACC-AoS:miniHACC-AoS.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
miniHACC-SoA:miniHACC-SoA.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
### MPI I/O
miniHACC-AoS-MPIIO:miniHACC-AoS-MPIIO.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
miniHACC-SoA-MPIIO:miniHACC-SoA-MPIIO.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
clean:
rm miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO *.o HACC.dat
MPICXX = CC
MPI_CFLAGS = -g -O3 -I$(HOME)/install/include/ -DXC40 -DDEBUG
MPI_LDFLAGS = -L$(HOME)/install/lib/ -ltapioca -llustreapi
all: miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO
miniHACC-AoS:miniHACC-AoS.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
miniHACC-SoA:miniHACC-SoA.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
### MPI I/O
miniHACC-AoS-MPIIO:miniHACC-AoS-MPIIO.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
miniHACC-SoA-MPIIO:miniHACC-SoA-MPIIO.cpp
$(MPICXX) $(MPI_CFLAGS) $? -o $@ $(MPI_LDFLAGS)
clean:
rm miniHACC-AoS miniHACC-SoA miniHACC-AoS-MPIIO miniHACC-SoA-MPIIO *.o HACC.dat
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
#include <assert.h> #include <assert.h>
#include <stdint.h> #include <stdint.h>
#include <mpi.h> #include <mpi.h>
#include <mpix.h>
#include "tapioca.hpp"
#define RED "\x1b[31m" #define RED "\x1b[31m"
#define GREEN "\x1b[32m" #define GREEN "\x1b[32m"
...@@ -12,7 +13,7 @@ ...@@ -12,7 +13,7 @@
int main (int argc, char * argv[]) int main (int argc, char * argv[])
{ {
int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank; int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, file_id;
int64_t num_particles = 25000; int64_t num_particles = 25000;
int64_t sub_particles, tot_particles, particle_size, file_size, tot_size; int64_t sub_particles, tot_particles, particle_size, file_size, tot_size;
int64_t scan_size = 0, offset; int64_t scan_size = 0, offset;
...@@ -34,7 +35,18 @@ int main (int argc, char * argv[]) ...@@ -34,7 +35,18 @@ int main (int argc, char * argv[])
MPI_Comm_size(sub_comm, &sub_numtasks); MPI_Comm_size(sub_comm, &sub_numtasks);
MPI_Comm_rank(sub_comm, &sub_myrank); MPI_Comm_rank(sub_comm, &sub_myrank);
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-AOS-%08d.dat", mycolor); file_id = 0;
if ( argv[1] != NULL )
file_id = atoi ( argv[1] );
#ifdef BGQ
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-SOA-%08d-%d.dat", mycolor, file_id);
#elif XC40
snprintf (output, 100, "/lus/theta-fs0/projects/Performance/ftessier/HACC/HACC-AOS-%08d-%d.dat", mycolor, file_id);
#else
snprintf (output, 100, "./HACC-SOA-%08d-%d.dat", mycolor, file_id);
#endif
/*****************/ /*****************/
/* WRITE */ /* WRITE */
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
int main (int argc, char * argv[]) int main (int argc, char * argv[])
{ {
int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, i; int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, i, file_id;
int64_t num_particles = 25000; int64_t num_particles = 25000;
int64_t sub_particles, tot_particles, particle_size, file_size, tot_size; int64_t sub_particles, tot_particles, particle_size, file_size, tot_size;
int64_t scan_size = 0, offset, hdr = 0; int64_t scan_size = 0, offset, hdr = 0;
...@@ -38,8 +38,18 @@ int main (int argc, char * argv[]) ...@@ -38,8 +38,18 @@ int main (int argc, char * argv[])
MPI_Comm_size(sub_comm, &sub_numtasks); MPI_Comm_size(sub_comm, &sub_numtasks);
MPI_Comm_rank(sub_comm, &sub_myrank); MPI_Comm_rank(sub_comm, &sub_myrank);
//snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-AOS-%08d-%d.dat", mycolor, atoi(argv[1])); file_id = 0;
snprintf (output, 100, "/lus/theta-fs0/projects/Performance/ftessier/HACC/HACC-AOS-%08d-%d.dat", mycolor, atoi(argv[1])); if ( argv[1] != NULL )
file_id = atoi ( argv[1] );
#ifdef BGQ
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-SOA-%08d-%d.dat", mycolor, file_id);
#elif XC40
snprintf (output, 100, "/lus/theta-fs0/projects/Performance/ftessier/HACC/HACC-AOS-%08d-%d.dat", mycolor, file_id);
#else
snprintf (output, 100, "./HACC-SOA-%08d-%d.dat", mycolor, file_id);
#endif
/*****************/ /*****************/
/* WRITE */ /* WRITE */
......
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
#include <assert.h> #include <assert.h>
#include <stdint.h> #include <stdint.h>
#include <mpi.h> #include <mpi.h>
#include <mpix.h>
#include "tapioca.hpp"
#define RED "\x1b[31m" #define RED "\x1b[31m"
#define GREEN "\x1b[32m" #define GREEN "\x1b[32m"
...@@ -12,7 +13,7 @@ ...@@ -12,7 +13,7 @@
int main (int argc, char * argv[]) int main (int argc, char * argv[])
{ {
int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank; int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, file_id;
int64_t num_particles = 25000; int64_t num_particles = 25000;
int64_t sub_particles, tot_particles, particle_size, file_size, tot_size; int64_t sub_particles, tot_particles, particle_size, file_size, tot_size;
int64_t scan_size = 0, offset; int64_t scan_size = 0, offset;
...@@ -34,7 +35,18 @@ int main (int argc, char * argv[]) ...@@ -34,7 +35,18 @@ int main (int argc, char * argv[])
MPI_Comm_size(sub_comm, &sub_numtasks); MPI_Comm_size(sub_comm, &sub_numtasks);
MPI_Comm_rank(sub_comm, &sub_myrank); MPI_Comm_rank(sub_comm, &sub_myrank);
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-AOS-%08d.dat", mycolor); file_id = 0;
if ( argv[1] != NULL )
file_id = atoi ( argv[1] );
#ifdef BGQ
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-SOA-%08d-%d.dat", mycolor, file_id);
#elif XC40
snprintf (output, 100, "/lus/theta-fs0/projects/Performance/ftessier/HACC/HACC-AOS-%08d-%d.dat", mycolor, file_id);
#else
snprintf (output, 100, "./HACC-SOA-%08d-%d.dat", mycolor, file_id);
#endif
/*****************/ /*****************/
/* WRITE */ /* WRITE */
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
int main (int argc, char * argv[]) int main (int argc, char * argv[])
{ {
int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, i; int world_numtasks, world_myrank, mycolor, mykey, sub_numtasks, sub_myrank, i, file_id;
int64_t num_particles = atoi(argv[2]); int64_t num_particles = 25000;
int64_t sub_particles, tot_particles, particle_size, file_size, tot_size; int64_t sub_particles, tot_particles, particle_size, file_size, tot_size;
int64_t scan_size = 0, offset, hdr = 0; int64_t scan_size = 0, offset, hdr = 0;
double start_time, end_time, tot_time, max_time; double start_time, end_time, tot_time, max_time;
...@@ -39,7 +39,18 @@ int main (int argc, char * argv[]) ...@@ -39,7 +39,18 @@ int main (int argc, char * argv[])
MPI_Comm_size(sub_comm, &sub_numtasks); MPI_Comm_size(sub_comm, &sub_numtasks);
MPI_Comm_rank(sub_comm, &sub_myrank); MPI_Comm_rank(sub_comm, &sub_myrank);
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-SOA-%08d-%d.dat", mycolor, atoi(argv[1])); file_id = 0;
if ( argv[1] != NULL )
file_id = atoi ( argv[1] );
#ifdef BGQ
snprintf (output, 100, "/projects/visualization/ftessier/debug/HACC-SOA-%08d-%d.dat", mycolor, file_id);
#elif XC40
snprintf (output, 100, "/lus/theta-fs0/projects/Performance/ftessier/HACC/HACC-AOS-%08d-%d.dat", mycolor, file_id);
#else
snprintf (output, 100, "./HACC-SOA-%08d-%d.dat", mycolor, file_id);
#endif
/*****************/ /*****************/
/* WRITE */ /* WRITE */
......
#!/bin/bash #!/bin/bash
VARS="PAMID_VERBOSE=1 BG_SHAREDMEMSIZE=64 PAMID_COLLECTIVES=1 BGLOCKLESSMPIO_F_TYPE=0x47504653 PAMID_COLLECTIVES_MEMORY_OPTIMIZED=1" VARS="PAMID_VERBOSE=1 BG_SHAREDMEMSIZE=64 PAMID_COLLECTIVES=1 BGLOCKLESSMPIO_F_TYPE=0x47504653 PAMID_COLLECTIVES_MEMORY_OPTIMIZED=1"
NODES=512 NODES=256
PPN=16 PPN=16
NPROCS=$((NODES*PPN)) NPROCS=$((NODES*PPN))
TARGET="/projects/visualization/ftessier/debug" TARGET="/projects/visualization/ftessier/debug"
...@@ -29,7 +29,7 @@ function updateSettings() ...@@ -29,7 +29,7 @@ function updateSettings()
######################### #########################
rm $TARGET/* rm $TARGET/*
updateSettings updateSettings
runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-AoS-MPIIO runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-AoS-MPIIO 42
sleep 4 sleep 4
let j=0 let j=0
for i in $TARGET/* for i in $TARGET/*
...@@ -41,7 +41,7 @@ done ...@@ -41,7 +41,7 @@ done
rm $TARGET/* rm $TARGET/*
updateSettings updateSettings
runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-AoS runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-AoS 42
sleep 4 sleep 4
let j=0 let j=0
for i in $TARGET/* for i in $TARGET/*
...@@ -61,7 +61,7 @@ done ...@@ -61,7 +61,7 @@ done
######################### #########################
rm $TARGET/* rm $TARGET/*
updateSettings updateSettings
runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-SoA-MPIIO runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-SoA-MPIIO 42
sleep 4 sleep 4
let j=0 let j=0
for i in $TARGET/* for i in $TARGET/*
...@@ -73,7 +73,7 @@ done ...@@ -73,7 +73,7 @@ done
rm $TARGET/* rm $TARGET/*
updateSettings updateSettings
runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-SoA runjob --block $COBALT_PARTNAME --envs $VARS $SETTINGS -p $PPN --np $NPROCS : ./miniHACC-SoA 42
sleep 4 sleep 4
let j=0 let j=0
for i in $TARGET/* for i in $TARGET/*
......
...@@ -51,6 +51,11 @@ public: ...@@ -51,6 +51,11 @@ public:
} }
int IONodesPerFile ( char* filename, int *nodesList ) {
return 1;
}
int IONodeId () { int IONodeId () {
return MPIX_IO_node_id (); return MPIX_IO_node_id ();
} }
......
...@@ -9,6 +9,7 @@ class iTopology { ...@@ -9,6 +9,7 @@ class iTopology {
/**********************/ /**********************/
/* |-- Nodes */ /* |-- Nodes */
/**********************/ /**********************/
virtual int IONodesPerFile ( char* filename, int *nodesList ) = 0;
virtual int IONodeId () = 0; virtual int IONodeId () = 0;
virtual int BridgeNodeId () = 0; virtual int BridgeNodeId () = 0;
//virtual int ComputeNodeId () = 0; //virtual int ComputeNodeId () = 0;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment