CVS analysis' parameters 
Project module namevmd
CVS root used/home/cvs/vmd/cvsroot
Range analysisMain Branch (HEAD)
Date analysis2022-08-10 02:34 (Built in 105s)
CVS report for module 'vmd' built by cvschangelogbuilder 2.3 (build 1.76) with option buildhtmlreport.
Summary   Lines of code   Developers activity   Days of week   Hours  Tags  Last commits  

 
SummaryTop 
Current status indicatorsValue  
Files currently in repository 958 
Lines of code currently in repository (on non binary files only) 475989 
Activity indicatorsFrom startThis monthToday
Number of developers 2600
Number of commits3767300
Number of commits by status 1359 to add new file
35913 to change existing file
401 to remove file 
  
Different files commited 133700
Lines added / modified / removed (on non binary files only) +676802 / 293052 / -200813+0 / 0 / -0+0 / 0 / -0
Last commit 2022-05-23  

 
Lines of code*Top 
This chart represents the balance between number of lines added and removed in non binary files (source files).
 
 

 
Developers activity*Top 
DeveloperNumber of commitsDifferent files commitedLines*
(added, modified, removed)
Lines by commit*
(added, modified, removed)
Last commit 
johns242631294415788 / 182210 / 10351717.1 / 7.5 / 4.22022-05-23 19:10 
justin720868065345 / 38338 / 765679 / 5.3 / 10.62003-08-29 23:53 
billh164035871754 / 20025 / 365843.7 / 12.2 / 2.21996-04-10 04:57 
dalke135430657277 / 14001 / 521542.3 / 10.3 / 3.81998-09-11 15:17 
saam8544017267 / 14555 / 437120.2 / 17 / 5.12011-06-20 18:26 
pgrayson5141246934 / 2388 / 52513.4 / 4.6 / 12002-06-26 18:46 
jordi4691207001 / 3656 / 89514.9 / 7.7 / 1.92007-10-26 21:04 
sergei4563545952 / 6156 / 79913 / 13.5 / 1.71998-09-24 04:47 
danorris180495092 / 3518 / 173828.2 / 19.5 / 9.62001-11-30 18:24 
eamon133461011 / 1359 / 2697.6 / 10.2 / 22004-05-26 19:03 
ulrich98626225 / 393 / 5063.5 / 4 / 0.51997-05-15 06:06 
dhardy9385166 / 1350 / 210155.5 / 14.5 / 22.52010-06-10 22:36 
brendanbc172171095 / 1034 / 10515.2 / 14.3 / 1.42018-05-11 16:59 
kvandivo7216928 / 526 / 1212.8 / 7.3 / 0.12014-12-18 00:16 
khamer55172375 / 343 / 1243.1 / 6.2 / 0.21995-06-05 16:00 
leech52362540 / 750 / 1648.8 / 14.4 / 0.31996-11-22 02:54 
barryi44141869 / 1675 / 13042.4 / 38 / 2.92003-08-07 03:40 
akohlmey4426920 / 214 / 19420.9 / 4.8 / 4.42011-12-06 05:04 
ryanmcgreevy318964 / 214 / 61931 / 6.9 / 19.92019-07-22 19:27 
reeves1515801 / 461 / 1953.4 / 30.7 / 1.21996-12-20 08:02 
ltrabuco137206 / 114 / 115.8 / 8.7 / 02009-12-06 21:28 
bishop86299 / 26 / 037.3 / 3.2 / 01995-10-20 00:09 
johns22251 / 131 / 025.5 / 65.5 / 01998-05-30 00:59 
brunner111 / 3 / 01 / 3 / 02009-06-15 21:33 
johanstr110 / 3 / 00 / 3 / 02011-12-02 23:10 
petefred110 / 2 / 00 / 2 / 02006-09-26 23:17 

                   


 
Activity by days of weekTop 


 
Activity by hoursTop 


 
Last tags by dateTop 
DateFull dateTags 
2020-05-222020-05-22 05:54linenoise-char-at-a-time 
2020-05-212020-05-21 22:00linenoise-line-at-a-time 
2019-06-052019-06-05 05:32vmd-first-python3 
2019-05-222019-05-22 18:47vmd-last-python2 
2019-03-122019-03-12 20:06raytracinggems2019 
2018-08-282018-08-28 17:23siggraph2018 
2018-03-222018-03-22 03:52gtc2018-segprofile-final 
2018-03-072018-03-07 19:26gtc2018-seggigavoxels 
2018-03-022018-03-02 05:04gtc2018-segprofile 
2016-12-012016-12-01 05:40vmd-1-9-3 
2015-09-202015-09-20 20:56vr2016 
2014-12-302014-12-30 05:45vmd-1-9-2 
2014-11-082014-11-08 06:52quicksurf-globalization 
2014-11-072014-11-07 19:02sc2014-demos 
2013-10-112013-10-11 21:29ultravis2013 
2012-02-022012-02-02 04:15vmd-1-9-1 
2011-06-162011-06-16 15:40removeidxdispcmds 
2011-06-162011-06-16 02:25atomselrange 
2011-03-142011-03-14 17:54vmd-1-9-0 
2011-01-182011-01-18 15:32lastorbifdefs 
2009-11-052009-11-05 22:29msmpot-nonperiodic 
2009-08-072009-08-07 06:08vmd-1-8-7 
2009-04-292009-04-29 15:43hpg2009-submit 
2009-02-252009-02-25 01:28volmap-ils-estatics-orig 
2009-02-112009-02-11 00:44gpgpu-2009-final 
2008-12-032008-12-03 00:33qm-nosorting-1 
2007-05-142007-05-14 22:00cuda-0-8-0 
2007-04-052007-04-05 18:21vmd-1-8-6 
2006-08-262006-08-26 05:33vmd-1-8-5 
2006-04-172006-04-17 07:41vmd-1-8-4 
2005-02-162005-02-16 06:07vmd-1-8-3 
2003-12-052003-12-05 19:09vmd-1-8-2 
2003-06-152003-06-15 18:32vmd-1-8-1 
2002-12-092002-12-09 05:44vmd-1-8-0 

 
Last commit logsTop 
TagsDateDeveloperLast 200 Commit Logs
 2022-05-23johnsAdded links to AltiVec documents required to maintain the POWER 8/9/10 VSX code
* src/util_simd.C 1.32 (changed +3 -1)
* src/QuickSurf.C 1.136 (changed +3 -1)
* src/Orbital.C 1.166 (changed +3 -2)
 2022-05-13johnsBegin revisions for 3-D grid launches
* src/CUDAOrbital.cu 1.126 (changed +7 -6)
Continued revision for 3-D grid launch kernel variant
* src/CUDAOrbital.cu 1.127 (changed +176 -10)
 2022-05-06johnsAdded ARM intrinsics docs URL.
