Efficient Parallel Solution Methods for Dynamic Portfolio Choice Models in Discrete Time
28 Pages Posted: 1 May 2018
Date Written: October 30, 2016
Abstract
In this paper, we investigate the parallelization efficiency of the discrete time dynamic programming approach to solve dynamic portfolio choice models over the life cycle. This approach suffers from the so-called curse of dimensionality. That is, the time-to-result grows exponentially in the number of continuous state variables of the model. However, computing power is growing exponentially, too, by means of parallelism. If parallelism could be exploited efficiently, economists could (asymptotically) include one additional continuous state variable in dynamic portfolio choice models every time the computing power doubles. Luckily, the discrete time dynamic programming approach is in principle embarrassingly simple to parallelize. However, implementing efficient parallel solution algorithms for economic problems is challenging and time consuming, as in-depth knowledge of low-level programming languages and of parallel programming on supercomputer architecture is necessary. For our parallelization, we use standard MATLAB and one of the worldwide top500 supercomputers (LOEWE-CSC) as well as a small proprietary high-performance cluster to solve a complex benchmark life cycle model. Thereby, the time-to-result is reduced from approximately ten hours on a single core to just under ten minutes. We investigate a master-worker pattern and an equally sized distribution approach regarding strong scaling and their parallel efficiency and derive imperatives for the parallelization of discrete time dynamic programming approaches, which are of general relevance and reach beyond our MATLAB implementation.
Keywords: Dynamic Portfolio Choice, Discrete Time Dynamic Programming, Parallelization, High Performance Computing
JEL Classification: C61, C63, D91, G11, J26
Suggested Citation: Suggested Citation