Improving Haskell GC-Tuning Time Using Divide-and-Conquer


KIPS Transactions on Computer and Communication Systems, Vol. 6, No. 9, pp. 377-384, Sep. 2017
10.3745/KTCCS.2017.6.9.377,   PDF Download:
Keywords: Parallel Programming, Generational GC, Divide-and-Conquer
Abstract

The performance improvement of a single core processor has reached its limit since the circuit density cannot be increased any longer due to overheating. Therefore, the multicore and manycore architectures have emerged as viable approaches and parallel programming becomes more important. Haskell, a purely functional language, is getting popular in this situation since it naturally supports parallel programming owing to its beneficial features including the implicit parallelism in evaluating expressions and the monadic tools supporting parallel constructs. However, the performance of Haskell parallel programs is strongly influenced by the performance of the run-time system including the garbage collector. Though a memory profiling tool namely GC-tune has been suggested, we need a more systematic way to use this tool. Since GC-tune finds the optimal memory size by executing the target program with all the different possible GC options, the GC-tuning time takes too long. This paper suggests a basic divide-and-conquer method to reduce the number of GC-tune executions by reducing the search area by one-quarter for every searching step. Applying this method to two parallel programs, a maximally independent set and a K-means programs, the memory tuning time is reduced by 7.78 times with accuracy 98% on average.


Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from September 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
H. An, H. Kim, Y. Kim, S. Byun, G. Woo, "Improving Haskell GC-Tuning Time Using Divide-and-Conquer," KIPS Transactions on Computer and Communication Systems, vol. 6, no. 9, pp. 377-384, 2017. DOI: 10.3745/KTCCS.2017.6.9.377.

[ACM Style]
Hyungjun An, Hwamok Kim, Yeoneo Kim, Sugwoo Byun, and Gyun Woo. 2017. Improving Haskell GC-Tuning Time Using Divide-and-Conquer. KIPS Transactions on Computer and Communication Systems, 6, 9, (2017), 377-384. DOI: 10.3745/KTCCS.2017.6.9.377.