Skip to content
Permalink
Browse files

updated preamble and changed name to AutoDock-GPU

  • Loading branch information
diogomart committed Jul 12, 2019
1 parent 1954fb7 commit 89c9a2e076315c2e060a062b2fe03788f2662abf
Showing with 33 additions and 1,040 deletions.
  1. +1 −1 .gitignore
  2. +6 −2 LICENSE
  3. +1 −1 Makefile
  4. +3 −3 README.md
  5. +0 −22 common/calcenergy_basic.h
  6. +0 −22 common/defines.h
  7. +0 −22 device/auxiliary_genetic.cl
  8. +2 −24 device/calcMergedEneGra.cl
  9. +0 −22 device/calcenergy.cl
  10. +2 −24 device/calcgradient.cl
  11. +0 −22 device/kernel1.cl
  12. +0 −22 device/kernel2.cl
  13. +0 −22 device/kernel3.cl
  14. +0 −22 device/kernel4.cl
  15. +1 −1 device/kernel_sd.cl
  16. +2 −2 doc/readme/readme_users.md
  17. +0 −22 host/inc/calcenergy.h
  18. +0 −22 host/inc/getparameters.h
  19. +0 −22 host/inc/miscellaneous.h
  20. +0 −22 host/inc/performdocking.h
  21. +0 −22 host/inc/processgrid.h
  22. +0 −22 host/inc/processligand.h
  23. +0 −22 host/inc/processresult.h
  24. +0 −22 host/src/calcenergy.cpp
  25. +0 −22 host/src/getparameters.cpp
  26. +1 −23 host/src/main.cpp
  27. +0 −22 host/src/miscellaneous.cpp
  28. +0 −22 host/src/performdocking.cpp
  29. +0 −22 host/src/processgrid.cpp
  30. +0 −22 host/src/processligand.cpp
  31. +3 −25 host/src/processresult.cpp
  32. +2 −1 preamble_license
  33. +9 −9 remove_preamble_license.sh
  34. +0 −22 wrapcl/inc/BufferObjects.h
  35. +0 −22 wrapcl/inc/CommandQueues.h
  36. +0 −22 wrapcl/inc/Contexts.h
  37. +0 −22 wrapcl/inc/Devices.h
  38. +0 −22 wrapcl/inc/ImportBinary.h
  39. +0 −22 wrapcl/inc/ImportSource.h
  40. +0 −22 wrapcl/inc/Kernels.h
  41. +0 −22 wrapcl/inc/Platforms.h
  42. +0 −22 wrapcl/inc/Programs.h
  43. +0 −22 wrapcl/inc/commonMacros.h
  44. +0 −22 wrapcl/inc/listAttributes.h
  45. +0 −22 wrapcl/src/BufferObjects.cpp
  46. +0 −22 wrapcl/src/CommandQueues.cpp
  47. +0 −22 wrapcl/src/Contexts.cpp
  48. +0 −22 wrapcl/src/Devices.cpp
  49. +0 −22 wrapcl/src/ImportBinary.cpp
  50. +0 −22 wrapcl/src/ImportSource.cpp
  51. +0 −22 wrapcl/src/Kernels.cpp
  52. +0 −22 wrapcl/src/Platforms.cpp
  53. +0 −22 wrapcl/src/Programs.cpp
  54. +0 −22 wrapcl/src/listAttributes.cpp
@@ -1,4 +1,4 @@
# OCLADock specific files
# AutoDock-GPU specific files
initpop.txt
*.dlg
*.xml
@@ -290,8 +290,12 @@ to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

ocladock
Copyright (C) 2017 docking
AutoDock-GPU, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
For some of the code, Copyright (C) 2019 Computational Structural Biology Center, the Scripps Research Institute.

AutoDock is a Trade Mark of the Scripps Research Institute.


