190 likes | 353 Views
Co-processors for speeding up drug design algorithms. Advait Jain Priyanka Jindal Pulkit Gambhir Under the guidance of: Prof. M Balakrishnan Prof. Kolin Paul. Objective. To design FPGA based hardware accelerators for speeding up the energy minimization process. Single Point Precision.
E N D
Co-processors for speeding up drug design algorithms Advait Jain Priyanka Jindal Pulkit Gambhir Under the guidance of: Prof. M Balakrishnan Prof. Kolin Paul
Objective To design FPGA based hardware accelerators for speeding up the energy minimization process.
Single Point Precision minEnergyCG() Precision lost here diffEnergy() evalEnergy_for_step() Instability introduced here Resulting in NaN moveStep()
Single Point Precision • Removed the instability • Parabolic interpolation replaced by lnsearch() whenever points are colinear. • Time taken to evaluate the energy increased. • Increase in the number of calls to evalEnergy_for_step().
Reducing the number of Calls • minEnergyCG: • Parabolic interpolation – which 3pts to choose. • Lnsearch : • Iteratively calculates the step size. • When to stop the iteration determined by 2 tolerances. • What we did: • Pts for parabolic interpolation are further apart • Increased the tolerances till the time to minimize the energy was same as double. • Then profiled to check the actual energy.
Conclusion from this exercise • Located the source of instability. • However converting to float increased the time required for the code to run. • Increasing tolerances again made the code fast. • The energy in case of float did not agree well with double computation.
Ongoing Work • Familiarizing ourselves with the ADM-XRC-II board. • Trying to understand sample code for writing to ZBT RAMs, exchanging data with the PC. • Overall block diagram and connections – understood. • Timing – need to look at in more depth.
Tentative Schedule • Software Profiling August • No. of calls • Cache misses • Effect of parameters • Control Flow Analysis August - September • Flow Diagram • Data parallelism • Floating point precision requirement • Exploring H/W Options Early October • Platform Selection • S/W H/W Partitioning • ImplementationMid-October onwards • Analysis