Accelerating molecular docking on Graphics Processors Simon McIntosh-Smith Richard B. Sessions University of Bristol, UK [email protected] , [email protected] 1
Jun 02, 2015
Accelerating molecular docking on Graphics Processors
Simon McIntosh-Smith Richard B. Sessions University of Bristol, UK [email protected], [email protected]
1
! Drug docking examples: Elastase inhibitors
2
! Prion disease Prion protein behind Creutzfeld-Jacob disease in humans and shown here binding with a (pink) porphyrin-based ligand The porphyrin's bound iron ion is just showing in yellow
3
1,719 atoms in the protein 53 atoms in the ligand
! BUDE: Bristol University Docking Engine
Typical docking scoring functions
Empirical Free Energy Forcefield
BUDE
Free Energy calculations MM1,2 QM/MM3
Entropy: solvation configurational Electrostatics All atom Explicit solvent
No Yes Yes Approx Approx Yes ? Approx Yes No Yes Yes No No Yes
Accuracy
Speed
1. MD Tyka, AR Clarke, RB Sessions, J. Phys. Chem. B 110 17212-20 (2006)
2. MD Tyka, RB Sessions, AR Clarke, J. Phys. Chem. B 111 9571-80 (2007)
3. CJ Woods, FR Manby, AJ Mulholland, J. Chem. Phys. 128 014109 (2008) 4
! Empirical Free Energy Function (atom-atom)
ΔGligand binding = i=1∑
Nprotein
j=1∑Nligand
f(xi,xj)
Parameterised using experimental data†
† N. Gibbs, A.R. Clarke & R.B. Sessions, "Ab-initio Protein Folding using Physicochemical Potentials and a Simplified Off-Lattice Model", Proteins 43:186-202,2001 5
! Redocking into Xray Structure
6 1CIL (Human carbonic anhydrase II)
! Another example
7 1EZQ (Human Factor XA)
! Self docking results (Ligand Binding Database)
8
0 2 4 6 8
10 12 14 16 18 20
3b65
3g
0w
1hfs
3e
92
2fzz
1z
95
1mq6
3i
5z
2hvc
1m
q5
2nw
4 3d
83
3d7z
1k
v2
1ezq
2p
16
2cji
2i0d
3e
93
1hfc
2y
xj
3ibu
1w
82
2qo8
2i
s7
1nfx
1f
js
1nfw
3e
5a
2adu
1g
cz
3ibn
1c
il 3b
yz
2hoc
1i
91
2oaz
1s
2q
2rbe
3b
zu
1mnc
1u
sn
2pvh
2g
v7
1jg0
1l
qd
1tsl
3g
9l
2zb0
3i
6o
2hb3
2b
q6
0
5
10
15
20
3i5z
1k
v2
3d7z
3e
92
3b65
3g
0w
2cji
1z95
1h
fs
2nw
4 2p
16
2fzz
1w
82
1mq6
2h
vc
3d83
2y
xj
3e5a
1m
q5
2i0d
1f
js
1nfx
1h
fc
2oaz
3i
bu
3e93
1n
fw
1ezq
1c
il 2q
o8
2is7
2p
vh
2rbe
2a
du
3ibn
3b
yz
1gcz
2g
v7
3i6o
2h
b3
1s2q
3b
zu
3g9l
1j
g0
2hoc
1i
91
1mnc
1u
sn
1tsl
1l
qd
2bq6
2z
b0
RMSD
Best pose (by binding energy)
Best pose in top 100 poses (by binding energy)
! What are GPUs and OpenCL all about?
GPU
CPU CPU A modern computer includes: – One or more CPUs – One or more GPUs
9
OpenCL (Open Compute Language) lets programmers write a single portable program that uses ALL
resources in the heterogeneous platform
GPU
! BUDE Acceleration with OpenCL
GA – like,
energy minimisation
Geometry
(transform ligand)
Energy
i=1∑Nprot
j=1∑Nlig
f(xi,xj)
( ) Rx Rxy Rxz Tx Ryx Ry Ryz Ty Rzx Rzy Rz Tz
Energy of pose
START (input)
(output) END
Copy protein and ligand coordinates
(once)
Host Processor PCI Express Bus GPU accelerator 10 "Benchmarking energy efficiency, power costs and carbon emissions on heterogeneous systems", Simon McIntosh-Smith, Terry Wilson,
Amaurys Avila Ibarra, Jon Crisp and Richard B.Sessions, The Computer Journal, September 12th 2011. DOI: 10.1093/comjnl/bxr091
! Systems benchmarked High-end: • Supermicro 1U dual
GPU server • Two Intel 5500 series
2.4 GHz Xeon ‘Nehalem’ quad-core processors
• Two Nvidia C2050 ‘Fermi’ GPUs or
• Two AMD ‘Cypress’ FirePro V7800s
Medium-end: • Workstation with 1
CPU & 1 GPU • Intel E8500 3.16 GHz
dual core CPU • Previous generation
Nvidia consumer-level GPU, the GTX280
11
! Supermicro GPU server
12
! Systems benchmarked Middle-end: • Workstation based on
a 3-core AMD 2.8 GHz Phenom II X3 720
• 4 GBytes of DRAM • No GPU!
Low-end: • Laptop based on an
Intel Core2Duo SU9400 ‘Penryn’ 1.4 GHz CPU
• 4 GBytes of DRAM • No GPU!
13
! Benchmarking methodology
14
• Use the same power measurement equipment for all the systems under test
• Watts Up? Pro meter • Measures complete system
power‘at the wall’ • Run as fast as possible on all available
resources (i.e. all cores or all GPUs simultaneously)
! Relative performance
15
162 seconds per simulation
1,120 seconds per simulation
Less than 2 days to screen a library of 1 million drug candidates on 1000 GPUs
6.9X speedup
! Relative energy efficiency
16
0.011 kWh per simulation
0.034 kWh per simulation
0.011 kWh = 0.16 pence per simulation 1 million simulations GPUs save £3,680
on energy costs for one experiment
68% energy reduction for the same work
! Future work • Modify the code to use the CPUs and
GPUs at the same time (done) • Further optimisations (done – code
already several times faster) • Refine forcefield (in progress … forever) • Improvements to the Genetic Algorithm
and further trimming of the search space (done)
17
! For an introduction to GPUs The GPU Computing Revolution – a Knowledge Transfer Report from the London Mathematical Society and the KTN for Industrial Mathematics • https://ktn.innovateuk.org/web/mathsktn/
articles/-/blogs/the-gpu-computing-revolution
18
! Conclusions • GPUs can yield big performance increases if your
application has enough of the right sort of parallelism • GPUs can can also result in significant savings in
energy costs (and equipment costs) • OpenCL can work just as well for multi-core CPUs as
it does for GPUs
It’s possible to screen libraries of millions of molecules against complex targets using highly accurate, computationally-expensive methods in one weekend using equipment costing << £1M
19
! References • S. McIntosh-Smith, T. Wilson, A.A. Ibarra, J.
Crisp and R.B. Sessions, "Benchmarking energy efficiency, power costs and carbon emissions on heterogeneous systems", The Computer Journal, September 12th 2011. DOI: 10.1093/comjnl/bxr091
• N. Gibbs, A.R. Clarke & R.B. Sessions, "Ab-initio Protein Folding using Physicochemical Potentials and a Simplified Off-Lattice Model", Proteins 43:186-202,200
20