mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-03 21:44:33 +00:00 
			
		
		
		
	Updated to do list
This commit is contained in:
		
							
								
								
									
										31
									
								
								TODO
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								TODO
									
									
									
									
									
								
							@@ -2,41 +2,39 @@
 | 
				
			|||||||
  - use protocol buffers? replace xmlReader/Writer ec..
 | 
					  - use protocol buffers? replace xmlReader/Writer ec..
 | 
				
			||||||
  - Binary use htonll, htonl
 | 
					  - Binary use htonll, htonl
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*** Hacks and bug fixes to clean up
 | 
				
			||||||
* Had to hack assignment to 1.0 in the tests/Grid_gamma test
 | 
					* Had to hack assignment to 1.0 in the tests/Grid_gamma test
 | 
				
			||||||
y
 | 
					* norm2l is a hack. figure out syntax error and make this norm2 c.f. tests/Grid_gamma.cc
 | 
				
			||||||
 | 
					* Reduce implemention is poor
 | 
				
			||||||
 | 
					* Bug in SeedFixedIntegers gives same output on each site.
 | 
				
			||||||
 | 
					* Bug in RNG with complex numbers ; only filling real values; need helper function -- DONE
 | 
				
			||||||
 | 
					* Conformable test in Cshift routines.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*** Functionality
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Command line args for geometry, simd, etc. layout. Is it necessary to have
 | 
				
			||||||
 | 
					  user pass these? Is this a QCD specific?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Strong test for norm2, conj and all primitive types. -- Grid_simd test is almost there
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Expression template engine:
 | 
					* Expression template engine:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   - Audit
 | 
					   - Audit
 | 
				
			||||||
   - Introduce base clase for Grid Tensors.
 | 
					   - Introduce base clase for Grid Tensors.
 | 
				
			||||||
   - Introduce norm2 unary op.
 | 
					   - Introduce norm2 unary op.
 | 
				
			||||||
   - Introduce conversion automatic from expression to Lattice<vobj>
 | 
					   - Introduce conversion automatic from expression to Lattice<vobj>
 | 
				
			||||||
   -
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Command line args for geometry, simd, etc. layout. Is it necessary to have
 | 
					 | 
				
			||||||
  user pass these? Is this a QCD specific?
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
* CovariantShift support                             -----Use a class to store gauge field? (parallel transport?)
 | 
					* CovariantShift support                             -----Use a class to store gauge field? (parallel transport?)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Strong test for norm2, conj and all primitive types. -- Grid_simd test is almost there
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* Reduce implemention is poor
 | 
					 | 
				
			||||||
* Bug in SeedFixedIntegers gives same output on each site.
 | 
					 | 
				
			||||||
* Bug in RNG with complex numbers ; only filling real values; need helper function -- DONE
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* norm2l is a hack. figure out syntax error and make this norm2 c.f. tests/Grid_gamma.cc
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
** Make the Tensor types and Complex etc... play more nicely.
 | 
					** Make the Tensor types and Complex etc... play more nicely.
 | 
				
			||||||
 | 
					 | 
				
			||||||
  - TensorRemove is a hack, come up with a long term rationalised approach to Complex vs. Scalar<Scalar<Scalar<Complex > > >
 | 
					  - TensorRemove is a hack, come up with a long term rationalised approach to Complex vs. Scalar<Scalar<Scalar<Complex > > >
 | 
				
			||||||
  QDP forces use of "toDouble" to get back to non tensor scalar. This role is presently taken TensorRemove, but I
 | 
					  QDP forces use of "toDouble" to get back to non tensor scalar. This role is presently taken TensorRemove, but I
 | 
				
			||||||
  want to introduce a syntax that does not require this.
 | 
					  want to introduce a syntax that does not require this.
 | 
				
			||||||
 | 
					 | 
				
			||||||
  - Reductions that contract indices on a site should always demote the tensor structure.
 | 
					  - Reductions that contract indices on a site should always demote the tensor structure.
 | 
				
			||||||
    norm2(), innerProduct.
 | 
					    norm2(), innerProduct.
 | 
				
			||||||
 | 
					 | 
				
			||||||
  - Result of Sum(), SliceSum // spatial sums
 | 
					  - Result of Sum(), SliceSum // spatial sums
 | 
				
			||||||
              trace, traceIndex etc.. do not.
 | 
					              trace, traceIndex etc.. do not.
 | 
				
			||||||
 | 
					 | 
				
			||||||
  - problem arises because "trace" returns Lattice<TComplex> moving everything down to Scalar,
 | 
					  - problem arises because "trace" returns Lattice<TComplex> moving everything down to Scalar,
 | 
				
			||||||
    and then Sum and SliceSum to not remove the Scalars. This would be fixed if we 
 | 
					    and then Sum and SliceSum to not remove the Scalars. This would be fixed if we 
 | 
				
			||||||
    template specialize the scalar scalar scalar sum and SliceSum,  on the basis of being
 | 
					    template specialize the scalar scalar scalar sum and SliceSum,  on the basis of being
 | 
				
			||||||
@@ -46,7 +44,6 @@ y
 | 
				
			|||||||
 - I have collated into single location at least.
 | 
					 - I have collated into single location at least.
 | 
				
			||||||
 - Need to use _mm_*insert/extract routines.
 | 
					 - Need to use _mm_*insert/extract routines.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Conformable test in Cshift routines.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Flavour matrices?
 | 
					* Flavour matrices?
 | 
				
			||||||
* Pauli, SU subgroup, etc.. 
 | 
					* Pauli, SU subgroup, etc.. 
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user