# 환경변수 CKPT, BB, PFS가 set되어 있는 경우
build/bin/drainer
# 그렇지 않은 경우
CKPT=<ckpt_path> BB=<bb_path> PFS=<pfs_path> build/bin/drainer
# drainer와 마찬가지로 환경변수 CKPT, BB, PFS가 설정되지 않았거나
# 변경하고 싶은 경우에만 CKPT, BB, PFS를 설정
LD_PRELOAD=build/lib/libckpt.so <command>
# Example
LD_PRELOAD=build/lib/libckpt.so mpirun --oversubscribe -np 8 ior -a POSIX -w -k -e -F -i1 -t 1m -b 1g -o $CKPT/result
-
FSYNC_LAZY_LEVEL={0, 1, 2, 3} (기본값: 0)
-
0: 변화 없음
-
1: fsync()가 호출되면 실제로는 fsync()를 바로 수행하지 않고 close() 시 수행함. 실제 fsync()를 수행할 때 drainer가 작업을 완료할 때까지 대기
-
2: fsync()가 호출되면 실제로는 fsync()를 바로 수행하지 않고 close() 시 수행함. 실제 fsync()를 수행할 때 drainer가 작업을 완료할 때까지 대기하지 않음
-
3: fsync()를 수행하지 않음
-
-
BATCH_SIZE=<num_bytes> (기본값: 0)
# Example
LD_PRELOAD=build/lib/libckpt.so FSYNC_LAZY_LEVEL=1 BATCH_SIZE=1048576 mpirun --oversubscribe -np 8 ior -a POSIX -w -k -e -F -i1 -t 1m -b 1g -o $CKPT/result