This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -57,7 +57,7 @@ K_NAMES=-DK1=$(K1_NAME) -DK2=$(K2_NAME) -DK3=$(K3_NAME) -DK4=$(K4_NAME) -DK5=$(K
# Kernel flags
KFLAGS=-DKRNL_SOURCE=$(KRNL_DIR)/$(KRNL_MAIN) -DKRNL_DIRECTORY=$(KRNL_DIR) -DKCMN_DIRECTORY=$(KCMN_DIR) $(K_NAMES)

TARGET := ocladock
TARGET := autodock
ifeq ($(DEVICE), CPU)
TARGET:=$(TARGET)_cpu
else ifeq ($(DEVICE), GPU)
@@ -30,7 +30,7 @@ make DEVICE=<TYPE> NUMWI=<NWI>
| `<NWI>` | OpenCL work-group size | `16`, `32`, `64`, `128`, `256` |


After successful compilation, the host binary **ocladock_&lt;type&gt;_&lt;N&gt;wi** is placed under [bin](./bin).
After successful compilation, the host binary **autodock_&lt;type&gt;_&lt;N&gt;wi** is placed under [bin](./bin).

| Binary-name portion | Description | Values |
|:-------------------:|:----------------------:|:------------------------------:|
@@ -41,7 +41,7 @@ After successful compilation, the host binary **ocladock_&lt;type&gt;_&lt;N&gt;w

## Basic command
```zsh
./bin/ocladock_<type>_<N>wi \
./bin/autodock_<type>_<N>wi \
-ffile <protein>.maps.fld \
-lfile <ligand>.pdbqt \
-nrun <nruns>
@@ -54,7 +54,7 @@ After successful compilation, the host binary **ocladock_&lt;type&gt;_&lt;N&gt;w

## Example
```zsh
./bin/ocladock_gpu_64wi \
./bin/autodock_gpu_64wi \
-ffile ./input/1stp/derived/1stp_protein.maps.fld \
-lfile ./input/1stp/derived/1stp_ligand.pdbqt \
-nrun 10
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/


#ifndef CALCENERGY_BASIC_H_
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/


#ifndef DEFINES_H_
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/


// -------------------------------------------------------
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

// IMPORTANT: The following block contains definitions
// already made either in energy or gradient calculation files.
@@ -508,7 +486,7 @@ partial_interE[get_local_id(0)] += TRILININTERPOL(cube, weights);

// -------------------------------------------------------------------
// Deltas dx, dy, dz are already normalized
// (by host/src/getparameters.cpp) in OCLaDock.
// (by host/src/getparameters.cpp) in AutoDock-GPU.
// The correspondance between vertices in xyz axes is:
// 0, 1, 2, 3, 4, 5, 6, 7 and 000, 100, 010, 001, 101, 110, 011, 111
// -------------------------------------------------------------------
@@ -1039,7 +1017,7 @@ barrier(CLK_LOCAL_MEM_FENCE);
// Scaling gradient for translational genes as
// their corresponding gradients were calculated in the space
// where these genes are in Angstrom,
// but OCLaDock translational genes are within in grids
// but AutoDock-GPU translational genes are within in grids
gradient_genotype[0] *= dockpars_grid_spacing;
gradient_genotype[1] *= dockpars_grid_spacing;
gradient_genotype[2] *= dockpars_grid_spacing;
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

//#define DEBUG_ENERGY_KERNEL

@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

/*
#include "calcenergy_basic.h"
@@ -434,7 +412,7 @@ void gpu_calc_gradient(

// -------------------------------------------------------------------
// Deltas dx, dy, dz are already normalized
// (by host/src/getparameters.cpp) in OCLaDock.
// (by host/src/getparameters.cpp) in AutoDock-GPU.
// The correspondance between vertices in xyz axes is:
// 0, 1, 2, 3, 4, 5, 6, 7 and 000, 100, 010, 001, 101, 110, 011, 111
// -------------------------------------------------------------------
@@ -851,7 +829,7 @@ void gpu_calc_gradient(
// Scaling gradient for translational genes as
// their corresponding gradients were calculated in the space
// where these genes are in Angstrom,
// but OCLaDock translational genes are within in grids
// but AutoDock-GPU translational genes are within in grids
gradient_genotype[0] *= dockpars_grid_spacing;
gradient_genotype[1] *= dockpars_grid_spacing;
gradient_genotype[2] *= dockpars_grid_spacing;
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

//#define DEBUG_ENERGY_KERNEL1

@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/


__kernel void __attribute__ ((reqd_work_group_size(NUM_OF_THREADS_PER_BLOCK,1,1)))
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/


__kernel void __attribute__ ((reqd_work_group_size(NUM_OF_THREADS_PER_BLOCK,1,1)))
@@ -1,25 +1,3 @@
/*
OCLADock, an OpenCL implementation of AutoDock 4.2 running a Lamarckian Genetic Algorithm
Copyright (C) 2017 TU Darmstadt, Embedded Systems and Applications Group, Germany. All rights reserved.
AutoDock is a Trade Mark of the Scripps Research Institute.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

//#define DEBUG_ENERGY_KERNEL4

@@ -291,7 +291,7 @@ gradient_minSD(
do {
#if 0
// Specific input genotypes for a ligand with no rotatable bonds (1ac8).
// Translation genes must be expressed in grids in OCLADock (genotype [0|1|2]).
// Translation genes must be expressed in grids in AutoDock-GPU (genotype [0|1|2]).
// However, for testing purposes,
// we start using translation values in real space (Angstrom): {31.79575, 93.743875, 47.699875}
// Rotation genes are expresed in the Shoemake space: genotype [3|4|5]
@@ -37,7 +37,7 @@ For more details, go to the [developers section](readme_developers.md#to-keep-in

## Basic
```zsh
./bin/ocladock_<type>_<N>wi -ffile <protein>.maps.fld -lfile <ligand>.pdbqt -nrun <nruns>
./bin/autodock_<type>_<N>wi -ffile <protein>.maps.fld -lfile <ligand>.pdbqt -nrun <nruns>
```
| Mandatory options | Description | Value |
|:-----------------:|:-------------:|:-------------------------:|
@@ -46,7 +46,7 @@ For more details, go to the [developers section](readme_developers.md#to-keep-in

## Example
```zsh
./bin/ocladock_gpu_64wi -ffile ./input/1stp/derived/1stp_protein.maps.fld -lfile ./input/1stp/derived/1stp_ligand.pdbqt -nrun 10
./bin/autodock_gpu_64wi -ffile ./input/1stp/derived/1stp_protein.maps.fld -lfile ./input/1stp/derived/1stp_ligand.pdbqt -nrun 10
Kernel source file: ./device/calcenergy.cl
Kernel compilation flags: -I ./device -I ./common -DN64WI

0 comments on commit 89c9a2e

Please sign in to comment.
You can’t perform that action at this time.