NWChem Planning

NWChem Planning

NWChem Future Strategy Planning

Below are the pictures of the planning board of our first meeting on May 2nd.

Activities that were going to be pursued:

  • Edo: Internode communication. I.e., what does it take to make NWChem ARMCI free (wrappers to MPI)
  • Marat and Eric: Starting NWChem as a C++ program (nwchem.cpp). Does this work?
  • Eric and Bert: Intranode communication. I.e., possibilities and needs with homogeneous and heterogeneous systems (CUDA, OpenCL, OpenACC, OpenMP, TBB, Threads)
  • Eric and Marat: Cloud computing. I.e., possibilities and needs with latency tolerant algorithms, zeroMQ
  • Niri and Marat: Looking at APIs, what's needed and what needs to happen
  • Huub and Ken: Researching code documentation using DOXYGEN
  • Huub and Bert: New hardware including iPad, ARM, mixed precision, playing with clock cycles (last two are more energy optimization)
  • Eric and Niri: What needs to be done to advance solid state

If there are additional activities not yet discussed but on the board that you want to add to the list, go ahead!

Infrastructure 1 Infrastructure 2 Infrastructure 3

Infrastructure 4 Infrastructure 5 Infrastructure 6

Infrastructure 7 Infrastructure 8

Solvers 1 Solvers 2

Reduced Scaling Solid State

Excited States Rare Events

Strong Correlation 1 Strong Correlation 2

Embedding 1 Embedding 2

Outreach Workflow

NWChem ARMCI free

To enhance the portability of the code NWChem may need to become ARMCI free. This would require something to be done about the Global Array library. A simple approach would be to re-implement the Global Array interface on top of MPI in some way. Crucial for such an attempt is knowing how many routines need to be re-implemented. The following spreadsheet contains a list of Global Array routines that NWChem uses.

Doxygen

The suitability of Doxygen for documenting the NWChem source code has been considered. Doxygen is a documentation tool based on ideas similar to JavaDoc. It parses the source code of a project to extract information like module names, function names, function arguments, call trees and caller trees. In addition the tool recognizes and extracts specially formatted comments. The parsing capabilities make this tool more versatile than Robodoc and Ricky Kendall's SeeTeX. The advantage being that you get something out of it even if you do not do anything to the source code (without annotations SeeTeX or Robodoc do not give you anything).

In the process of evaluating Doxygen the directory NWChem/contrib/doxygen was created. This directory contains 3 Doxygen configuration files and a run script. The different configuration files specify different levels of documentation (text only, text and call graphs, or manpages) and the appropriate configuration file can be selected using command line flags when invoking the run script. The configuration files are set up so that Doxygen can be used in any subdirectory of the source tree.

The experience with using Doxygen is mixed. The overall idea is very powerful and useful information can extracted using the tool. However, the tool is occasionally temperamental. It is not always clear how something should be done and some advertised features do not work as described in the manual. Hence, considerable experimentation is needed to establish what works and how, and which features are better ignored. Finally, the resources consumed by Doxygen can be non trivial if the tool is run against the whole NWChem source code for the most extensive form of documentation. As an upper limit Doxygen can take over an hour to run and produce around 4 GB of data. For text only documentation the resource requirements are much more modest.

量子化学计算在Python中有几个常用的开源框架,其中最著名的是基于Python的化学模拟框架(PySCF)。PySCF是一个简单、轻量且高效的平台,用于量子化学计算和方法开发。它支持使用平均场和后平均场方法模拟分子、晶体和自定义哈密顿量的属性。PySCF的核心库使用Python实现,而计算关键部分则使用C实现和优化,以提高计算性能。此外,PySCF还支持丰富的扩展模块生态系统,可以满足不同的计算需求。\[1\] 另外,还有一个常用的计算化学软件是NWChem,它是一个运行在高性能并行超级计算机和通常工作站集群上的计算化学软件。NWChem可以在大多数计算平台上使用,它使用标准量子力学描述电子波函或密度,可以计算分子和周期性系统的特性,还可以进行经典分子动力学和自由能模拟。\[2\] 这些量子化学计算框架提供了丰富的功能和灵活性,可以用于研究和预测分子的性质和行为。它们在科学研究和工程应用中发挥着重要的作用,并为研究人员提供了强大的工具来解决复杂的化学问题。 #### 引用[.reference_title] - *1* [PySCF :基于Python的化学模拟框架](https://blog.csdn.net/u012325865/article/details/118694036)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [量子化学](https://blog.csdn.net/weixin_39946313/article/details/118922212)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值