Modelling chemical reactions using an FPGA

[Bruce Land] is a professor at Cornell University who was looking for a way to quickly solve chemical kinetic systems. He had used MATLAB but longed for a faster method. His upgrade achieves a 100 times speed increase by using an FPGA as a parallel stochastic solver.

It works by generating 100 pseudo-random 16-bit numbers using an Altera DE2 board. This is done once per cycle at 50 MHz so we’re talking about a lot of random numbers. They are run through the solver algorithms and used to compute each reaction cycle. On a 3.8 GHz P4 process running the MATLAB version one of these cycles would take about 1000 seconds, so the speed improvement can immediately be felt. It’s wonderful to have this new tool. It does make us wonder what could be done with GPU processing that we’ve seen for password cracking or bit coin mining. Much like FPGAs a GPU is prefect for running a large number of parallel operations.