# hlajungo - HiPac 3 Release Note and informations [HiPac 3 Release Note and informations](https://hackmd.io/2deAUP8zQ-u1giVioCOdaQ) mail `hlaconnect91@gmail.com` ## Toturial [passwordless ssh](/IcmO9G86TaOG3cLXogdtlg) [Set NFS](/vJkijTgZRDepNAxaefxhWw) [Set NIS](/QtmjczrDR-qbGUeo5VNC4w) [Install Mellanox OFED Driver-24.04-0.7.0.0](/XV0ElHwhRTSpor-5CjzV9A) [Install any version of NVidia driver and cuda on ubuntu](/-jpp8JUHSMC48ATFkn1vgQ) [Sending mail on ubuntu-22.04](/TKOwtY0FTRO4ogB6A3L60g) [Crontab](/cY8RX5FqTP28QaRZYGX64A) [Control gcc & g++ version](/uD3UhFnDSD6CrPm744F9gA) [Install icc-2021.4.0 ](/JZ2F8BTYRu6V0zYJ3_Fs0A) [Install mkl](/n5RgUwJQSly83KjnEibhbw) [Compile NAMD-2.14](/DJiz9UAJTrO6dsjyPI0cSw) [NAMD-2.14 parameter](/UJWIJB5-RFCcEkt-zrP-Zw) <!-- Using Conda to manage CUDA is very recommend. [Conda](/qVODoabFTCa1Z-eeqGsECw) --> [Install basic](/xD-E0c5AQtStPWFtiND3eA) [Some useful terminal commands](/OfgAxYMCSIGXOnZCTemqlw) [Mount disk at boot](/6TsN2arQQiCZGEoTiFyAMQ) ## Resource Collected ### NAMD2 #### Data To run NAMD2, you need pdb, psf, force field(CHARMM or XPLOR) and a configure file [NAMD Sample](http://www.ks.uiuc.edu/Research/namd/utilities/) [Protein Data Bank Japan](https://hackmd.io/SBx54czZSqq7Zl17JDvr_g) [Protein Data Bank RCSB](https://www.rcsb.org/) [CHARMM forcefield](http://mackerell.umaryland.edu/charmm_ff.shtml#charmm) #### Build NOTE: For building or config ,best Resource is `./build --help` or `./config`, it will give you all the information you need. - [NAMD 2.14 Release Note (Compile NAMD)](http://www.ks.uiuc.edu/Research/namd/2.14/notes.html) ### Video Toturial [Youtube VMD toturial](https://www.youtube.com/watch?v=mi6fZLrcZM8&list=PLhYF9QNr23IaG-aFub24_T8XnIbJb7fNU&index=2) [NVidia Video](https://info.nvidia.com/NALA_DEV_WBN_201605_NAMD_Webinar_Conf_Page_On_Demand.html) ### Offical Documentation #### Mellanox OFED [Mellanox OFED User Guide 24.04-0.7.0.0 Ubuntu 22.04 x86_64](https://docs.nvidia.com/networking/display/mlnxofedv24040700/user+manual) [Mellanox OFED release note 24.04-0.7.0.0 Ubuntu 22.04 x86_64](https://docs.nvidia.com/networking/display/mlnxofedv24040700/release+notes) #### Charm++ [Charm++ GitHub page](https://github.com/UIUC-PPL/charm) [Charm++ Official](https://charm.cs.illinois.edu/software) [Charm++ User Guide](https://charm.readthedocs.io/en/latest/charm++/manual.html) ### Article [NVidia NAMD2 Performance blog](https://developer.nvidia.com/blog/delivering-up-to-9x-throughput-with-namd-v3-and-a100-gpu/) [NVidia NAMD Toturial](https://www.nvidia.com/es-la/data-center/gpu-accelerated-applications/namd/) <!-- ## Script You need a script to move generated binary A script that take arguments to seting --binary-prefix /path/to/binary/ \ --binary binary \ --cpunum 10 \ --gpunum 7 --other-argument "+cpuaff..." [argument ], .namd file, and auto write result to a file ### Test Namd ``` #!/bin/bash ####################### # sleep between each run ####################### sleep_between_run=20 #Data testname_dir="/home/hlajungo/Downloads/biomedcases/case_01/inData" #Configure file namd2_configure_file="/home/hlajungo/Downloads/biomedcases/case_01/cpu/md.namd" #binary dir namd2_bin_dir="/media/hlajungo/新增磁碟區/linux/namd-2.14/namd-2.14_bin" namd_log_file="md.out" data_file_nsday="namd2_data_nsday" # Create necessary directories mkdir -p "./output" # Run namd2 for each subdirectory subdirs=("$namd2_bin_dir"/*) num_subdirs=${#subdirs[@]} subdir="${subdirs[0]}" CHARMRUN="$subdir/charmrun" NAMD2="$subdir/namd2" CMD_OPTIONS="+p30 +setcpuaffinity +idlepoll +devices 0" namd_command="$CHARMRUN $NAMD2 $CMD_OPTIONS $namd2_configure_file" eval "$namd_command" > /dev/null 2>&1 sleep $sleep_between_run for ((i=0; i<num_subdirs; i++)); do subdir="${subdirs[i]}" if [ -d "$subdir" ]; then CHARMRUN="$subdir/charmrun" NAMD2="$subdir/namd2" CMD_OPTIONS="+p14 +setcpuaffinity +idlepoll" #CMD_OPTIONS="$CMD_OPTIONS +devices 0" namd_command="$CHARMRUN $NAMD2 $CMD_OPTIONS $namd2_configure_file" #echo "$namd_command" eval "$namd_command" > "$namd_log_file" sum_ns_per_day=0 count=0 days_per_ns_list=$(grep "Benchmark" "$namd_log_file" | grep -oP '\d+(\.\d+)?(?= days/ns)') for days_per_ns in $days_per_ns_list; do ns_per_day=$(echo "scale=6; 1 / $days_per_ns" | bc) sum_ns_per_day=$(echo "$sum_ns_per_day + $ns_per_day" | bc) count=$((count + 1)) done subdir_noprefix="${subdir/#$namd2_bin_dir}" if (( count > 0 )); then avg_ns_per_day=$(echo "scale=6; $sum_ns_per_day / $count" | bc) echo "$avg_ns_per_day $subdir_noprefix" >> "$data_file_nsday" else echo "File $namd_log_file: no valid days/ns values found" fi if [ $i -ne $((num_subdirs - 1)) ]; then sleep $sleep_between_run fi fi done eval "$namd_command" > /dev/null 2>&1 sort -nr "$data_file_nsday" > "${data_file_nsday}_sorted" cat "$data_file_nsday" rm -rf "./output" rm "$data_file_nsday" rm "${data_file_nsday}_sorted" ``` -->