The previous sections discussed the various effects in microlensing event that are often es- sential to be included in the modelling process. However, they are also very computationally expensive to compute. A typical microlensing event with finite-source effects can often take months of computing time for a desktop computer to complete. Not to mention the added higher order effects like the orbital motion which extend the computing time to even longer.
For a high workload microlensing modelling case, it takes a 2.93GHz Core i7 CPU 143 days to complete the computation while a desktop computer equipped with a 480GTX GPU takes only 28 hours to complete the same computation which is 122×faster. Furthermore, the latest GPU Titan is around 4-5 times faster than the 480GTX GPU, multiple GPUs can also be added to the desktop computer. The latest GPU allows us to perform microlensing modelling in hours instead of months on a desktop computer.
2.5.1
Multi-dimensional parameter space
A typical microlensing modelling procedure searches in multi-dimensional parameter space to locate the minima of some objective function of these parameters. The surface of this function can be a highly complex topography of hills and valleys. It is often required to break down a part of the parameter space and strategically search for the correct model. The biggest challenge in microlensing modelling is not just searching for the correct model, but
also proving that there are no other better-fitting models existing in the parameter space. A systematic approach is required to discover all the local minima and identify the degenerate models. Chapter 6 discusses in detail the different strategies in microlensing modelling.
2.5.2
Finite-source effect
In a typical microlensing modelling, most of the computation time is spent on computing the finite-source effect. This is one of the most computationally expensive effects but it is also one of the most common effects in microlensing events. It is often essential to include this in modelling for multi-lens events, especially caustic crossing events, because finite source effects can alter the character of light-curve deviations significantly.
One solution for computing finite-source effects effectively is to use magnification maps [43]. A magnification map is essentially the collection of solutions of the lens equation for a par- ticular lens configuration. Therefore, the computed solutions can be reused to generate multiple light curves in a modelling process. However, the magnification map generation is a very computationally expensive task as the lens equation is being calculated millions of time for each magnification map generation.
Chapter 4 discusses magnification map generation and track extraction from the mag- nification map using GPUs. The GPU solution significantly speeds up the magnification map calculations, and thus solves the computational challenge for finite-source calculation. We are able to speed up the computation more than 100× by using the GPU which also provides a very cost-effective solution for microlensing modelling.
2.5.3
Orbital motion in modelling
The other most challenging task in microlensing modelling is to compute the orbital motion effect. For a multi-lens system, the lens objects are moving around the centre of gravity in orbital motion. Therefore, the lens equation used to compute the amplification for any given point in time is different as the projected separation of lens objects used in the lens equation is changing with time. The magnification map is no longer useful when the orbital motion effect is considered in modelling, thus the finite-source effect computation also cannot be computed effectively.
Chapter 5 discusses a hybrid method using both CPU and GPU to compute the orbital motion effect in microlensing modelling. The computation for CPU includes solving the
complex polynomial of the lens equation and searching for the image area dynamically while the GPU computes the ray shooting using the lens equation in highly parallel fashion. Both the CPU and GPU are used to work on computation that suits its strengths to provide an effective solution for orbital motion calculation.
GPUs as potential tools for
microlensing modelling
3.1
Introduction
Scientific computing usually involves complex and very heavy computation. Some prob- lems, like microlensing modelling, require the processing power of a cluster computer to deliver real-time modelling results. A large cluster computer is expensive and consumes large amounts of resources to run and maintain. For those who do not have the resources to obtain and run a cluster computer, the processing power of a cluster computer is always a dream. However, the modern GPU in the consumer computer that is used for gaming, may provide a solution [44, 45]. The GPU is actually a very powerful processor with the computation power comparable to a cluster computer. The price of a GPU is also only a small fraction of the cost of a cluster computer. There are commercial versions of GPUs that support larger onboard memory and extra features. In this chapter, we discuss the power of the GPU and introduce the architecture and the techniques in programming such a powerful processor.
A cluster computer is usually a shared resource with the exception of those researchers having their own dedicated cluster. Since microlensing modelling can be time critical, as the prediction of light curve behaviour helps to allocate telescope observation resources, it often requires dedicated computing resources.