For the near term, offloading manual testing from Liang such that tests that are not in CI yet are still run to give some basic level of product confidence, while freeing up Liang to focus on the myriad tasks he has on his plate.
daos_test:
______________________________________________
Run Server, N nodes:
orterun -x DD_MASK --mca mtl ^psm2,ofi -N 1 --hostfile ~/hostlists/daos_server_hostlist --enable-recovery --report-uri ~/scripts/uri.txt daos_server -c 1 &
daos_test, 1 node:
orterun -x DD_MASK -np 1 --hostfile ~/hostlists/daos_client_hostlist --ompi-server file:~/scripts/uri.txt daos_test -mpcCiAeoRd
CLEAN EVERYTHING, KILL EVERYTHING
Relaunch server
Run rebuild tests, N nodes:
orterun -x DD_MASK -np 1 --hostfile ~/hostlists/daos_client_hostlist --ompi-server file:~/scripts/uri.txt daos_test -r
_______________________________________________
CLEAN EVERYTHING, KILL EVERYTHING
IOR:
_______________________________________________
Set up envirables:
export LD_LIBRARY_PATH=/home/sdwillso/daos_m/opt/ofi/lib/:/home/sdwillso/daos_m/opt/cart/lib/:/home/sdwillso/daos_m/install/lib/:$LD_LIBRARY_PATH
IOR, run server, N nodes:
orterun -x DD_MASK --mca mtl ^psm2,ofi -N 1 --hostfile ~/hostlists/daos_server_hostlist --enable-recovery --report-uri ~/scripts/uri.txt daos_server -c 1 &
Create Pool:
orterun -np 1 --ompi-server file:~/scripts/uri.txt dmg create --size=4G
Run IOR:
orterun -np 1 --mca mtl ^psm2,ofi --ompi-server file:~/scripts/uri.txt ior -v -i 5 -a DAOS -w -o `uuidgen` -b 10g -t 1m -O daospool=$POOL,daosrecordsize=1m,daosstripesize=1m,daosstripecount=1024,daosaios=16,daosobjectclass=LARGE,daosPoolSvc=0,daosepoch=1
_______________________________________________
CLEAN EVERYTHING, KILL EVERYTHING
daosbench:
_______________________________________________
Run server, N nodes:
orterun -x DD_MASK --mca mtl ^psm2,ofi -N 1 --hostfile ~/hostlists/daos_server_hostlist --enable-recovery --report-uri ~/scripts/uri.txt daos_server -c 1 &
Create Pool:
orterun -np 1 --ompi-server file:~/scripts/uri.txt dmg create --size=4G
Run daos_bench:
orterun -np 1 --mca mtl ^psm2,ofi --ompi-server file:~/scripts/uri.txt daosbench --test=kv-idx-update --testid=1 --svc=0 --dpool=$POOL --container=`uuidgen` --object-class=tiny --aios=32 --indexes=1000000
_______________________________________________
CLEAN EVERYTHING, KILL EVERYTHING
daos_perf:
_______________________________________________
Run server, N nodes:
orterun -x DD_MASK --mca mtl ^psm2,ofi -N 1 --hostfile ~/hostlists/daos_server_hostlist --enable-recovery --report-uri ~/scripts/uri.txt daos_server -c 1 &
Run daos_perf:
1K records:
CREDITS=1 ./daos_perf.sh daos 200 1000 1K
CREDITS=8 ./daos_perf.sh daos 200 1000 1K
4k records
CREDITS=1 ./daos_perf.sh daos 200 1000 4K
_______________________________________________
MPICH:
_______________________________________________
Install autotools latest versions (autoconf, automake, libtool) or use Mohamad's:
export LD_LIBRARY_PATH=/home/mschaara/install/autotools/lib:$LD_LIBRARY_PATH
export PATH=/home/mschaara/install/autotools/bin:$PATH
Setup envirables:
export DAOS_DIR=/home/sdwillso/daos_m/install/
export LD_LIBRARY_PATH=$DAOS_DIR/lib/:$DAOS_DIR/lib/daos_srv:$LD_LIBRARY_PATH
export PATH=$DAOS_DIR/bin:$PATH
export CPATH=$DAOS_DIR/include/:$CPATH
export C_INCLUDE_PATH=$DAOS_DIR/include:$C_INCLUDE_PATH
Get MPICH with DAOS ADIO branch:
git clone https://github.com/mchaarawi/mpich.git
cd mpich
git checkout daos_adio
git submodule init
git submodule update
./autogen.sh
mkdir build
cd build
../configure --prefix=/home/sdwillso/mpich/install/ --enable-fortran=all --enable-romio --enable-cxx --enable-g=all --enable-debuginfo --with-file-system=ufs+daos --with-daos=/home/sdwillso/daos_m/install/ --with-cart=/home/sdwillso/daos_m/opt/cart/
make -j8
make install
IMPORTANT NOTE: must keep strict separation between server and client here, ie don't do normal "run server as background process and then run client right after on same node"
Run server:
orterun --enable-recovery -np 1 --hostfile ~/hostlists/daos_server_hostlist --report-uri ~/uri.txt daos_io_server -a/home/sdwillso/tmp/
Set up client envirables:
export PATH=/home/mschaara/install/mpich/bin:$PATH
export LD_LIBRARY_PATH=/home/sdwillso/mpich/install/lib:$LD_LIBRARY_PATH
export DAOS_SINGLETON_CLI=1
export CRT_ATTACH_INFO_PATH=/home/sdwillso/tmp/
export FI_PSM2_DISCONNECT=1
export CRT_CTX_NUM=2
The last two are for PSM2, so you don’t need them if you are using sockets provider.
CRT_ATTACH_INFO_PATH should point to the same thing to what you pass the -a to for daos_server
ROMIO test suite:
DAOS server still running...on client:
cd mpich_directory/src/mpi/romio/test
make -j8
Create a pool with dmg. And set env variables (DAOS_POOL, DAOS_SVCL) to the pool uuid and svcl rank list accordingly.
On Boro I have a script that does that in /home/mschaara/create_pool.sh
Then run:
./run_daos_test daos:test_file
Note that the daos: prefix tells mpich to use the daos adio driver. If you don’t have that, it will use the regular posix driver, and you won’t be running with the DAOS driver.
_______________________________________________