main Class Reference

List of all members.

Public Member Functions

 main (CkArgMsg *msg)

Detailed Description

Definition at line 116 of file main.C.


Constructor & Destructor Documentation

main::main ( CkArgMsg *  msg  )  [inline]

Definition at line 119 of file main.C.

References endi(), iINFO(), iout, iWARN(), memusage(), memusage_MB(), namd_build_date, namd_build_machine, namd_build_user, NAMD_die(), and tbsoft_sendusage().

00120   {
00121 
00122     // print banner
00123     iout << iINFO << "NAMD " << NAMD_VERSION << " for " << NAMD_PLATFORM
00124          << "\n"
00125 #ifdef MEM_OPT_VERSION
00126          << iWARN << "\n"
00127          << iWARN << "       ***  EXPERIMENTAL MEMORY OPTIMIZED VERSION  ***\n"
00128          << iWARN << "\n"
00129 #endif
00130 #if 0
00131          << iWARN << "\n"
00132          << iWARN << "          ***  UNRELEASED EXPERIMENTAL VERSION  ***\n"
00133          << iWARN << "\n"
00134 #endif
00135 #ifdef SPEC_DISABLED_VERSION
00136 
00137          << iINFO << "\n"
00138          << iINFO << "NAMD is a parallel, object-oriented molecular dynamics\n"
00139          << iINFO << "code designed for high-performance simulation of large\n"
00140          << iINFO << "biomolecular systems.  NAMD is distributed free of\n"
00141          << iINFO << "charge and includes source code.  For more information\n" 
00142          << iINFO << "please visit http://www.ks.uiuc.edu/Research/namd/\n"
00143          << iINFO << "\n"
00144          << iINFO << "*********************************************************\n"
00145          << iINFO << "This version of NAMD may be distributed only as a part of\n"
00146          << iINFO << "the SPEC Workstation Benchmark and all other distribution\n"
00147          << iINFO << "is prohibited.  Any use of this software is bound by\n"
00148          << iINFO << "the terms of the NAMD License, which is available at\n"
00149          << iINFO << "http://www.ks.uiuc.edu/Research/namd/license.html\n"
00150          << iINFO << "The NAMD development team will not provide support for\n"
00151          << iINFO << "any version of NAMD unless you have first registered\n"
00152          << iINFO << "and downloaded the latest version of NAMD available at\n"
00153          << iINFO << "http://www.ks.uiuc.edu/Research/namd/\n"
00154          << iINFO << "*********************************************************\n"
00155 #else
00156          << iINFO << "\n"
00157          << iINFO << "Please visit http://www.ks.uiuc.edu/Research/namd/\n"
00158          << iINFO << "for updates, documentation, and support information.\n"
00159 #endif
00160 << iINFO << "\n"
00161 << iINFO << "Please cite Phillips et al., J. Chem. Phys. 153:044130 (2020) "
00162             "doi:10.1063/5.0014475\n"
00163 << iINFO << "in all publications reporting results obtained with NAMD.\n"
00164 << iINFO << "\n"
00165          << endi;
00166 
00167     char charm_version[64];
00168     sprintf(charm_version,"%d",CHARM_VERSION);
00169 
00170 #if CHARM_VERSION < 60500
00171 #error "Charm++ 6.5.1 or later is required to build NAMD"
00172 #endif
00173 
00174     iout << iINFO << "Based on Charm++/Converse " << charm_version
00175          << " for " << CMK_MACHINE_NAME << "\n" << endi;
00176 
00177     iout << iINFO << "Built " << namd_build_date << " by "
00178          << namd_build_user << " on " << namd_build_machine << "\n"
00179          << endi;
00180 #ifndef NO_SOCKET
00181     char numcpus[512];
00182     sprintf(numcpus,"%d",CkNumPes());
00183     tbsoft_sendusage("NAMD",NAMD_VERSION,NAMD_PLATFORM,numcpus,"");
00184 #endif
00185 
00186 #if CMK_BLUEGENE_CHARM
00187     iout << iINFO << "Running on BigSim using " << CmiNumPes() << " real processors.\n" << endi;
00188 #endif
00189     iout << iINFO << "Running on " << CkNumPes() << " processors, "
00190          << CmiNumNodes() << " nodes, "
00191          << CmiNumPhysicalNodes() << " physical nodes.\n" << endi;
00192     iout << iINFO << "CPU topology information " << (CmiCpuTopologyEnabled()?"available":"unavailable") << ".\n" << endi;
00193     iout << iINFO << "Charm++/Converse parallel runtime startup completed at "
00194          << CmiWallTimer() << " s\n"<< endi;
00195     const char* memsource;
00196     memusage(&memsource);
00197     iout << iINFO << memusage_MB() << " MB of memory in use"
00198          << " based on " << memsource << "\n";
00199 
00200 #if CMK_SMP
00201     if ( CmiNumNodes() > 1 && CkNumPes() == CmiNumNodes() ) {
00202       NAMD_die("SMP build launched as multiple single-thread processes.  Use ++ppn to set number of worker threads per process to match available cores, reserving one core per process for communication thread.");
00203     }
00204 #endif
00205   }


The documentation for this class was generated from the following file:

Generated on 12 Aug 2020 for NAMD by  doxygen 1.6.1