본문으로 건너뛰기
Version: Next 🚧

개발자 툴킷

완전한 클라이언트 패키지에는 MASS를 대상으로 애플리케이션을 빌드하고 클라이언트 호스트에서 스토리지 성능을 측정하는 데 필요한 구성 요소가 모두 포함되어 있습니다. 소스 체크아웃이나 별도 런타임 설치가 필요하지 않습니다.

경고

이 페이지는 완전한 클라이언트 패키지(모든 Ubuntu .deb과 EL9 .rpm)에 해당합니다. EL10 .rpmmass-ctl 바이너리만 포함하는 thin 클라이언트이므로, 아래의 런타임·예제·벤치마크가 설치되지 않습니다.

애플리케이션 빌드

mass라는 pkg-config 항목이 번들 클라이언트 런타임을 가리킵니다:

pkg-config --cflags --libs mass

이를 사용해 컴파일합니다:

gcc my_app.c $(pkg-config --cflags --libs mass) -o my_app

링커 플래그에 런타임 탐색 경로가 포함되므로, 생성된 바이너리는 LD_LIBRARY_PATH 설정 없이 번들 라이브러리를 찾습니다.

바로 빌드할 수 있는 C 예제(key-value, array)가 CMakeLists.txt와 README와 함께 /opt/boostx-sds/daos/example에 설치됩니다.

HDF5

HDF5 런타임과 커넥터는 /opt/boostx-sds/hdf5에 포함되어 있습니다. 병렬 HDF5 애플리케이션은 MPI 헤더가 필요합니다:

mpicc my_h5_app.c $(pkg-config --cflags --libs mass) -o my_h5_app

HDF5 I/O를 MASS로 보내려면 다음을 설정합니다:

export HDF5_VOL_CONNECTOR=daos

플러그인 경로는 패키지가 이미 구성해 둡니다.

정보

Mellanox OFED를 사용하는 호스트에서는 번들 데이터 도구가 호환되는 MPI를 자동으로 선택해 실행 시 비정상 종료를 방지합니다.

IOR 벤치마크

IOR 벤치마크가 /opt/boostx-sds/ior/bin/boostx-ior에 포함되며 패키지가 PATH에 추가하므로, 어떤 클라이언트 호스트에서든 바로 스토리지 성능을 측정할 수 있습니다.

# 먼저 볼륨을 마운트한 뒤 마운트 지점을 대상으로 실행합니다
boostx-ior -a POSIX -w -r -t 1m -b 1g -o /mnt/data/ior-test

대역폭 측정 전에는 환경을 최적화합니다:

eval $(mass-ctl env --bandwidth)

대용량 데이터 복사

mass-ctl dsync/opt/boostx-sds/mpifileutils/bin/boostx-dsync의 번들 MPI 병렬 데이터 무버를 사용합니다. 명령어를 참조하세요.

멀티 소켓 호스트

프로세서 소켓이 둘 이상인 클라이언트 호스트에서는 클라이언트가 자신의 프로세서에 물리적으로 가장 가까운 네트워크 카드를 자동으로 사용해 느린 소켓 간 트래픽을 피합니다. 네트워크 카드가 여러 개인 호스트에서는 스토리지 네트워크에 실제로 도달할 수 있는 카드를 선택하며, 도달 가능한 카드가 없으면 시도한 네트워크를 오류 메시지에 알려줍니다.