Abstract
Active data structures support operations that may affect a large number of elements of an aggregate data structure. They are well suited for extremely fine grain parallel systems, including circuit parallelism. General purpose GPUs were designed to support regular graphics algorithms, but their intermediate level of granularity makes them potentially viable also for active data structures. We consider the characteristics of active data structures and discuss the feasibility of implementing them on GPGPUs. We describe the GPU implementations of two such data structures, extensible sparse functional (ESF) arrays and index intervals. We measure their performance and discuss the potential of active data structures as an unconventional programming model that can exploit the capabilities of emerging fine grain architectures such as GPUs.
Chapter PDF
Similar content being viewed by others
Keywords
References
Andrews, G.R., Dobkin, D.P.: Active data structures. In: ICSE 1981: Proc. 5th Int. Conf. on Software Engineering, pp. 354–362. IEEE Press (1981)
Backus, J.: Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Communications of the ACM 21(8), 613–641 (1978), doi:10.1145/359576.359579
Chakravarty, M.T., Keller, G., Lee, S., McDonnell, T.L., Grover, V.: Accelerating Haskell array codes with multicore GPUs. In: Declarative Aspects of Multicore Programming. ACM (January 2011)
Dietz, H.G., Dalton Young, B.: MIMD Interpretation on a GPU. In: Gao, G.R., Pollock, L.L., Cavazos, J., Li, X. (eds.) LCPC 2009. LNCS, vol. 5898, pp. 65–79. Springer, Heidelberg (2010)
Owens, J.D., et al.: A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26(1), 80–113 (2007)
Foster, C.: Content Addressable Parallel Processors. Cengage Learning EMEA (1976) ISBN-13: 978-0442224332
Gaster, B.R., Howes, L.: Can GPU programming be liberated from the data-parallel bottleneck? Computer 45(8), 42–52 (2012), doi:10.1109/MC.2012.257
Daniel Hillis, W.: The Connection Machine. MIT Press (1985) ISBN 978-0262081573
Peyton Jones, S.L., Wadler, P.L.: Imperative functional programming. In: Proc. 20th ACM Symposium on Principles of Programming Languages (POPL), pp. 71–84 (1993)
Nath, P., Urgaonkar, B., Sivasubramaniam, A.: Evaluating the usefulness of content-addressable storage for high-performance data-intensive applications. In: Proceedings of the ACM/IEEE International Symposium on High Performance Distributed Computing (HPDC 2008), pp. 35–44. ACM (2008)
O’Donnell, J.T.: Functional microprogramming for a data parallel architecture. In: Proceedings of the 1988 Glasgow Workshop on Functional Programming, pp. 124–145. Computing Science Department, University of Glasgow (1988)
O’Donnell, J.T.: Data parallel implementation of Extensible Sparse Functional Arrays. In: Reeve, M., Bode, A., Wolf, G. (eds.) PARLE 1993. LNCS, vol. 694, pp. 68–79. Springer, Heidelberg (1993)
O’Donnell, J.T.: GPU Programming. School of Computing Science, University of Glasgow (2012), http://www.dcs.gla.ac.uk/~jtod/research/gpu/
O’Donnell, J.T.: Extensible sparse functional arrays with circuit parallelism. In: 15th International Symposium on Principles and Practice of Declarative Programming. ACM (September 2013)
Okasaki, C.: Purely functional data structures. Cambridge University Press (1999)
Xiao, S., Feng, W.C.: Inter-block GPU communication via fast barrier synchronization. In: IPDPS, pp. 1–12. IEEE (2010)
Zhang, Y., Owens, J.D.: A quantitative performance analysis model for GPU architectures. In: 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA), pp. 382–393 (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
O’Donnell, J.T., Hall, C., Monro, S. (2014). Active Data Structures on GPGPUs. In: an Mey, D., et al. Euro-Par 2013: Parallel Processing Workshops. Euro-Par 2013. Lecture Notes in Computer Science, vol 8374. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54420-0_85
Download citation
DOI: https://doi.org/10.1007/978-3-642-54420-0_85
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-54419-4
Online ISBN: 978-3-642-54420-0
eBook Packages: Computer ScienceComputer Science (R0)