Ildg 1.2#15
Conversation
edbennett
left a comment
There was a problem hiding this comment.
Hi Gaurav
Many thanks for your work on this so far, I think we're almost there.
I've requested some changes in the attached review. Most of them are pretty trivial, relating to not wanting to pollute the Git logs. (Upstream has got annoyed at other people doing this before, and I want us to stay on their good side.)
One thing I haven't highlighted specific instances of: where you add new functionality (either new functions, or significant edits to existing ones), please can you add detailed comments describing what you've done, linking to reference material where relevant? I realise this isn't standard practice in Grid, but our lives would have been a lot easier if it were, and so I'm aiming for our new contributions to be better about this to make life easier for the next person.
For example, reconstructSp should have a 5–10 line comment above it describing what the expected block structure of a symplectic matrix is, and hence what A and B in the comments mean, and have a link to the relevant section of the ILDG binary spec 1.2.
| @@ -107,2 +99,2 @@ | |||
| public: | |||
| constexpr static const char* const Name = "Binary"; | |||
There was a problem hiding this comment.
This change and the next few aren't related to this PR; in principle you could rebase your branch onto the current telos-collaboration:develop to get GitHub to remove them.
|
P.S. one thing I meant to add in the message yesterday: please make sure to update the documentation in |
…ge after ildg_binary_data
…teConfiguration now has template args specifying the gauge group and whether to write to reduced storage format. Started working on a reduced storage test.
…ingle precision writing
…ow the default is to write to double (with no group reduction). added Test_ildg_reducedfmt_io for testing writing/reading to reduced group format and single/double precision.
…plated on the gauge group.
…r end-to-end test.
…Sp differentiation
…ding to indentation issues
…y explain the <rows/> element logic when reading ildg lattices.
…inting with reduced format su/sp lattices
…ckwards compatibility. this necessitates explicitly specifying an additional template param in the ildg reduced format test.
…ckwards compatibility. this necessitates explicitly specifying an additional template param in the ildg reduced format test.
…emove little endian from initialisation check
merge feature - hmc checkpointing with ildg reduced format read/write functionality.
|
Many thanks. I tidied up a couple of loose ends. I've just tested this on Tursa, and it doesn't build, giving errors like: configure line was: Have you been able to successfully test on Tursa? |
huh, i will build on tursa and take a look at this. I have tested on sunbird only so far. |
|
that should fix the |
Test_ildg_reducedfmt_io.cctotests/IOwhich checks the various read/write options work.Much of the logic for writing fields is worked out in
IldgWriter::writeConfigurationat compile time via template arguments and if constexprs.group_name,matrix_fmt, andfp_fmtare the relevant template parameters.The logic for reading fields in
IldgReader::readConfigurationhas to be done at runtime. Extra intermediate datatypes for Sp(N) fields are specified inparallelIO/Metadata.h