TinkerTools / tinker9

Tinker9: Next Generation of Tinker with GPU Support
Other
48 stars 27 forks source link

Tinker9 Compilation for CC 89 #229

Closed cdpoon closed 1 year ago

cdpoon commented 1 year ago

We have installed a bunch of servers with L40 GPUs, compute capability 89. When I compile Tinker9 with cc 89, I got the following error.

nvc++-Error-Switch -ta with unknown keyword cc89 -ta=host|multicore|tesla:{[no]autocollapse|ptxinfo} Choose target accelerator (supported only for OpenACC, DEPRECATED please refer to -acc and -gpu) host Compile for serial execution on the host CPU multicore Compile for parallel execution on the host CPU tesla Compile for parallel execution on a Tesla GPU [no]autocollapse Automatically collapse tightly nested parallel loops ptxinfo Print ptxas information make[2]: [src/acc/CMakeFiles/tinker9_acc.dir/build.make:76: src/acc/CMakeFiles/tinker9_acc.dir/amoeba/empoleewald.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:649: src/acc/CMakeFiles/tinker9_acc.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 FATAL: While performing build: while running engine: exit status 2

Is there a way to fix it? I am using NVHPC 22-11. Could that be the problem?

Thanks so much,

CD Poon University of North Carolina at Chapel Hill

zhi-wang commented 1 year ago

It is the problem in the nvcc compiler that cc89 is not supported. Supported cc values should be easy to find in the online documents.

On Mon, Jun 12, 2023 at 8:46 AM cdpoon @.***> wrote:

We have installed a bunch of servers with L40 GPUs, compute capability 89. When I compile Tinker9 with cc 89, I got the following error.

nvc++-Error-Switch -ta with unknown keyword cc89 -ta=host|multicore|tesla:{[no]autocollapse|ptxinfo} Choose target accelerator (supported only for OpenACC, DEPRECATED please refer to -acc and -gpu) host Compile for serial execution on the host CPU multicore Compile for parallel execution on the host CPU tesla Compile for parallel execution on a Tesla GPU [no]autocollapse Automatically collapse tightly nested parallel loops ptxinfo Print ptxas information make[2]: [src/acc/CMakeFiles/tinker9_acc.dir/build.make:76: src/acc/CMakeFiles/tinker9_acc.dir/amoeba/empoleewald.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:649: src/acc/CMakeFiles/tinker9_acc.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 FATAL: While performing build: while running engine: exit status 2

Is there a way to fix it? I am using NVHPC 22-11. Could that be the problem?

Thanks so much,

CD Poon University of North Carolina at Chapel Hill

— Reply to this email directly, view it on GitHub https://github.com/TinkerTools/tinker9/issues/229, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADGWCKIAX322PBEWJD75BPTXK42VNANCNFSM6AAAAAAZDSM7KY . You are receiving this because you are subscribed to this thread.Message ID: @.***>

cdpoon commented 1 year ago

I have NVHPC 22-11 installed. Here is what it says in the nvcc --help command.

    Allowed values for this option:  'compute_35','compute_37','compute_50',
    'compute_52','compute_53','compute_60','compute_61','compute_62','compute_70',
    'compute_72','compute_75','compute_80','compute_86','compute_87','compute_89',
    'compute_90','lto_35','lto_37','lto_50','lto_52','lto_53','lto_60','lto_61',
    'lto_62','lto_70','lto_72','lto_75','lto_80','lto_86','lto_87','lto_89',
    'lto_90','sm_35','sm_37','sm_50','sm_52','sm_53','sm_60','sm_61','sm_62',
    'sm_70','sm_72','sm_75','sm_80','sm_86','sm_87','sm_89','sm_90'.

It looks like compute_89 is supported.

zhi-wang commented 1 year ago

I’m sorry. My bad. I meant nvc++, the acc compiler. nvcc is responsible for the cuda code which is fine.

On Mon, Jun 12, 2023 at 12:41 PM cdpoon @.***> wrote:

I have NVHPC 22-11 installed. Here is what it says in the nvcc --help command.

Allowed values for this option:  'compute_35','compute_37','compute_50',
'compute_52','compute_53','compute_60','compute_61','compute_62','compute_70',
'compute_72','compute_75','compute_80','compute_86','compute_87','compute_89',
'compute_90','lto_35','lto_37','lto_50','lto_52','lto_53','lto_60','lto_61',
'lto_62','lto_70','lto_72','lto_75','lto_80','lto_86','lto_87','lto_89',
'lto_90','sm_35','sm_37','sm_50','sm_52','sm_53','sm_60','sm_61','sm_62',
'sm_70','sm_72','sm_75','sm_80','sm_86','sm_87','sm_89','sm_90'.

It looks like compute_89 is supported.

— Reply to this email directly, view it on GitHub https://github.com/TinkerTools/tinker9/issues/229#issuecomment-1587964756, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADGWCKJKRS6KUBT5DZTJ5J3XK5WFTANCNFSM6AAAAAAZDSM7KY . You are receiving this because you commented.Message ID: @.***>

cdpoon commented 1 year ago

I have tried compiling Tinker9 with the latest NVHPC 23.5 and it gives me the same error. Does it mean we need to wait for future release of the ACC compiler to fix the problem?

zhi-wang commented 1 year ago

I think the problem will always exist without full support in nvc++. It will probably only support the major cc values in each generation. Should be okay to use 80 or 86 (if supported).

On Mon, Jun 12, 2023 at 2:35 PM cdpoon @.***> wrote:

I have tried compiling Tinker9 with the latest NVHPC 23.5 and it gives me the same error. Does it mean we need to wait for future release of the ACC compiler to fix the problem?

— Reply to this email directly, view it on GitHub https://github.com/TinkerTools/tinker9/issues/229#issuecomment-1588139865, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADGWCKPGBTERSEI5TS6TBV3XK6DS5ANCNFSM6AAAAAAZDSM7KY . You are receiving this because you commented.Message ID: @.***>

cdpoon commented 1 year ago

Thanks for the information. I compiled Tinker9 for cc 70, 80, 86 with NVHPC 22.11 and 23.5 without any problem. Will try to run in L40 and see.

cdpoon commented 1 year ago

Tinker9 compiled with NVHPC for cc 70, 80, 86 seems to be working in L40 GPU cc89.