* src/Orbital_SVE.C 1.10 (changed +4 -1)
* src/Orbital_NEON.C 1.3 (changed +8 -1)
Minor housekeeping on chain definitions while auditing for potential
issues with new PDBx assembly chain definitions that can contain
dashes, etc.
* src/BaseMolecule.C 1.278 (changed +9 -8)
Removed CRAY_XK platform configurations now that NCSA Blue Waters has
been decomissioned (the last running XK system that we're aware of).
* make_distrib 1.92 (changed +2 -3)
* configure 1.1544 (changed +3 -5)
Removed old OptiX paths associated with NCSA Blue Waters and
Indiana U. Big Red II systems since they have been decomissioned.
* configure 1.1545 (changed +1 -23)
Removed old configuration options associated with NCSA Blue Waters, since
it has been decomissioned.
* make_distrib 1.91 (changed +2 -3)
* configure 1.1543 (changed +11 -39)
 2022-05-05johnsChange CRAY_XC targets to go for SM 6.0 and later
* configure 1.1542 (changed +2 -2)
Revised some Cray gcc/clang compilation flags to avoid trouble with
the latest compilers.
* configure 1.1541 (changed +4 -4)
 2022-04-28johnsCranked version
* configure 1.1540 (changed +1 -1)
 2022-04-26johnsCorrect the MacOS X ARM64 resource compiler flags
* configure 1.1538 (changed +1 -1)
Fix typo
* configure 1.1539 (changed +1 -1)
 2022-04-23johnsBegin reorganization of molecular orbital kernel launch and data
transfer logic to permit the use of 3-D grid launches and alternate
strategies to deal with grid padding, etc.
* src/CUDAOrbital.cu 1.125 (changed +10 -12)
 2022-04-22johnsAdded two new thread-coarsened CUDA kernels based on the "packed"
input array variant. They use a strategy of increasing the per-thread
arithmetic intensity by computing 2 or 4 grid points at a time, but reading
only the same number of input operands from the basis array and
wavefunction arrays. This comes at the cost of increased register pressure,
but the trade-off is well worth it on the newer "Ampere" GA10x GPUs since
they have large register files. It is particularly beneficial for the
performance of GPUs such as the A40/A6000 that have 2x the single-precision
floating put ALU throughput, as it increases instruction level parallelism
significantly.
* src/CUDAOrbital.cu 1.124 (changed +405 -1)
 2022-04-21johnsAdded a new 4th molecular orbital kernel tuned specifically for
Ampere (possibly also Volta and Turing) GPUs.
* src/CUDAOrbital.cu 1.120 (changed +174 -1)
Added environment variable override to enable use of the new Ampere
kernel when set. Early benchmarking shows a 30% performance gain for
the A6000 GPUs w/ double performance single-precision floating point
and GDDR6 memory, but break-even on higher-end A100 hardware.
* src/CUDAOrbital.cu 1.123 (changed +2 -2)
Allow runtime override of the packed cached global memory molecular
orbital kernel for Ampere and other recent GPUs.
* src/CUDAOrbital.cu 1.122 (changed +7 -3)
Updated the molecular orbital kernel launch logic to encompass the new
packed cache kernel for Ampere and other recent GPUs.
* src/CUDAOrbital.cu 1.121 (changed +29 -45)
 2022-04-16johnsAdded notes about compiler versions that generate incorrect SVE code
from intrinsics used in the molecular orbital kernel.
* src/Orbital_SVE.C 1.9 (changed +18 -1)
 2022-04-15johnsAdded Python bindings equivalent to the Tcl "mol fromsels" command,
contributed by Josh Vermaas.
* src/py_molecule.C 1.84 (changed +43 -0)
Updated to current colvars main 948003965f79c7266e5e7da39156cf8f1b4c59fe
* src/colvarscript.h 1.15 (changed +1 -1)
* src/colvarscript.C 1.28 (changed +13 -15)
* src/colvars_version.h 1.20 (changed +1 -1)
* src/colvarproxy_vmd_version.h 1.15 (changed +1 -1)
* src/colvarproxy_vmd.C 1.25 (changed +16 -44)
* src/colvarproxy_tcl.h 1.4 (changed +28 -9)
* src/colvarproxy_tcl.C 1.4 (changed +81 -24)
* src/colvarproxy.h 1.24 (changed +0 -4)
* src/colvarproxy.C 1.14 (changed +11 -2)
* src/colvarmodule.h 1.33 (changed +6 -0)
* src/colvarmodule.C 1.32 (changed +27 -15)
* src/colvardeps.h 1.16 (changed +2 -2)
* src/colvarcomp_neuralnetwork.C 1.2 (changed +12 -2)
* src/colvarcomp_distances.C 1.25 (changed +2 -1)
* src/colvar_neuralnetworkcompute.C 1.2 (changed +24 -2)
* src/colvar.h 1.22 (changed +3 -0)
* src/colvar.C 1.33 (changed +112 -114)
 2022-04-11johnsEliminated vector selection operator since will use a zeroing vector
multiply to automatically yield zero values of inactive SIMD lanes
without needing any additional instructions.
* src/Orbital_SVE.C 1.8 (changed +8 -12)
 2022-04-10johnsAdded SVE-specific debugging vector printing helper routines and
updated general comments.
* src/Orbital_SVE.C 1.7 (changed +41 -2)
Carefully revised the code to make safe use of non-selected-undefined
"_x" SVE instructions which generate fewer machine instructions as compared
with their non-selected-zero "_z" counterparts. By using the zeroing
intrinsics for key operations at the end of long arithmetic sequences
and in assignment of key variables, we can ensure inactive SIMD lanes
end up with zero values, but we use the faster (fewer instructions)
undefined variants in long multiply-add sequences that have the same
source and target machine register, thereby eliminating the need for
the compiler to generate additional MOVPRFX instructions.
* src/Orbital_SVE.C 1.6 (changed +24 -24)
Misc corrections and improvements to the ARM64 SVE exponential approximation
* src/Orbital_SVE.C 1.4 (changed +5 -8)
Replaced all of the SVE non-selected-undefined "_x" SVE intrinsics
with their non-selected-zero "_z" variants so we're certain to get
only zeros in inactive SIMD lanes.
This costs some additional MOVPRFX machine instructions in addition
to FMULs, but we can work our way backwards and use the _z variants
only for the final ops in each sub-sequence when it makes sense.
* src/Orbital_SVE.C 1.5 (changed +41 -41)
 2022-04-09johnsAdded ARM SVE fall-back implementations to make it easier to workaround
some currently-broken ARM64 compiler toolchains that lack functional SVE
support.
* src/util_simd_SVE.C 1.6 (changed +12 -2)
* src/VMDApp.C 1.586 (changed +8 -5)
* src/Orbital_SVE.C 1.3 (changed +17 -2)
Improved ARM64 SVE vector size console output formatting for error case.
* src/VMDApp.C 1.587 (changed +2 -3)
Improved structure of the molecular orbital runtime CPU dispatch loop
to the various SIMD variants.
* src/Orbital.C 1.165 (changed +120 -110)
 2022-04-08johnsAdded Orbital_SVE.C to the build when compiling for LINUXARM64
* configure 1.1537 (changed +7 -7)
Added rough draft of hand-vectorized ARM64 SVE molecular orbital kernels.
* src/Orbital_SVE.C 1.1 (added +312 -0)
Changed ifdef checks to enable ARM64 compilation with the NVIDIA HPC SDK.
* src/VMDApp.C 1.585 (changed +3 -3)
Eliminated the convenience union used for bitwise manipulation of
the floating point values, since variable length SVE vectors can't
be included in structure types.
* src/Orbital_SVE.C 1.2 (changed +2 -11)
Eliminated unreachable code warnings by updating the conditional compilation
macro structure.
* src/VMDApp.C 1.584 (changed +6 -3)
Enable ARM64 SVE instruction set runtime vector length detection
and reporting.
* src/VMDApp.C 1.582 (changed +2 -2)
Enable runtime dispatch of SVE kernels on ARM64 builds.
* src/Orbital.C 1.162 (changed +44 -2)
Enabling compilation of ARM64 CPU SIMD feature detection w/ NVIDIA HPC SDK.
* src/WKFThreads.C 1.36 (changed +4 -4)
Ensure the error handling code paths close image output file handles
so they aren't leaked.
* src/ImageIO.C 1.26 (changed +5 -1)
MacOS X doesn't support SVE vector instructions yet, so they are disabled
within MacOS X ARM64 builds, even for runtime CPU dispatch.
* src/VMDApp.C 1.583 (changed +2 -2)
* src/Orbital.C 1.163 (changed +2 -2)
Removed safety checks for old versions of the Portland Group compilers
since recent versions seem to accept intrinsics code without so much
trouble.
* src/Orbital.C 1.164 (changed +1 -5)
 2022-04-07johnsFix XLC VSX conditional compilation rules for POWER8/9/10 builds
* src/Orbital.C 1.161 (changed +2 -2)
 2022-03-31johnsAdded ARM64 NEON SIMD implementations of 1-D array stats,
atom selection accelerators, bounding box calculations:
minmax_1fv_aligned_neon(), minmax_3fv_aligned_neon(), etc.
* src/util_simd_NEON.C 1.2 (changed +136 -70)
Added ARM64 NEON SIMD instruction kernels for runtime dispatch on
MacOS and other ARM64 platforms. The initial implementation still
contains some SVE kernels as placeholders.
* src/util_simd_NEON.C 1.1 (added +216 -0)
Comment out ARM64 Unix kernel auxval2 query via AT_HWCAP2 until we
actually need it for runtime queries of ARM CPU optional instruction set
features of interest.
* src/WKFThreads.C 1.35 (changed +5 -4)
Corrected 64-bit double precision SIMD broadcast for NEON
* src/util_simd_NEON.C 1.3 (changed +2 -2)
Updated ARM64 NEON SIMD molecular orbital implementation to make
explicit calls to vcvtq_f32_u32() for conversion of unsigned int
comparison flag results to single-precision floating point, and
to use the resulting floating point mask array to compute the
orbital electron density if enabled.
* src/Orbital_NEON.C 1.2 (changed +4 -4)
 2022-03-25johnsCorrected a latent bug in clamp_int() that had as yet not
yet been triggered by any calling code.
* src/utilities.h 1.121 (changed +2 -2)
Drastically improve vectorizability of VolumetricData::clamp(), in
exchange for always writing back to memory. We could hand-write a
SIMD loop that would encompass the best aspects of both approaches
with a SIMD-wide true/false if any lane had to be clamped, checked
via something like _mm256_testz_si256() in AVX, for example.
* src/VolumetricData.C 1.71 (changed +9 -1)
 2022-03-24johnsUpdated colvars to main revision f2a0dff623a5cc46fc9efa6288ee9ec7230d8b1b
* src/colvartypes.h 1.14 (changed +1 -2)
* src/colvarscript_commands_colvar.h 1.4 (changed +16 -0)
* src/colvarscript_commands_bias.h 1.3 (changed +10 -1)
* src/colvarscript_commands.h 1.5 (changed +23 -2)
* src/colvarscript.C 1.27 (changed +2 -3)
* src/colvars_version.h 1.19 (changed +1 -1)
* src/colvars_files.pl 1.8 (changed +4 -0)
* src/colvarproxy_vmd.C 1.24 (changed +9 -2)
* src/colvarparse.h 1.15 (changed +1 -1)
* src/colvarmodule_refs.h 1.3 (changed +21 -2)
* src/colvarmodule.h 1.32 (changed +3 -0)
* src/colvarmodule.C 1.31 (changed +29 -2)
* src/colvargrid.h 1.24 (changed +1 -1)
* src/colvargrid.C 1.15 (changed +1 -1)
* src/colvardeps.h 1.15 (changed +9 -1)
* src/colvarcomp_neuralnetwork.C 1.1 (added +183 -0)
* src/colvarcomp_gpath.C 1.5 (changed +46 -158)
* src/colvarcomp_coordnums.C 1.15 (changed +6 -3)
* src/colvarcomp_combination.C 1.1 (added +328 -0)
* src/colvarcomp_apath.C 1.4 (changed +4 -14)
* src/colvarcomp_alchlambda.C 1.3 (changed +1 -1)
* src/colvarcomp.h 1.19 (changed +55 -0)
* src/colvarcomp.C 1.22 (changed +11 -7)
* src/colvarbias_restraint.h 1.12 (changed +8 -0)
* src/colvarbias_meta.C 1.22 (changed +5 -2)
* src/colvarbias_abf.C 1.25 (changed +2 -2)
* src/colvarbias.h 1.16 (changed +6 -1)
* src/colvarbias.C 1.22 (changed +60 -21)
* src/colvaratoms.C 1.28 (changed +7 -5)
* src/colvar_neuralnetworkcompute.h 1.1 (added +145 -0)
* src/colvar_neuralnetworkcompute.C 1.1 (added +281 -0)
* src/colvar.h 1.21 (changed +13 -1)
* src/colvar.C 1.32 (changed +58 -19)
 2022-03-21johnsCorrected typo in the comments about 3-D volumetric texgen
plane equation generation.
* src/TachyonDisplayDevice.C 1.135 (changed +2 -2)
 2022-03-18johnsCapitalize compile time Marching Cubes kernel template parameters for clarity.
* src/CUDAMarchingCubes.cu 1.44 (changed +8 -8)
Completed first phase of rewriting the marching cubes texture management
to use the modern CUDA texture object APIs that replaced the now-deprecated
texture reference APIs. The triangle vertex count and edge combination
tables have been updated to use linear texture objects, so the last
step will be to convert the 3-D texture mapping as well, although it uses
the "array" based APIs which are quite a bit different.
* src/CUDAMarchingCubes.h 1.18 (changed +32 -29)
* src/CUDAMarchingCubes.cu 1.41 (changed +148 -25)
Completed rewrite for CUDA texture object APIs, and checked allocations
with compute sanitizer.
* src/CUDAMarchingCubes.h 1.19 (changed +0 -0)
* src/CUDAMarchingCubes.cu 1.42 (changed +137 -23)
Eliminated the old Marching Cubes code associated with
deprecated CUDA texture reference APIs.
* src/CUDAMarchingCubes.h 1.20 (changed +2 -7)
* src/CUDAMarchingCubes.cu 1.43 (changed +24 -179)
Started refactoring of the CUDA marching cubes implementation to
facilitate the use of CUDA texture object APIs instead of the now-deprecated
CUDA texture reference APIs. Since the object APIs don't have
file-global scope like the old texture references did, the existing
texture parameterization and allocation routines must be absorbed into
the CUDAMarchingCubes class itself so that member routines have
complete access to the texture objects for allocation, parameterization,
use in kernel launches, and finally for teardown. Further revisions will
replace the texture reference approach with the newer object management APIs.
* src/CUDAMarchingCubes.h 1.17 (changed +13 -3)
* src/CUDAMarchingCubes.cu 1.40 (changed +33 -27)
 2022-03-17johnsFixed mismatched memory deallocation introduced with v1.3 changes to
the fastpbc code.
* src/FastPBC.C 1.6 (changed +2 -2)
 2022-02-13johnsImproved column alignment for cases when there are a mix of similar and
dissimilar GPUs in the same host.
* src/CUDAAccel.C 1.70 (changed +7 -4)
 2022-02-09johnsReadded warmup run back from original code
* src/CUDABench.cu 1.42 (changed +6 -1)
Updated comments and constants to match latest FMA benchmark structure
and did some brief tuning tests on an RTX A6000.
* src/CUDABench.cu 1.41 (changed +7 -6)
 2022-02-08johnsAdded compile-time macro check to detect C11, which adds portable
C library implementations of threads, atomic operations,
memory alignment, and Unicode string support.
The current code doesn't do any checking for the optional
__STDC_LIB_EXT1__ (which must equal 201112L if set) at present.
As of Feb 2022, C11 is listed as having only partial support
from the major vendor compilers and GCC/Clang.
It is noteworthy that C17/C18 adds no new language features and only
addresses inconsistencies etc.
It is currently expected that the next C2x language version will be
finalized in 2023. Much of C2x revolves around updating items in common
with newer C++ specs, absorbing a few POSIX APIs, eliminating K&R
function definitions, etc.
* src/c_compiler.c 1.2 (changed +10 -6)
 2022-01-21johnsAdded a new secondary atom selection acceleration array "on256", that
contains selection information for blocks of 256 atoms, permitting
tremendously improved performance when processing sparse selections
in very large systems. Due to the increased complexity of the
selection traversal loop, the new acceleration scheme is primarily
intended for use in combination with via C++11 lambda expessions,
either named, or more likely structured as anonymous closures at
the actual call site. The call sites are not polluted with complex
traversal code, and they retain the performance benefits of full inlining
of the lambda contents into the innermost loop body.
Renamed the new method AtomSel::for_selected_lambda() for the time being.
* src/AtomSel.h 1.59 (changed +20 -13)
* src/AtomSel.C 1.180 (changed +27 -1)
Added draft example atom selection mechanism for use with C++ 2011
lambda expressions, to permit much broader use of atom selection
processing acceleration techniques.
* src/AtomSel.h 1.58 (changed +38 -1)
Added example of anonymous lambda syntax for COM calculation.
* src/Measure.C 1.155 (changed +17 -3)
Added optimized 256-atom block traversal using packed-byte
first/last/count block-specific index selection information.
* src/AtomSel.h 1.61 (changed +9 -2)
Continued implementing sparse selection traversal optimization approach.
Based on C++11 lambda expressions to hide acceleration structure
traversal complexity and allow simple closure style anonymous lambda
syntax at call sites.
* src/AtomSel.h 1.60 (changed +2 -2)
* src/AtomSel.C 1.181 (changed +32 -4)
Implemented further optimizations that eliminate branching for 256-atom-block
traversals when we have contiguous range of selected atoms within a block.
* src/AtomSel.h 1.62 (changed +17 -2)
Test use of C++ 2011 lambda expression for measure command
atom selection inner loop body.
* src/Measure.C 1.154 (changed +32 -1)
 2022-01-20johnsAdded "vmdinfo compilers" command to permit runtime query of the
compile-time C/C++ language standard levels. We may extend this
further with additional checks for specific compiler toolchains,
e.g. GCC, Clang/LLVM, PGCC, Intel C++, IBM XLC, etc.
* src/tcl_commands.C 1.58 (changed +28 -1)
Added C++ 2011 compiler flag and machineary for the capture of key details of
the compile-time environment both for C and C++ source files.
* configure 1.1536 (changed +11 -2)
Added a C source file to capture details of the host compile-time
language standard and/or other C compilation environment details
that can't be captured from within the C++ source files.
This is mostly to permit capture of the environment that many of the
molfile plugins are expected to use, since VMD itself is totally C++ dominant.
* src/c_compiler.h 1.1 (added +42 -0)
* src/c_compiler.c 1.1 (added +42 -0)
 2022-01-13johnsCorrected test and scoping for enabling the use of Address Sanitizer with
GCC and Clang based compilations
* configure 1.1535 (changed +1 -1)
 2021-12-22johnsSpecify color table constants as single-precision literals to eliminate
MSVS compiler warnings.
* src/ColorScaleTables.h 1.4 (changed +6145 -6145)
 2021-12-21johnsAdd explicit type conversions for SPHERETUBE primitives to eliminate
compiler warnings.
* src/MoleculeGraphics.C 1.89 (changed +17 -17)
Added explicit type conversion to eliminate compiler warnings.
* src/OptiXRenderer.C 1.391 (changed +7 -7)
* src/OSPRayRenderer.C 1.92 (changed +4 -4)
Added explicit typecast to eliminate compiler warning
* src/Win32OpenGLDisplayDevice.C 1.130 (changed +2 -2)
* src/TachyonDisplayDevice.C 1.134 (changed +2 -2)
* src/Scene.C 1.100 (changed +2 -2)
Added explicit typecast to eliminate compiler warnings
* src/OpenGLShader.C 1.33 (changed +3 -3)
* src/OpenGLRenderer.C 1.478 (changed +2 -2)
Added explicit typecast to silence compiler warnings.
* src/ColorFltkMenu.C 1.46 (changed +3 -1)
Added explicit typecasts to eliminate compiler warnings.
* src/CUDAMDFF.cu 1.84 (changed +15 -15)
Added placeholder set_window_title() method
* src/Win32OpenGLDisplayDevice.C 1.129 (changed +7 -1)
Corrected assignment of "maxDepth", to use ospSet1i().
Improve floating point consistency.
* src/OSPRayRenderer.C 1.91 (changed +10 -10)
Corrected window parameter typecasts
* src/glwin.c 1.34 (changed +2 -2)
* src/Win32OpenGLDisplayDevice.C 1.131 (changed +2 -2)
Eliminated a C++ism from type conversion
* src/glwin.c 1.35 (changed +2 -2)
Improve floating point consistency
* src/OptiXRenderer.C 1.390 (changed +4 -4)
* src/OptiXDisplayDevice.C 1.86 (changed +3 -3)
* src/OSPRay2Renderer.C 1.35 (changed +8 -8)
* src/FastPBC.C 1.4 (changed +8 -8)
* src/ColorFltkMenu.C 1.45 (changed +4 -4)
* src/CUDAQuickSurf.cu 1.97 (changed +2 -2)
* src/CUDAFastPBC.cu 1.8 (changed +5 -5)
Improved floating point consistency
* src/glwin.c 1.33 (changed +15 -15)
* src/OSPRayDisplayDevice.C 1.19 (changed +2 -2)
* src/FastPBC.C 1.5 (changed +3 -3)
 2021-12-20johnsAdd explicit type conversion to silence MSVS warning.
* src/CUDAMeasureQCP.cu 1.37 (changed +2 -2)
Corrected flawed condition syntax that yielded inconsistent intermediate
types. Improved floating point consistency.
* src/CUDAMDFF.cu 1.83 (changed +3 -3)
Improve floating point consistency
* src/CUDAOrbital.cu 1.119 (changed +2 -2)
 2021-12-18johnsRevised ANARI renderer implementation to more closely track the provisional
spec, but maintain the use of some extensions for particular renderers
for the purposes of rendering of high production value images for
the ANARI manuscript in the short term.
* src/ANARIRenderer.C 1.26 (changed +36 -19)
 2021-12-13johnsHardened the VMD FileRenderList startup and renderer registration
code for Intel OSPRay to ensure that any OSPRay initialization
failures don't crash VMD. This should handle both insufficient
CPU instruction set extensions as well as runtime errors that have
been observed with loading of the ISPC shared libs on Windows systems.
* src/OSPRayRenderer.h 1.36 (changed +2 -2)
* src/OSPRayRenderer.C 1.90 (changed +10 -4)
* src/OSPRayDisplayDevice.h 1.19 (changed +2 -2)
* src/OSPRayDisplayDevice.C 1.18 (changed +3 -3)
* src/OSPRay2Renderer.h 1.12 (changed +2 -2)
* src/OSPRay2Renderer.C 1.34 (changed +8 -3)
* src/OSPRay2DisplayDevice.h 1.5 (changed +2 -2)
* src/OSPRay2DisplayDevice.C 1.5 (changed +2 -2)
* src/FileRenderList.C 1.111 (changed +10 -5)
* src/FileRenderList.C 1.110 (changed +12 -8)
Updated OSPRay 2.x build rules to use OSPRay 2.8.0 by default
* configure 1.1534 (changed +2 -2)
 2021-12-12johnsUpdated default ANARI path for early public SDK structure.
* configure 1.1533 (changed +2 -2)
 2021-12-08johnsUpdated ANARI to default to the "example" device after renaming.
* src/ANARIRenderer.C 1.25 (changed +6 -6)
 2021-12-03johnsAdded QwikFold placeholder to the script that populates the extensions menu
during VMD startup
* scripts/vmd/loadplugins.tcl 1.57 (changed +2 -1)
Enable qwikfold for testing
* scripts/vmd/loadplugins.tcl 1.58 (changed +2 -2)
Sync w/ colvars git repo version 6d97a4339092d4f04f0dee0bf91c66cafc3bc406
* src/colvartypes.h 1.13 (changed +3 -0)
* src/colvartypes.C 1.12 (changed +11 -5)
* src/colvarscript_commands_colvar.C 1.2 (changed +4 -0)
* src/colvarscript_commands_bias.C 1.2 (changed +4 -0)
* src/colvarscript_commands.C 1.3 (changed +5 -0)
* src/colvars_version.h 1.18 (changed +1 -1)
* src/colvarproxy_volmaps.C 1.4 (changed +2 -2)
* src/colvarproxy_vmd_version.h 1.14 (changed +1 -1)
* src/colvarproxy_tcl.C 1.3 (changed +7 -0)
* src/colvarproxy.h 1.23 (changed +22 -5)
* src/colvarproxy.C 1.13 (changed +67 -9)
* src/colvarparams.C 1.2 (changed +1 -1)
* src/colvarmodule_refs.h 1.2 (changed +37 -35)
* src/colvargrid.h 1.23 (changed +6 -0)
* src/colvargrid.C 1.14 (changed +1 -0)
* src/colvardeps.h 1.14 (changed +1 -1)
* src/colvarcomp_volmaps.C 1.4 (changed +2 -2)
* src/colvarcomp_rotations.C 1.15 (changed +28 -37)
* src/colvarcomp_protein.C 1.13 (changed +4 -14)
* src/colvarcomp_gpath.C 1.4 (changed +7 -4)
* src/colvarcomp_distances.C 1.24 (changed +25 -23)
* src/colvarcomp_coordnums.C 1.14 (changed +5 -5)
* src/colvarcomp_apath.C 1.3 (changed +2 -2)
* src/colvarcomp_angles.C 1.12 (changed +18 -35)
* src/colvarcomp_alchlambda.C 1.2 (changed +56 -6)
* src/colvarcomp.h 1.18 (changed +33 -1)
* src/colvarcomp.C 1.21 (changed +31 -3)
* src/colvarbias_meta.C 1.21 (changed +2 -1)
* src/colvarbias_abf.C 1.24 (changed +3 -2)
* src/colvarbias.C 1.21 (changed +2 -2)
* src/colvaratoms.C 1.27 (changed +1 -1)
* src/colvar.h 1.20 (changed +1 -0)
* src/colvar.C 1.31 (changed +48 -51)
 2021-12-02johnsAdded two better designed fallback cases for VMD initialization on
Windows systems, to set the temporary directory if TMPDIR is unset
at startup.
* scripts/vmd/vmdinit.tcl 1.155 (changed +8 -2)
 2021-11-18johnsWrite atomic element and chain fields to the PDB input for Stride/DSSP
since the latest versions of DSSP require these to be present.
* src/Stride.C 1.51 (changed +25 -11)
 2021-11-12johnsAdded use of ptrdiff_t types for key voxel indexing arithmetic, to enable
QuickSurf density map generation for volumes containing more than 2 billion
voxels, such as the SARS-CoV-2 Delta Aerosol visualization..
* src/QuickSurf_NEON.C 1.2 (changed +4 -4)
* src/QuickSurf_AVX2.C 1.10 (changed +3 -3)
* src/QuickSurf.C 1.135 (changed +14 -9)
 2021-11-11johnsApplied Josh Vermaas' patch to ensure that VMD parses all possible
keywords for file writing operations passed by Molecule.py
* src/py_molecule.C 1.83 (changed +7 -6)
 2021-11-05johnsInhibit the "interactive" ANARI renderer from showing up as an option
when the USD back-end has been enabled.
* src/FileRenderList.C 1.109 (changed +2 -2)
Updated the ANARI renderer to allow the user to specify the behavior of
the USD back-end interface at runtime, including whether or not to
emit USD as local files or to make a network connection to an Omniverse
server, the root level USD path to use for exporting sessions, and
to select binary or ASCII USD formatting.
* src/ANARIRenderer.C 1.24 (changed +13 -8)
 2021-11-04johnsEnsure that DSSP emits verbose output if issues arise.
* src/Stride.C 1.50 (changed +2 -2)
Fixes for parsing issues with some versions of mkdssp.
* src/Stride.C 1.49 (changed +3 -3)
 2021-10-29johnsCleaned up unused local variables.
* src/TclFastPBC.C 1.5 (changed +5 -9)
Ensure spaces are preserved between compiler flags.
* configure 1.1532 (changed +2 -2)
Ensure zero-initialization of atomicnumfactor_4 regardless of state variables.
* src/QuickSurf.C 1.134 (changed +3 -3)
Replaced old Purify-based memory checking build rules with modern
Address Sanitizer based checking.
* configure 1.1531 (changed +8 -17)
Revised the ANARI FileRenderer subclass to ensure that VMD representations
lead to unified instance/group nodes containing all of the
surfaces, geometry, and materials that make up the representation.
* src/ANARIRenderer.h 1.14 (changed +7 -1)
* src/ANARIRenderer.C 1.23 (changed +121 -6)
Short-term workaround to prevent a crash that can occur at the
start of the vectorized texture map accumulation code, likely due
to memory alignment limitations.
* src/QuickSurf_AVX2.C 1.9 (changed +2 -2)
 2021-10-28johnsUpdated the per-representation comment DisplayList DCOMMENT token generation
code for complete coverage of reps, and the current rep names.
The comment token will be used to populate graphical interfaces that
show the structure of the molecular scene graph.
* src/DrawMolItemVolume.C 1.183 (changed +5 -1)
* src/DrawMolItemSurface.C 1.46 (changed +4 -1)
* src/DrawMolItemRibbons.C 1.157 (changed +6 -3)
* src/DrawMolItemOrbital.C 1.53 (changed +2 -2)
* src/DrawMolItemNanoShaper.C 1.8 (changed +6 -1)
* src/DrawMolItemMSMS.C 1.52 (changed +4 -1)
* src/DrawMolItem2.C 1.40 (changed +8 -1)
* src/DrawMolItem.C 1.374 (changed +6 -3)
 2021-10-25johnsEliminated completion side of Axes comment buffer output so that all
comment buffers are tagged at start only.
* src/Axes.C 1.76 (changed +2 -6)
Eliminated old sphere-specific workaround code path for the ANARI USD back-end.
The current code attempts to honor the provisional spec APIs, so the workaround
scheme is no longer needed, albeit there are still limitations on the
Omniverse side unrelated to VMD itself. Added USD naming for the top level
ANARI world object created by VMD, and began working on minimizing the
number of cases were USD would generate an empty session.
* src/ANARIRenderer.C 1.21 (changed +37 -73)
Made the comment buffer output for the reps considerably briefer for
better use within the ANARI USD namespace and other scene tree browser
displays that break down the scene components into groups of geometry,
instances, etc.
* src/DrawMolItemVolume.C 1.182 (changed +3 -5)
* src/DrawMolItemRings.C 1.29 (changed +3 -5)
* src/DrawMolItemRibbons.C 1.156 (changed +3 -5)
* src/DrawMolItemQuickSurf.C 1.26 (changed +2 -3)
* src/DrawMolItemOrbital.C 1.52 (changed +2 -3)
* src/DrawMolItem.C 1.373 (changed +14 -27)
Updated ANARI material handling code to more gracefully adapt to different
renderer subtypes and their associated limitations.
* src/ANARIRenderer.h 1.13 (changed +10 -3)
* src/ANARIRenderer.C 1.22 (changed +58 -68)
Updated the ANARI renderer implementation to use more narrowly defined
ANARI_ARRAY1D types for the geometry array API calls. Updated the geometry
subtype and parameter strings to bring them in sync with the ANARI
provisional spec.
* src/ANARIRenderer.h 1.12 (changed +0 -0)
* src/ANARIRenderer.C 1.20 (changed +21 -27)
 2021-10-24johnsContinued updates to bring VMD in sync with the ANARI provisional
specification and recent back-end renderer updates.
* src/ANARIRenderer.h 1.11 (changed +2 -1)
* src/ANARIRenderer.C 1.19 (changed +58 -16)
 2021-10-22johnsAdded support for new USD back-end, and updated framebuffer format
configuration to the current provisional spec.
* src/ANARIRenderer.C 1.18 (changed +44 -6)
 2021-10-20johnsEliminated Python startup warning reported by Josh Vermaas
* python/Molecule.py 1.32 (changed +3 -3)
Protect DSPHERE display list token RTRT processing code with a new scope
to prevent leaking of variables and state into the parent scope, and to
ensure successful compilation with the most recent revs of GCC which are less
permissive about skipped initialization scenarios.
* src/OptiXRenderer.C 1.389 (changed +3 -2)
 2021-10-19johnsCranked version
* configure 1.1530 (changed +1 -1)
 2021-10-08johnsAdded OpenGL background color state softcopy tracking to facilitate
correct state tracking when we enter/leave full-time RTX RTRT mode.
* src/OptiXDisplayDevice.C 1.85 (changed +8 -7)
* src/OpenGLRenderer.h 1.154 (changed +2 -1)
* src/OpenGLRenderer.C 1.477 (changed +62 -27)
Added support for lone DCYLINDER and DSPHERE display command tokens in the
full-time RTX RTRT display mode.
* src/OptiXRenderer.C 1.388 (changed +52 -1)
Roll OptiX PTX compute capability back to SM 5.0 for a while longer,
at lest for non-RTX RTRT builds.
* configure 1.1529 (changed +1 -1)
Updated to Colvars version 1f1c3c32dcd2cf9fba9457514ce63bf284271fa9.
* src/colvarmodule_refs.h 1.1 (added +539 -0)
* src/colvarcomp_alchlambda.C 1.1 (added +61 -0)
* src/colvarbias_histogram_reweight_amd.h 1.1 (added +109 -0)
* src/colvarbias_histogram_reweight_amd.C 1.1 (added +398 -0)
 2021-10-07johnsAdded support for modulation of the NewCartoon representation thickness
by user-specified per-atom fields, following the existing approach already
implemented for VDW and NewRibbons representations.
* src/DrawMolItemRibbons.C 1.155 (changed +51 -11)
Cranked version
* configure 1.1528 (changed +1 -1)
* configure 1.1527 (changed +1 -1)
Updated README
* README 1.413 (changed +3 -1)
Updated to Colvars version 1f1c3c32dcd2cf9fba9457514ce63bf284271fa9.
* src/colvarvalue.h 1.13 (changed +5 -17)
* src/colvarvalue.C 1.15 (changed +89 -62)
* src/colvarscript_commands.h 1.4 (changed +8 -0)
* src/colvarscript.h 1.14 (changed +0 -12)
* src/colvarscript.C 1.26 (changed +35 -4)
* src/colvars_version.h 1.17 (changed +1 -1)
* src/colvars_files.pl 1.7 (changed +4 -0)
* src/colvarproxy_vmd_version.h 1.13 (changed +1 -1)
* src/colvarproxy_vmd.C 1.23 (changed +12 -0)
* src/colvarproxy_tcl.h 1.3 (changed +6 -0)
* src/colvarproxy_tcl.C 1.2 (changed +2 -0)
* src/colvarproxy.h 1.22 (changed +40 -11)
* src/colvarproxy.C 1.12 (changed +173 -7)
* src/colvarparse.h 1.14 (changed +2 -2)
* src/colvarparse.C 1.17 (changed +6 -6)
* src/colvarmodule_utils.h 1.2 (changed +2 -0)
* src/colvarmodule.h 1.31 (changed +37 -5)
* src/colvarmodule.C 1.30 (changed +157 -18)
* src/colvargrid.h 1.22 (changed +69 -6)
* src/colvargrid.C 1.13 (changed +92 -1)
* src/colvardeps.h 1.13 (changed +4 -0)
* src/colvardeps.C 1.17 (changed +15 -15)
* src/colvarcomp_volmaps.C 1.3 (changed +5 -3)
* src/colvarcomp_rotations.C 1.14 (changed +1 -1)
* src/colvarcomp_coordnums.C 1.13 (changed +1 -0)
* src/colvarcomp.h 1.17 (changed +28 -8)
* src/colvarcomp.C 1.20 (changed +4 -1)
* src/colvarbias_restraint.C 1.18 (changed +8 -0)
* src/colvarbias_meta.h 1.13 (changed +7 -2)
* src/colvarbias_meta.C 1.20 (changed +134 -84)
* src/colvarbias_histogram.C 1.13 (changed +1 -0)
* src/colvarbias_alb.C 1.16 (changed +1 -0)
* src/colvarbias_abf.C 1.23 (changed +33 -19)
* src/colvarbias.C 1.20 (changed +5 -1)
* src/colvaratoms.h 1.16 (changed +3 -0)
* src/colvaratoms.C 1.26 (changed +18 -1)
* src/colvar_UIestimator.h 1.8 (changed +9 -7)
* src/colvar.h 1.19 (changed +2 -1)
* src/colvar.C 1.30 (changed +94 -23)
 2021-10-05johnsApplied Josh Vermaas' corrections to the built-in FastPBC implementation,
replacing the FastPBC unwrapping algorithm with a corrected displacement
method based on von Bulow's displacement algorithm.
* src/TclFastPBC.C 1.4 (changed +37 -67)
* src/FastPBC.C 1.3 (changed +26 -4)
* src/CUDAFastPBC.cu 1.7 (changed +129 -111)
Continued unification and optimization of the QuickSurf density/texture
kernels for multiple texture formats. Changed QuickSurf memory allocation
routines to track and incorporate the texture format in its calculations so
that it can be changed on-demand by the user's surface quality preference
at runtime.
* src/CUDAQuickSurf.h 1.10 (changed +2 -1)
* src/CUDAQuickSurf.cu 1.95 (changed +47 -25)
Tied runtime QuickSurf texture format selection to the user-specified
surface quality parameter assigned when the representation is computed.
* src/QuickSurf.C 1.133 (changed +17 -2)
* src/CUDAQuickSurf.h 1.11 (changed +3 -2)
* src/CUDAQuickSurf.cu 1.96 (changed +3 -3)
Updated ORNL Summit build configuration for CUDA 11.0.3, removed compilation
support for Kepler GPUs of compute capability 3.0 (now more than 10 years old),
and updated the OptiX ray tracing engine shader generation to use
compute capability 6.0 as the PTX targeting Pascal and later generation GPUs.
* configure 1.1526 (changed +7 -5)
 2021-09-24johnsUpdated the ANARI renderer to use the accumulation buffer, and run
multiple passes, since we don't standardize the meaning of sample count
parameters among renderers presently.
* src/ANARIRenderer.C 1.17 (changed +16 -41)
 2021-09-23johnsAdd explicit type conversion to please Clang.
* src/Measure.C 1.153 (changed +3 -3)
Added explicit type conversion to please Clang.
* src/TclMeasure.C 1.185 (changed +2 -2)
Added explicit type conversions to please Clang
* src/utilities.C 1.177 (changed +4 -4)
Corrected struct/class consistency
* src/HMDMgr.h 1.6 (changed +3 -3)
Corrected the behavior of Stack::clear() to ensure that the curr pointer
is reset correctly.
* src/Stack.h 1.30 (changed +2 -1)
Ensure that the colorscale posterization flag is initialized in the
constructor.
* src/Scene.C 1.99 (changed +2 -1)
Major revision of ANARI renderer subclass to sync up with the ANARI
provisional API and associated SDK updates. The updated implementation
isn't using the accumulation buffer yet and various other aspects of
object ownership and lifecycle still need cleanup. The current code isn't
handling the newly required interactions between the ANARIFrame object and
its required parameters in a graceful way. The code needs some refactoring
to better support the new object dependency graph associated with the
updated API.
* src/ANARIRenderer.h 1.10 (changed +18 -18)
* src/ANARIRenderer.C 1.16 (changed +395 -273)
VMD previously assumed that all python objects that can be read by
PyLong_FromLong pass the PyLong_Check test.
In Python 2, this was true, but in Python 3, numpy.int32 or numpy.int64
datatypes can be validly converted into python integers, but don't pass
PyLong_Checks.
Trying to do something relatively innocuous, setting resids for a
selection to a numpy array, was failing with the old Python 2 type approach:
values = np.cumsum(np.ones(len(sel)))
sel.resid = values
With the revised implementation, this now works correctly with Python 3.
* src/py_commands.C 1.23 (changed +12 -7)
 2021-09-21johnsBack-ported some CUDA kernel optimizations from the QuickSurf RGB4U
code path to the RGB3F code path. Ultimately these kernels should end
up being unified using templates.
* src/CUDAQuickSurf.cu 1.93 (changed +19 -19)
Fixed a bug in handling of user-specified isovalues for non-color-per-atom
mode (e.g. ColorID) in the CUDA QuickSurf code path.
* src/CUDAQuickSurf.cu 1.92 (changed +3 -3)
Simplified QuickSurf RGB3F kernel loops with some operator overloading.
* src/CUDAQuickSurf.cu 1.94 (changed +22 -15)
 2021-08-24johnsDisabled check/warning for the X11 Composite extension since all of the
newer distros have turned it on by default, and conventional planar
stereoscopic displays are all but gone from the face of the earth
at this point. Those rare sites that still have stereo displays will
know that they can't use one of the compositing window managers
and/or they will have system software that works correctly in such a case.
* src/OpenGLDisplayDevice.C 1.217 (changed +3 -1)
Eliminated check for the X11 composite extension when using off-screen Pbuffers.
* src/OpenGLPbufferDisplayDevice.C 1.29 (changed +1 -23)
 2021-06-18johnsCranked version
* configure 1.1525 (changed +1 -1)
 2021-05-14johnsAdded OptiX 6 based implementation of full-time RTRT rendering mode back end.
The new OptiX 7 version of Tachyon will end up being significantly more
efficient with caching and tracking of existing command list buffers
and other data in GPU-resident data structures, but this is a usable
placeholder implementation albeit the various holdovers from its
more offline-oriented original design. The new code adds methods to
aggregate materials, and command list buffers into a complete scene
description, and to efficiently render it.
* src/OptiXRenderer.h 1.133 (changed +18 -1)
* src/OptiXRenderer.C 1.387 (changed +269 -1)
Added code to generate molecular representations using cylinder array
primitives, especially for use in RTRT rendering modes.
* src/DrawMolItem.C 1.372 (changed +51 -3)
Added cylinder array display primitives which are far higher in performance
when using full-time RTRT display mode.
* src/DispCmds.h 1.121 (changed +36 -2)
* src/DispCmds.C 1.121 (changed +36 -1)
Added default handler for cylinder array primitive needed for better
full-time RTRT performance.
* src/FileRenderer.h 1.130 (changed +6 -2)
* src/FileRenderer.C 1.187 (changed +30 -1)
Added preliminary support code to permit full-time real-time ray tracing
as an alternative to OpenGL rasterization, but maintaining the use of OpenGL
to provide on-screen image presentation, double buffering, etc.
Added a new method to allow the main X11 OpenGL window title to be
modified at runtime, to more clearly indicate which renderer is active.
* src/OpenGLRenderer.h 1.153 (changed +17 -2)
* src/OpenGLRenderer.C 1.476 (changed +229 -2)
* src/OpenGLDisplayDevice.h 1.61 (changed +2 -1)
* src/OpenGLDisplayDevice.C 1.216 (changed +86 -1)
Ensure that anyhit traversals against opaque geometry end immediately.
* src/OptiXShaders.cu 1.176 (changed +5 -1)
Implemented many updates due to recent changes in the ANARI API design.
Still need to completely resolve changes related to having made the framebuffer
the object that collects camera and other global scene state that used
to be provided on render calls.
* src/ANARIRenderer.h 1.9 (changed +3 -2)
* src/ANARIRenderer.C 1.15 (changed +153 -126)
Minor tweak to improve context regen ordering
* src/ANARIDisplayDevice.C 1.3 (changed +3 -3)
 2021-04-04johnsMinor cleanup to GLSL shader compilation code while looking into
similarities with needs for loading OptiX 7.x compiled PTX.
* src/OpenGLShader.C 1.32 (changed +11 -3)
 2021-03-30johnsRemoved unnecessary "const" on radius scaling parameter.
* src/OptiXRenderer.h 1.132 (changed +2 -2)
Revised ANARI, OptiX, and OSPRay framebuffer methods to match recent
updates to the OptiX method names, and to incorporate corrections and
improvements already made in the OptiX framebuffer methods, in support
of fully interactive ray tracing pass-through to OpenGL DisplayDevice
subclasses..
* src/OptiXRenderer.C 1.386 (changed +6 -6)
* src/OSPRayRenderer.h 1.35 (changed +4 -4)
* src/OSPRayRenderer.C 1.89 (changed +19 -13)
* src/OSPRay2Renderer.h 1.11 (changed +4 -4)
* src/OSPRay2Renderer.C 1.33 (changed +19 -13)
* src/ANARIRenderer.h 1.8 (changed +4 -4)
* src/ANARIRenderer.C 1.14 (changed +20 -14)
 2021-03-29johnsAdded calc_matrix_scale_factor() method to compute a uniform scaling factor
for cone/cylinder/sphere primitives if/when flattening the scene graph
(by pre-transforming all geometry) for best interactive ray tracing
performance.
* src/OptiXRenderer.h 1.131 (changed +5 -1)
* src/OptiXRenderer.C 1.383 (changed +13 -1)
Added framebuffer map/unmap methods to permit OpenGL DisplayDevice
subclasses to implement full-time ray tracing pass-through.
* src/OptiXRenderer.h 1.130 (changed +3 -1)
* src/OptiXRenderer.C 1.382 (changed +11 -1)
Ensure that framebuffer_config() and framebuffer_resize() always set
internal width/height member variables so that framebuffer reads
and display are handled correctly for pass-through of full-time
ray tracing in OpenGL DisplayDevice subclasses.
* src/OptiXRenderer.C 1.384 (changed +7 -1)
Improved naming of framebuffer management methods prior to adding new
map/unmap calls required for full-time ray tracing pass-through from within
the OpenGLDisplayDevice hierarchy.
* src/OptiXRenderer.h 1.129 (changed +4 -4)
* src/OptiXRenderer.C 1.381 (changed +13 -13)
Minor optimizations for vmd_DrawConic()
* src/OpenGLRenderer.C 1.475 (changed +19 -10)
Print updated internal state variables when verbose output is enabled.
* src/OptiXRenderer.C 1.385 (changed +2 -2)
 2021-03-28johnsIndentation cleanup
* src/DispCmds.h 1.120 (changed +5 -4)
 2021-03-27johnsContinued revision of OptiX geometry methods to improve const correctness.
* src/OptiXRenderer.h 1.128 (changed +18 -15)
* src/OptiXRenderer.C 1.380 (changed +18 -17)
Improved const correctness of the materials and trimesh geometry methods.
* src/OptiXRenderer.h 1.127 (changed +39 -29)
* src/OptiXRenderer.C 1.379 (changed +38 -30)
 2021-03-22johnsAdded a clear() method to allow cleanup of loop-based clearing idioms found in the
DisplayDevice subclasses that manage matrix stacks.
* src/Stack.h 1.29 (changed +13 -1)
Replace stack clearing loop with call to new clear() method.
* src/FileRenderer.C 1.186 (changed +4 -7)
* src/DisplayDevice.C 1.151 (changed +3 -6)
 2021-03-17johnsApplied Josh's update to CUDAFastPBC to correct a race condition that
occured during tests with 2 million frame trajectories.
There was a rare race condition between memcpy and cudaMemcpyAsync.
The new CUDAFastPBC implementation has a cleaner memory copy
interface for the unwrapping portion of the code that no longer uses
the host-side memcpy, and has a distinct pinned buffer for every stream.
* src/CUDAFastPBC.cu 1.5 (changed +81 -84)
Eliminate duplicate declaration of blocks count.
* src/CUDAFastPBC.cu 1.6 (changed +1 -2)
 2021-03-12johnsA few cherry picked colvars module bug fixes and updates provided
by Jerome and Giacomo.
* src/colvarparse.h 1.13 (changed +4 -0)
* src/colvarparse.C 1.16 (changed +20 -0)
* src/colvarmodule.C 1.29 (changed +5 -0)
* src/colvarcomp_distances.C 1.23 (changed +2 -1)
* src/colvaratoms.h 1.15 (changed +2 -6)
* src/colvaratoms.C 1.25 (changed +3 -0)
 2021-03-10johnsSimplified conditional compilation tests and added further comments.
* src/OpenGLDisplayDevice.h 1.60 (changed +13 -12)
Simplified conditional compilation tests.
* src/OpenGLDisplayDevice.C 1.215 (changed +1 -5)
 2021-03-09johnsAdded the Google AI group's "Turbo" rainbow color scale.
Began adding infrastructure for conversion between sRGB colors (gamma 2.2)
and linear (gamma 1.0) RGB colors, since color scales, particularly those
that are tabulated, may not be in linear color spaces. This is complicated
by the fact that the VMD FLTK code presently displays the color scale
colors as-is, when they should actually be stored linear and rendered
in GL using linear colors, but drawn in sRGB in the FLTK GUI.
Further changes will be needed to ensure the correct color spaces are
always used for tabulated color scales.
* src/Scene.C 1.98 (changed +19 -3)
* src/ColorScaleTables.h 1.3 (changed +274 -1)
Corrected the behavior of the DisplayDevice base class implementation of
the cueing_on() and cueing_off() methods so that batch mode renderings
conducted with "-dispdev text" or "-dispdev none" don't force depth cueing on.
* src/DisplayDevice.h 1.144 (changed +18 -3)
* src/DisplayDevice.C 1.150 (changed +1 -6)
 2021-03-07johnsSynced up with devel versions
* configure 1.1524 (changed +2 -2)
 2021-03-06johnsAdded support for setting the AO maximum occlusion distance in the
CPU versions of Tachyon 0.99.2 and later.
* src/TachyonDisplayDevice.C 1.133 (changed +11 -1)
* src/LibTachyonDisplayDevice.C 1.99 (changed +14 -1)
Synced with current colvars git master.
* src/colvarvalue.C 1.14 (changed +1 -10)
* src/colvarscript_commands_colvar.h 1.3 (changed +40 -50)
* src/colvarscript_commands_bias.h 1.2 (changed +25 -15)
* src/colvarscript_commands.h 1.3 (changed +138 -17)
* src/colvarscript_commands.C 1.2 (changed +48 -0)
* src/colvarscript.h 1.13 (changed +99 -24)
* src/colvarscript.C 1.25 (changed +343 -34)
* src/colvars_version.h 1.16 (changed +1 -1)
* src/colvars_files.pl 1.6 (changed +1 -0)
* src/colvarproxy_volmaps.h 1.3 (changed +12 -0)
* src/colvarproxy_volmaps.C 1.3 (changed +19 -1)
* src/colvarproxy_vmd_version.h 1.12 (changed +1 -1)
* src/colvarproxy_vmd.h 1.17 (changed +0 -4)
* src/colvarproxy_vmd.C 1.22 (changed +0 -38)
* src/colvarproxy_tcl.h 1.2 (changed +1 -1)
* src/colvarproxy.h 1.21 (changed +119 -8)
* src/colvarproxy.C 1.11 (changed +63 -17)
* src/colvarparse.h 1.12 (changed +5 -1)
* src/colvarparse.C 1.15 (changed +4 -0)
* src/colvarmodule_utils.h 1.1 (added +83 -0)
* src/colvarmodule.h 1.30 (changed +6 -0)
* src/colvarmodule.C 1.28 (changed +3 -0)
* src/colvargrid.h 1.21 (changed +1 -1)
* src/colvargrid.C 1.12 (changed +12 -12)
* src/colvardeps.h 1.12 (changed +1 -0)
* src/colvarcomp_rotations.C 1.13 (changed +4 -4)
* src/colvarcomp_gpath.C 1.3 (changed +4 -4)
* src/colvarcomp_distances.C 1.22 (changed +12 -12)
* src/colvarcomp.C 1.19 (changed +4 -4)
* src/colvaratoms.h 1.14 (changed +7 -19)
* src/colvaratoms.C 1.24 (changed +41 -28)
 2021-02-24johnsEnable native cylinder rendering for ongoing testing of the new OSP_DISJOINT
curves API mode.
* src/OSPRay2DisplayDevice.h 1.4 (changed +3 -3)
* src/OSPRay2DisplayDevice.C 1.4 (changed +10 -6)
 2021-02-20johnsRevised the OSPRay 2.x renderer to use the new OSPRay 2.5.0
curve APIs with OSP_DISJOINT, for rendering cylinders and cones.
* src/OSPRay2Renderer.h 1.10 (changed +2 -4)
* src/OSPRay2Renderer.C 1.32 (changed +46 -43)
Updated OSPRay 2.x renderer to make use of the path tracer and add
experimental support for luminous materials.
* src/OSPRay2Renderer.C 1.31 (changed +65 -18)
 2021-02-19johnsCorrected missing ospRelease() calls on the futures returned from
asynchronous ospRenderFrame() calls.
* src/OSPRay2Renderer.C 1.30 (changed +3 -1)
Updated ANARIRenderer for recent API+spec revisions.
Eliminated ANARIGroup objects, and updated associated calls to
anariNewGeometricModel() and anariNewInstance() and their parameter set calls.
Added short-lived correction to leak of futures from asynchronous
anariRenderFrame() APIs. This will go away when the APIs are revised so
that the futures are implicit rather than explicit objects.
Updated all of the framebuffer creation/mapping and parameter assignment APIs.
* src/ANARIRenderer.C 1.13 (changed +55 -41)
Updated OSPRay 2.x paths for OSPRay 2.5.0
* configure 1.1523 (changed +2 -2)
 2021-02-16johnsAdded runtime dispatch for QuickSurf kernels on ARM64 CPUs with
NEON and FMA SIMD instructions.
* src/QuickSurf.C 1.132 (changed +24 -1)
Added the new ARM64 NEON+FMA QuickSurf kernels to the build.
* configure 1.1522 (changed +1 -0)
Completed AVX2 version of the molecular orbital kernels, based on
single-precision floating point AVX instructions, 32-bit integer
AVX2 instructions needed for the fast exponential approximation, and
single-precision fused-multiply add instructions used throughout.
At present, this kernel assumes availability of FMA, so it cannot be used
on CPUs that have AVX/AVX2 but lack FMA.
* src/Orbital_AVX2.C 1.1 (added +324 -0)
Implented complete molecular orbital kernel for ARM64 NEON SIMD instructions
on CPUs that support FMA instructions. A partial implementation exists for
machines lacking FMA, but more code is needed in the wavefunction loops
to make it complete. The ARM64 NEON exponential approximation uses a
different early-exit testing scheme from x86 SIMD variants, due to
the lack of equivalent instructions to gather high order bits from
multiple SIMD lanes into a single scalar, so this ARM64 NEON code
uses a horizontal maximum scheme to exploit the same early-exit opportunity
in a slightly different way.
* src/Orbital_NEON.C 1.1 (added +322 -0)
Misc cleanup of several leftover ifdef blocks and includes that aren't
needed for runtime CPU dispatch.
* src/QuickSurf_AVX2.C 1.7 (changed +8 -12)
Simplified and streamlined AVX2-specific QuickSurf kernel.
* src/QuickSurf_AVX2.C 1.8 (changed +8 -16)
Wrote a complete first implementation of QuickSuff for ARM64 NEON
SIMD instructions, on machines that have FMA.
Tested on a Mac "M1" processor thus far.
* src/QuickSurf_NEON.C 1.1 (added +457 -0)
 2021-02-11johnsAdded function prototype and runtime dispatch launch code for
NEON SIMD version of the molecular orbital kernel.
* src/Orbital.C 1.160 (changed +34 -1)
Enable compilation of the 16-byte-alignment check helper routine for ARM
for the time being. This should be replaced globally by the newer N-byte
alignment routines, but this is expedient for the moment.
* src/util_simd.C 1.31 (changed +2 -2)
 2021-02-01johnsAdded #ifdef protection for SVE vector length queries on ARM platforms
* src/VMDApp.C 1.581 (changed +2 -2)
Updated the build system to support runtime CPU dispatch for
ARM NEON with FMA instructions for the new Apple "M1" Mac hardware.
* configure 1.1521 (changed +34 -12)
 2021-01-27johnsAdded molecular orbital runtime dispatch logic for the new AVX2 kernel.
* src/Orbital.C 1.159 (changed +50 -12)
Added x86 runtime dispatch AVX2 molecular orbital kernel to the build.
* configure 1.1520 (changed +2 -1)
 2021-01-15johnsCranked version
* configure 1.1519 (changed +1 -1)
Other commits are hidden...

* on non binary files only
Created by cvschangelogbuilder 2.3 (build 1.76)