JeffersonLab / chroma

The Chroma Software System for Lattice QCD
http://jeffersonlab.github.io/chroma
Other
57 stars 51 forks source link

Building Current Master HEAD with QDP-JIT #5

Closed bjoo closed 2 years ago

bjoo commented 10 years ago

Hi, The current chroma master HEAD revision needs the latest QDPXX code to build it, with support for user created SubLattice's. These were introduced into QDPXX in late May. QDP-JIT/PTX master was last committed to prior to this on April 24th, and I had trouble building the latest chroma master (3b3adc2d7c46fbf05eff15d11b90da53f5891010) against the latest QDP-JIT (1438924c6c211aa0e960d31e65b4e910a4a0fae7), tho I was successful building against the regular QDPXX (229c86dbacf8254439c98afa5a288f24895529b6).

Ultimately after a bit of a faff tracking, I found the last version of Chroma I could build against QDP-JIT in full double precision came from Chroma commit (55c054faac6094004fb44f7797f75469f2cf96b7). Versions of Chroma immediately before this commit had a type mismatch on the template used in MOD_t (LatticeColorVector):

This broke builds in DP as the TimeSliceIO param of MOD_t was LatticeColorVector, but in the calling code a TimeSliceIO with template param LatticeColorVecF was explicitly used in the eigen_source.get() call.

A workaround for this issue is: use Chroma commit 55c054faac6094004fb44f7797f75469f2cf96b7 with QDP-JIT

A full fix would involve bringing QDP-JIT up to consistency with QDPXX regarding the SubLattice stuff.