Open dgasmith opened 8 years ago
Purportedly, @bennybp has a memory manager in pulsar.
Moved from #476 so as to not clutter issues.
Moreover, Susi Lehtola comments:
Well, you could do compact atomic Cholesky to construct a fitting basis for an arbitrary orbital basis set on-the-fly. [doi 10.1063/1.3116784]
@CDSherrill requests a disk use estimate. Could just be final disk use as a system call before cleaning (https://github.com/psi4/psi4/blob/master/psi4/run_psi4.py#L196).
Yes, this would be very helpful so that users will know how much disk is needed (even approximately) for subsequent jobs of this type. It is also helpful to people planning to buy new hardware and who need to know how much disk to buy.... one can look back through old outputs on some of the challenging computations and see how much disk they used.
On Wed, Nov 16, 2016 at 3:06 PM, Lori A. Burns notifications@github.com wrote:
@CDSherrill https://github.com/CDSherrill requests a disk use estimate. Could just be final disk use as a system call before cleaning ( https://github.com/psi4/psi4/blob/master/psi4/run_psi4.py#L196).
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/psi4/psi4/issues/402#issuecomment-261056552, or mute the thread https://github.com/notifications/unsubscribe-auth/AC9QdgSg1IZHU-ezlwNRXjWKX3oEMSQaks5q-2JfgaJpZM4IvHrd .
detci memory size checks would be nice. Signed, someone who has crashed his computer a few times by trying to do a too big calculation.
psi4.header()
at file creation and e.g. >>> aggh = psi4.energy("scf")
and >>> psi4.set_options({"scf_type": "pk"})
to track what was done.sp = single_point('scf')
sp.compute() # ?
wfn = sp.wfn()
energy = sp.energy()
MAX_AM_ERI
passed to it? That way one could switch out libint.so
s on the fly (conda can do this). Would have to find a way to still exit gracefully if insufficient AM and give decent error messages. EDIT: Can't be done, as the header sets data structure sizes as well. Settling on AM=8 for conda linux instead.properties
function in driver (that encodes the extended workflows beyond sp or time-trivial keyword needed to compute CC properties) and the oeprop
syntax that most all other methods use. Devise and implement a unified interface that still works with the code.Done in #872
Renovate SCF damping capabilities
D
. There are rumors that should also damp F
or there's an iteration mismatch between D
& F
. Make sure damping is working right (presently only test case is scf-coverage and damping severely hurts convergenceRelated to @loriab 's previous comment... damping F is a lot more better than damping D, since instead of intrapolating inside a fixed Hilbert space of density, you're actually looking at different densities. You converge faster if you damp F than if you just damp D, and you're less likely to land on a saddle point.
Make use of doublet/triplet c-side. In particular, https://github.com/psi4/psi4/pull/737/files#r121282237
__future__
statements[from @dgasmith psi4/psi4#928 ] File names are going haywire a bit with different conventions for either PSIO or "user facing names" like Molden and cube files. Anyone have a good idea how to rectify this? It would also be good to have restart work for gradients, Hessians, and properties as well. Ill add this to the wish ilst.
As per discussed with @loriab in https://github.com/psi4/psi4/issues/933, it would be interesting to have a Windows native compilation for psi4
Possible easy-start issues
Plugin wish list:
pluginname.so
to have a name other than matching import pluginname
, so that python import system can't mistake the .so
for the actual module. (see https://github.com/edeprince3/gpu_dfcc/issues/2#issuecomment-397649361)From @dgasmith, relevant to the smart SCF driver
So we don't forget it
Have findif intercept and rerun suspect SCFs. Definitely wait for this until after findif is accepted, findif is converted from list based to dict based (so we can store SCF at the displacement as metadata) and we have some preliminary smart SCF.
PSIO_REMOVE_FILE
/ PSIO_KEEP_FILE
? from #1310 -D(abc)
work needs to continue, see https://github.com/psi4/psi4/pull/1151#issuecomment-417101476 and belowFor findif computations, have the preliminary displacements needed to compute the gradient be funneled into the frequency displacements.
been adding some things that are correct but not full-stack hooked up. here are the reminders to do so:
energy('b3lyp-d3-atm
)`energy(sapt0inf)
call (if component anaylysis deems suitable) and add it to the qcvar parade. Also, figure out why it's only in fisapt and is called through dft-sapt.save one-electron ints in wfn so that (1) not writing to disk, thus freeing SCF from disk and thread-safety issues, and (2) better carry around external potentials btwn modules.
__FILE__
, __LINE__
and __PRETTY_FUNCTION__
macros with std::source_location
when Psi4 transitions to C++20 minimum requirement
- Beyond just debug/release CMake build type, have a "profiling" build where both debugging and optimization are enabled. This is required if one wants to run perf/Vtune and get meaningful results. With modern compilers the debugging symbols contain enough information that compiler optimizations do not make debugging/profiling impossible
Before making a custom option, perhaps RelWithDebInfo
is enough?
CD gradient tech. @JonathonMisiewicz located some papers: https://aip.scitation.org/doi/10.1063/5.0087261 and https://onlinelibrary.wiley.com/doi/10.1002/qua.24563
Some things to add to the wishlist from my end:
This is a list of things that are generally agreed as "good things to do", but nobody has actually tackled yet. The hope is that this is used a central repository of "have you thought about this" comments. Note that this is a not a feature wish list.
High
boost::python
and replace with PyBind11.Medium
char*
from Psi4. Issues with dropping pointers and python exportation.Low
change_file_namespace
should be able to tie multiple files together and should return the status rather thanNone
, #645.rhf/uhf/rohf/cuhf
for input molecules.char *
forstd::string
.Modify, expand, delete as desired. If you take up a feature make sure to post here so that we do not duplicate effort.