Unable to compile with GPU package

(I apologize in advance if I am missing something simple, but I have tried to cover all my bases: searched mailing list, read section_accelerate documentation for installing the package, tried various combinations of other packages, altered makefiles.)

I am getting a compilation error:

pair_coul_long_gpu.cpp(158): error #165: too few arguments in function call
if (ncoultablebits) init_tables();
^

compilation aborted for pair_coul_long_gpu.cpp (code 2)

This occurs in any file with the function init_tables() and a _gpu extension. In all other files with init_tables, the function takes two arguments (double cut_coul, and double* cut_respa). The function is listed in pair.h as: virtual void init_tables(double, double *);

I have successfully compiled libgpu.a in the lib/gpu directory. I am using the latest version of LAMMPS (as of Oct 29) from the GIT repository. Is there something I need to alter? Let me know if you need some other sort of information.

Thank you,
Nick

(I apologize in advance if I am missing something simple, but I have tried
to cover all my bases: searched mailing list, read section_accelerate
documentation for installing the package, tried various combinations of
other packages, altered makefiles.)

I am getting a compilation error:

pair_coul_long_gpu.cpp(158): error #165: too few arguments in function call
    if (ncoultablebits) init_tables();
                                    ^

compilation aborted for pair_coul_long_gpu.cpp (code 2)

This occurs in any file with the function init_tables() and a _gpu
extension. In all other files with init_tables, the function takes two
arguments (double cut_coul, and double* cut_respa). The function is listed
in pair.h as: virtual void init_tables(double, double *);

I have successfully compiled libgpu.a in the lib/gpu directory. I am using
the latest version of LAMMPS (as of Oct 29) from the GIT repository. Is
there something I need to alter? Let me know if you need some other sort of
information.

hi nick,

this is a problem that results from some refactoring
of the coulomb tabulation code in the KSPACE package
that has not (yet) been adapted for the GPU package.

for the time being, you could roll back your git checkout
to commit: 6a4b2a601cc0ca31a4c26afa788b0073d783cc14

or download it as a snapshot:
http://git.icms.temple.edu/git/?p=lammps-ro.git;a=snapshot;h=6a4b2a601cc0ca31a4c26afa788b0073d783cc14;sf=tgz

or you'd have to wait for a patch. it may be as simple
as changing the calling sequence of the calls to
Pair::init_tables(), but let me have a closer look first.

cheers,
    axel.

(I apologize in advance if I am missing something simple, but I have tried
to cover all my bases: searched mailing list, read section_accelerate
documentation for installing the package, tried various combinations of
other packages, altered makefiles.)

I am getting a compilation error:

pair_coul_long_gpu.cpp(158): error #165: too few arguments in function call
    if (ncoultablebits) init_tables();
                                    ^

compilation aborted for pair_coul_long_gpu.cpp (code 2)

This occurs in any file with the function init_tables() and a _gpu
extension. In all other files with init_tables, the function takes two
arguments (double cut_coul, and double* cut_respa). The function is listed
in pair.h as: virtual void init_tables(double, double *);

I have successfully compiled libgpu.a in the lib/gpu directory. I am using
the latest version of LAMMPS (as of Oct 29) from the GIT repository. Is
there something I need to alter? Let me know if you need some other sort of
information.

hi nick,

this is a problem that results from some refactoring
of the coulomb tabulation code in the KSPACE package
that has not (yet) been adapted for the GPU package.

for the time being, you could roll back your git checkout
to commit: 6a4b2a601cc0ca31a4c26afa788b0073d783cc14

or download it as a snapshot:
http://git.icms.temple.edu/git/?p=lammps-ro.git;a=snapshot;h=6a4b2a601cc0ca31a4c26afa788b0073d783cc14;sf=tgz

or you'd have to wait for a patch. it may be as simple
as changing the calling sequence of the calls to
Pair::init_tables(), but let me have a closer look first.

looks like there are some additional changes required
to pppm_gpu.cpp. you are probably best off using
an older version of LAMMPS for the time being.
mike or steve or i will send out a notification as soon
as those issues are fixed.

regards,
    axel.

Paul - can you take a look at this, with Mike if needed.
This is due to your changes to the init_tables() func.

Steve

Yes, I'll take a look.

Paul

Nick, thanks for pointing out the problem here. I've updated the pair styles in the GPU package to correspond with the changes in init_tables(). But Axel is right that pppm_gpu.cpp also needs to be updated to be in harmony with recent PPPM changes. Looks like these are due to changes Steve made a couple of weeks ago, so I'm going to pass the baton back to Steve at this point.

Paul