Skip to content

Update gdma to v2.3; convert to runtime - #2968

Merged
loriab merged 4 commits into
psi4:masterfrom
loriab:pygdma
Aug 11, 2023
Merged

Update gdma to v2.3; convert to runtime#2968
loriab merged 4 commits into
psi4:masterfrom
loriab:pygdma

Conversation

@loriab

@loriab loriab commented May 24, 2023

Copy link
Copy Markdown
Member

Description

User API & Changelog headlines

  • gdma is bumped from upstream v2.2.06 to v2.3.3 (can now use h-functions)
  • gdma is now selectable at runtime, not just compile-time. use conda install pygdma -c conda-forge (presently in staged-recipes adding gdma conda-forge/staged-recipes#22882 )

Dev notes & details

  • A perhaps obscure point is that psi hasn't been using exactly upstream GDMA, which is a Fortran executable. Instead, Andy Simmonett did lots of I/O conversion and turned it into a library and bound some functions to C so psi could extract results w/o parsing. That's great, but it's meant we've been fixed at upstream v2.2.06.
  • I was startled to realize gdma is GPL. For background, roughly speaking, GPL probably does adhere to psi4 if libgdma statically linked, might adhere if dynamically linked (FSF thinks yes; everyone else thinks no; result is that any GPL makes ppl nervous), doesn't adhere if dlopen'ed or runtime optional. Conda-package-wise, we've always dynamically linked to libgdma, and scouring my memory, there was a plan to have an alternate gdma- and chemps2-free conda build of psi4 to remove doubt; that never happened.
  • To get past these problems and get a c-f package going, I
  • need to add comment notation so the driver qcvars are associated with gdma
  • UNRELATED: fix mrcc addon so that can pass it FNO orbitals again.

Checklist

Status

  • Ready for review
  • Ready for merge

@loriab loriab added build external-interface For issues about interfaces with external programs: ADCC, CheMPS2, GDMA, MRCC... labels May 24, 2023
@loriab loriab added this to the Psi4 1.9 milestone May 24, 2023

@JonathonMisiewicz JonathonMisiewicz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we have a test on the distributed multipoles?

@loriab

loriab commented Jul 10, 2023

Copy link
Copy Markdown
Member Author

Do we have a test on the distributed multipoles?

Just one: https://github.com/psi4/psi4/blob/master/tests/gdma/gdma1/input.dat that's mirrored at https://github.com/psi4/psi4/blob/master/tests/pytests/test_addons.py#L14

Comment thread psi4/driver/driver.py Outdated
@jturney
jturney added this pull request to the merge queue Aug 10, 2023
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Aug 10, 2023
@loriab
loriab added this pull request to the merge queue Aug 11, 2023
Merged via the queue into psi4:master with commit b0e621f Aug 11, 2023
@loriab
loriab deleted the pygdma branch August 11, 2023 04:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build external-interface For issues about interfaces with external programs: ADCC, CheMPS2, GDMA, MRCC...

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants