ccsb-scripps / AutoDock-GPU

AutoDock for GPUs and other accelerators
https://ccsb.scripps.edu/autodock
GNU General Public License v2.0
366 stars 101 forks source link

unable to execute batch file operation(--filelist) #224

Open 28YOGESH opened 1 year ago

28YOGESH commented 1 year ago

~/AutoDock-GPU-develop$ ./bin/autodock_gpu_128wi --ffile ./input/1stp/derived/1stp_protein.maps.fld --filelist ./input/1stp/derived/ligand.txt AutoDock-GPU version: v1.5-release

Error: Can't open fld file 1stp_protein.maps.fld. Error: get_gridinfo failed with fld file specified in file list.

This is working for single ligand docking but getting this error while executing multiple ligand docking with batch file operation(--filelist).

Please help.

atillack commented 1 year ago

@28YOGESH Thank you for reporting this. Currently the --filelist batch file is treated as containing the parameters to --ffile, --lfile and --resname from the location AD-GPU is called and independently of where the batch file is located. In other words, the path to the batch file currently is not prepended to its content.

Looking at this now, to me this behavior seems a bit counter-intuitive for relative or not directly specified paths inside the batch file. I'll likely PR a change to this after we had a chance to discuss it internally.

28YOGESH commented 1 year ago

Thanks @atillack for your support. I have done the modifications as you suggested and it is working and giving desired output upto the ninth ligand, but while running the ninth job it is giving the following error:

Running Job #9: Device: Quadro P5000 Grid map file: ./input/1stp/derived/fresh/protein.maps.fld Ligand file: ./input/1stp/derived/fresh/split/ligand_all_ligand_000009.pdbqt Using heuristics: (capped) number of evaluations set to 1132076 Local-search chosen method is: ADADELTA (ad)

Rest of Setup time 0.002992s

Executing docking runs, stopping automatically after either reaching 0.15 kcal/mol standard deviation of the best molecules of the last 4 * 5 generations, 42000 generations, or 1132076 evaluations:

Generations | Evaluations | Threshold | Average energy of best 10% | Samples | Best energy ------------+--------------+------------------+------------------------------+---------+------------------- 0 | 150 |47995.17 kcal/mol |44211.60 +/- 1008.95 kcal/mol | 4 |43554.51 kcal/mol gpu_gradient_minAD_kernel an illegal memory access was encountered autodock_gpu_128wi: ./cuda/kernel_ad.cu:404: void gpu_gradient_minAD(uint32_t, uint32_t, float, float): Assertion `0' failed. Aborted (core dumped)

atillack commented 1 year ago

@28YOGESH That's an interesting location for a crash and I'm interested to find out what's going on: Could you post the ligand? Also, are you using the 1.5.3 release version or the current develop branch?

28YOGESH commented 1 year ago

Yes, I am using 1.5.3 version and I have tried to remove the ligand and do it again but again it is stucking at the same 9th job and giving the same error.

however the 9th ligand is :

REMARK Name = Compound 9 REMARK 3 active torsions: REMARK status: ('A' for Active; 'I' for Inactive) REMARK 1 A between atoms: C_2 and C_4 REMARK 2 A between atoms: N_3 and C_5 REMARK 3 A between atoms: C_6 and C_11 REMARK x y z vdW Elec q Type REMARK __ _ __ ____ ROOT ATOM 4 C UNL 1 1.732 -1.500 0.000 0.00 0.00 +0.000 A ATOM 6 C UNL 1 0.923 -2.088 0.000 0.00 0.00 +0.000 A ATOM 7 C UNL 1 2.541 -2.088 0.000 0.00 0.00 +0.000 A ATOM 10 O UNL 1 1.232 -3.039 0.000 0.00 0.00 +0.000 OA ATOM 12 N UNL 1 2.232 -3.039 0.000 0.00 0.00 +0.000 NA ENDROOT BRANCH 4 2 ATOM 1 O UNL 1 0.866 0.000 0.000 0.00 0.00 +0.000 OA ATOM 2 C UNL 1 1.732 -0.500 0.000 0.00 0.00 +0.000 C ATOM 3 N UNL 1 2.598 0.000 0.000 0.00 0.00 +0.000 NA BRANCH 3 5 ATOM 5 C UNL 1 3.464 -0.500 0.000 0.00 0.00 +0.000 C ATOM 8 C UNL 1 4.430 -0.241 0.000 0.00 0.00 +0.000 C ATOM 9 C UNL 1 3.723 -1.466 0.000 0.00 0.00 +0.000 C ATOM 13 C UNL 1 4.689 -1.207 0.000 0.00 0.00 +0.000 C ENDBRANCH 3 5 ENDBRANCH 4 2 BRANCH 6 11 ATOM 11 C UNL 1 -0.028 -1.779 0.000 0.00 0.00 +0.000 C ATOM 14 C UNL 1 -0.697 -1.036 0.000 0.00 0.00 +0.000 C ATOM 15 C UNL 1 -1.006 -1.987 0.000 0.00 0.00 +0.000 C ENDBRANCH 6 11 TORSDOF 3

rwxayheee commented 2 months ago

Yes, I am using 1.5.3 version and I have tried to remove the ligand and do it again but again it is stucking at the same 9th job and giving the same error.

however the 9th ligand is :

REMARK Name = Compound 9 REMARK 3 active torsions: REMARK status: ('A' for Active; 'I' for Inactive) REMARK 1 A between atoms: C_2 and C_4 REMARK 2 A between atoms: N_3 and C_5 REMARK 3 A between atoms: C_6 and C_11 REMARK x y z vdW Elec q Type REMARK __ _ __ ____ ROOT ATOM 4 C UNL 1 1.732 -1.500 0.000 0.00 0.00 +0.000 A ATOM 6 C UNL 1 0.923 -2.088 0.000 0.00 0.00 +0.000 A ATOM 7 C UNL 1 2.541 -2.088 0.000 0.00 0.00 +0.000 A ATOM 10 O UNL 1 1.232 -3.039 0.000 0.00 0.00 +0.000 OA ATOM 12 N UNL 1 2.232 -3.039 0.000 0.00 0.00 +0.000 NA ENDROOT BRANCH 4 2 ATOM 1 O UNL 1 0.866 0.000 0.000 0.00 0.00 +0.000 OA ATOM 2 C UNL 1 1.732 -0.500 0.000 0.00 0.00 +0.000 C ATOM 3 N UNL 1 2.598 0.000 0.000 0.00 0.00 +0.000 NA BRANCH 3 5 ATOM 5 C UNL 1 3.464 -0.500 0.000 0.00 0.00 +0.000 C ATOM 8 C UNL 1 4.430 -0.241 0.000 0.00 0.00 +0.000 C ATOM 9 C UNL 1 3.723 -1.466 0.000 0.00 0.00 +0.000 C ATOM 13 C UNL 1 4.689 -1.207 0.000 0.00 0.00 +0.000 C ENDBRANCH 3 5 ENDBRANCH 4 2 BRANCH 6 11 ATOM 11 C UNL 1 -0.028 -1.779 0.000 0.00 0.00 +0.000 C ATOM 14 C UNL 1 -0.697 -1.036 0.000 0.00 0.00 +0.000 C ATOM 15 C UNL 1 -1.006 -1.987 0.000 0.00 0.00 +0.000 C ENDBRANCH 6 11 TORSDOF 3

The input structure of the ligand is flat (all 0s) on the Z dimension. Not very sure if bad ligand conformations might lead to void gpu_gradient_minAD(uint32_t, uint32_t, float*, float*): Assertion0' failed.` as also reported in #260

diogomart commented 2 months ago

@rwxayheee good catch. Two further problems: all bond lengths are 1.0 Angstrom, and BRANCH keywords use the atom indices specified in the file (AutoDock-GPU ignores such values and uses the order of the atom instead).

diogomart commented 2 months ago

Maybe AD-GPU is building bonds between atoms that move relative to each other, i.e., atoms in different rigid groups.

@28YOGESH how did you make this PDBQT?