إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تقدم هذه المقالة إرشادات لإنشاء parallelcp البرنامج النصي واستخدامه لنقل البيانات إلى حاوية تخزين Blob لاستخدامها مع Azure HPC Cache.
لمعرفة المزيد حول نقل البيانات إلى تخزين Blob ل Azure HPC Cache، اقرأ نقل البيانات إلى تخزين Azure Blob.
إنشاء البرنامج النصي parallelcp
سيقوم البرنامج النصي أدناه بإضافة الملف القابل parallelcpللتنفيذ . (تم تصميم هذا البرنامج النصي ل Ubuntu؛ إذا كنت تستخدم توزيعا آخر، يجب تثبيته parallel بشكل منفصل.)
sudo touch /usr/bin/parallelcp && sudo chmod 755 /usr/bin/parallelcp && sudo sh -c "/bin/cat >/usr/bin/parallelcp" <<EOM
#!/bin/bash
display_usage() {
echo -e "\nUsage: \$0 SOURCE_DIR DEST_DIR\n"
}
if [ \$# -le 1 ] ; then
display_usage
exit 1
fi
if [[ ( \$# == "--help") || \$# == "-h" ]] ; then
display_usage
exit 0
fi
SOURCE_DIR="\$1"
DEST_DIR="\$2"
if [ ! -d "\$SOURCE_DIR" ] ; then
echo "Source directory \$SOURCE_DIR does not exist, or is not a directory"
display_usage
exit 2
fi
if [ ! -d "\$DEST_DIR" ] && ! mkdir -p \$DEST_DIR ; then
echo "Destination directory \$DEST_DIR does not exist, or is not a directory"
display_usage
exit 2
fi
if [ ! -w "\$DEST_DIR" ] ; then
echo "Destination directory \$DEST_DIR is not writeable, or is not a directory"
display_usage
exit 3
fi
if ! which parallel > /dev/null ; then
sudo apt-get update && sudo apt install -y parallel
fi
DIRJOBS=225
JOBS=225
find \$SOURCE_DIR -mindepth 1 -type d -print0 | sed -z "s/\$SOURCE_DIR\///" | parallel --will-cite -j\$DIRJOBS -0 "mkdir -p \$DEST_DIR/{}"
find \$SOURCE_DIR -mindepth 1 ! -type d -print0 | sed -z "s/\$SOURCE_DIR\///" | parallel --will-cite -j\$JOBS -0 "cp -P \$SOURCE_DIR/{} \$DEST_DIR/{}"
EOM
مثال النسخ المتوازي
يستخدم هذا المثال البرنامج النصي للنسخ المتوازي للتحويل البرمجي glibc باستخدام الملفات المصدر في Azure HPC Cache.
يتم تخزين الملفات المصدر مؤقتا في نقطة تحميل Azure HPC Cache، ويتم تخزين ملفات الكائنات على محرك الأقراص الثابت المحلي.
يستخدم هذا المثال البرنامج النصي للنسخ المتوازي مع الخيار -j و make للحصول على التوازي.
sudo apt-get update
sudo apt install -y gcc bison gcc binutils make parallel
cd
wget https://mirrors.kernel.org/gnu/libc/glibc-2.27.tar.bz2
tar jxf glibc-2.27.tar.bz2
ln -s /nfs/cache1 hpccache
time parallelcp glibc-2.27 avere/glibc-2.27
cd
mkdir obj
mkdir usr
cd obj
/home/azureuser/avere/glibc-2.27/configure --prefix=/home/azureuser/usr
time make -j