Skip to content

[NAMD] [package list]

NAMD/3.0-cpeGNU-24.03-rocm-gpu-resident (NAMD-3.0-cpeGNU-24.03-rocm-gpu-resident.eb)

Install with the EasyBuild-user module:

eb NAMD-3.0-cpeGNU-24.03-rocm-gpu-resident.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider NAMD/3.0-cpeGNU-24.03-rocm-gpu-resident.

EasyConfig:

# Contributed by Guilherme Peretti Pezzi, Luca Marsella and Christopher Bignamini (CSCS)
# Adapted by Kurt Lust (kurt.lust@uantwerpen.be) for the LUMI consortium
# Adapted by Pierre Beaujean (pierre.beaujean@unamur.be) for 22.08

easyblock = 'ConfigureMake'

local_Charmpp_version = '8.0.0'
local_Tcl_verion      = '8.6.13'

name =          'NAMD'
version =       '3.0'
versionsuffix = '-rocm-gpu-resident'

homepage = 'http://www.ks.uiuc.edu/Research/namd/'

whatis = [
    "Description: NAMD is a parallel molecular dynamics code designed for "
    "high-performance simulation of large biomolecular systems."
]

description = """
NAMD, recipient of a 2002 Gordon Bell Award and a 2012 Sidney Fernbach Award,
is a parallel molecular dynamics code designed for high-performance simulation
of large biomolecular systems. Based on Charm++ parallel objects, NAMD scales
to hundreds of cores for typical simulations and beyond 500,000 cores for the
largest simulations. NAMD uses the popular molecular graphics program VMD for
simulation setup and trajectory analysis, but is also file-compatible with
AMBER, CHARMM, and X-PLOR.

This version of NAMD is compiled with MPI as the transport.

Please check the NAMD license at https://www.ks.uiuc.edu/Research/namd/license.html
before installing or using this software. In particular, this software is only free
for non-commercial research and teaching. All commercial use requires a commercial
license. Also, when installing this as part of a project, all users should explictly
register on the NAMD web site (e.g., by trying to download the sources from
https://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=NAMD).

Please also note article 6 of the LICENSE:

    The user agrees that any reports or published results obtained with
    the Software will acknowledge its use by the appropriate citation as
    follows:

    "NAMD was developed by the Theoretical and Computational Biophysics Group in
     the Beckman Institute for Advanced Science and Technology at the University
     of Illinois at Urbana-Champaign."

    Any published work which utilizes NAMD shall include the following reference:

    "James C. Phillips, David J. Hardy, Julio D. C. Maia, John E. Stone,
     Joao V. Ribeiro, Rafael C. Bernardi, Ronak Buch, Giacomo Fiorin,
     Jerome Henin, Wei Jiang, Ryan McGreevy, Marcelo C. R. Melo,
     Brian K. Radak, Robert D. Skeel, Abhishek Singharoy, Yi Wang, Benoit Roux,
     Aleksei Aksimentiev, Zaida Luthey-Schulten, Laxmikant V. Kale,
     Klaus Schulten, Christophe Chipot, and Emad Tajkhorshid.
     Scalable molecular dynamics on CPU and GPU architectures with NAMD.
     Journal of Chemical Physics, 153:044130, 2020. doi:10.1063/5.0014475"

    Electronic documents will include a direct link to the official NAMD page
    at http://www.ks.uiuc.edu/Research/namd/
"""

docurls = [
    'NAMD %(version)s User Guide: http://www.ks.uiuc.edu/Research/namd/%(version)s/ug/',
    'NAMD Wiki: http://www.ks.uiuc.edu/Research/namd/wiki/',
    'NAMD license: $EBROOTNAMD/license.txt'
]

upstream_contacts = [
    'NAMD Mailing List/forum: http://www.ks.uiuc.edu/Research/namd/mailing_list/',
    'NAMD bug report instructions: http://www.ks.uiuc.edu/Research/namd/bugreport.html',
]

docpaths = [ 'notes.txt' ]

toolchain = {'name': 'cpeGNU', 'version': '24.03'}
toolchainopts = {'dynamic': False}

sources = ['NAMD_%(version)s_Source.tar.gz']
checksums = ['301c64f0f1db860f7336efdb26223ccf66b5ab42bfc9141df8d81ec1e20bf472']

builddependencies = [
    ('buildtools',         '%(toolchain_version)s', '', True),
    ('craype-network-none', EXTERNAL_MODULE),
    ('cray-fftw',           EXTERNAL_MODULE),
    ('Tcl',                 local_Tcl_verion),
]

dependencies = [
    ('rocm',    EXTERNAL_MODULE),
    ('Charm++', local_Charmpp_version, '-multicore'),
]

local_namd_arch = 'Linux-x86_64-cray-gnu'

configure_without_installdir = True
configure_cmd = './config ' + local_namd_arch

preconfigopts = ' ; '.join([
    'cp arch/Linux-x86_64-g++.arch arch/' + local_namd_arch + '.arch',
    'sed -i "s/gcc/cc/" arch/' + local_namd_arch + '.arch',
    'sed -i "s/g++/CC/" arch/' + local_namd_arch + '.arch',
]) + ' && '

configopts = ' '.join([
    '--charm-arch $EBTYPECHARMPLUSPLUS',
    '--charm-base $EBROOTCHARMPLUSPLUS',
    '--with-fftw3',
    '--fftw-prefix $FFTW_ROOT',
    '--with-single-node-hip',
    '--with-hip',
    '--rocm-prefix $ROCM_PATH',
])

prebuildopts = 'cd ' + local_namd_arch + ' ; '
preinstallopts = prebuildopts

build_cmd_targets = 'ROCM_DIR=$ROCM_PATH HIP_PLATFORM=amd'

install_cmd = ' ; '.join([
    'mkdir -p %(installdir)s/bin',
    'cp namd3 psfgen sortreplicas flipbinpdb flipdcd %(installdir)s/bin'
])

sanity_check_paths = {
    'files': ['bin/namd3'],
    'dirs':  [],
}

moduleclass = 'chem'

[NAMD] [package list]