Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2442992.2442995acmconferencesArticle/Chapter ViewAbstractPublication PagesppoppConference Proceedingsconference-collections
research-article

Bulk synchronous visualization

Published: 23 February 2013 Publication History

Abstract

Many visual analytics applications require computationally expensive high resolution visualizations. Large desktop displays and display walls may provide the required resolution, and current multi- and many-core processors often have the required computational resources. However, it is still challenging to write programs that can utilize high resolution displays and multi-core processors. We describe the bulk synchronous visualization (BSV) model that makes it easier to write high resolution parallel visualizations. The dataset to be visualized is decomposed into thousands of tasks that are assigned to sequential processes. These are then run in parallel by the BSV system which provides efficient process and window management. BSV takes advantage of the large DRAM size and multiple cores of current computers, and the copy-on-write and low overhead fork mechanisms provided by current operating systems. We have implemented three BSV applications and used these to identify advantages and limitations of BSV on Windows, Linux and OS X. The results demonstrate that BSV makes it easy to implement visualization applications that utilize high resolution displays and multi-core processors.

References

[1]
M. Hibbs, G. Wallace, M. Dunham, K. Li, and O. Troyanskaya, Viewing the Larger Context of Genomic Data through Horizontal Integration, in 2007 11th International Conference Information Visualization (IV '07), 2007, pp. 326--334.
[2]
B. Fjukstad, O. Anshus, and J. M. Bjørndalen, High resolution numerical models on a Display Wall, in The 7th Annual Meeting of the European Meteorological Society (EMS) and the 8th European Conference on Applications of Meteorology, 2007.
[3]
G. Wallace, O. J. Anshus, D. Clark, P. Cook, A. Finkelstein, T. Funkhouser, A. Gupta, M. Hibbs, R. Samanta, R. Sukthankar, and O. Troyanskaya, Tools and Applications for Large-Scale Display Walls, IEEE Computer Graphics and Applications, vol. 25, no. 4, pp. 24--33, Jul. 2005.
[4]
A. Singh, L. Bradel, A. Endert, R. Kincaid, C. Andrews, and C. North, Supporting the cyber analytic process using visual history on large displays, in Proceedings of the 8th International Symposium on Visualization for Cyber Security - VizSec '11, 2011, pp. 1--8.
[5]
K. Li, H. Chen, Y. Chen, D. W. Clark, P. Cook, S. Damianakis, G. Essl, A. Finkelstein, T. Funkhouser, T. Housel, A. Klein, Z. Liu, E. Praun, J. P. Singh, B. Shedd, J. Pal, G. Tzanetakis, and J. Zheng, Building and using a scalable display wall system, IEEE Computer Graphics and Applications, vol. 20, no. 4, pp. 29--37, 2000.
[6]
DirectX Graphics and Gaming (Windows), http://msdn.microsoft.com/en-us/library/windows/desktop/ee663274.
[7]
OpenGL, http://www.opengl.org/.
[8]
VTK - The Visualization Toolkit, http://www.vtk.org/.
[9]
L. Zhang, A. Stoffel, M. Behrisch, and S. Mittelstädt, Visual Analytics for the Big Data Era--A Comparative Review of State-of-the-Art Commercial Systems, in Proceedings of IEEE Symposium on Visual Analytics Science and Technology, 2012, pp. 173--182.
[10]
N. Gehlenborg, S. I. O'Donoghue, N. S. Baliga, A. Goesmann, M. A. Hibbs, H. Kitano, O. Kohlbacher, H. Neuweger, R. Schneider, D. Tenenbaum, and A.-C. Gavin, Visualization of omics data for systems biology., Nature methods, vol. 7, no. 3 Suppl, pp. S56--68, Mar. 2010.
[11]
VisIt Visualization Tool. https://wci.llnl.gov/codes/visit/.
[12]
ParaView - Open Source Scientific Visualization, http://www.paraview.org/.
[13]
PyLab, http://www.scipy.org/PyLab.
[14]
B. Shneiderman, The eyes have it: a task by data type taxonomy for information visualizations, in Proceedings 1996 IEEE Symposium on Visual Languages, 1996, pp. 336--343.
[15]
L. G. Valiant, A bridging model for parallel computation, Communications of the ACM, vol. 33, no. 8, pp. 103--111, Aug. 1990.
[16]
IPython, http://ipython.org/.
[17]
pyplot --- Matplotlib documentation, http://matplotlib.org/api/pyplot_api.html.
[18]
wxPython, http://www.wxpython.org/.
[19]
TkInter, http://wiki.python.org/moin/TkInter.
[20]
pyglet, http://www.pyglet.org/.
[21]
pygame - python game development, 2012. http://www.pygame.org/
[22]
T. Barrett, D. B. Troup, S. E. Wilhite, P. Ledoux, C. Evangelista, I. F. Kim, M. Tomashevsky, K. A. Marshall, K. H. Phillippy, P. M. Sherman, R. N. Muertter, M. Holko, O. Ayanbule, A. Yefanov, and A. Soboleva, NCBI GEO: archive for functional genomics data sets-10 years on., Nucleic acids research, vol. 39, no. Database issue, pp. D1005--10, Nov. 2010.
[23]
NetworkX 1.7 documentation, http://networkx.lanl.gov/.
[24]
E. R. Gansner and S. C. North, An open graph visualization system and its applications to software engineering, Software: Practice and Experience, vol. 30, no. 11, pp. 1203--1233, Sep. 2000.
[25]
M. A. Hibbs, D. C. Hess, C. L. Myers, C. Huttenhower, K. Li, and O. G. Troyanskaya, Exploring the functional landscape of gene expression: directed search of large microarray compendia., Bioinformatics (Oxford, England), vol. 23, no. 20, pp. 2692--9, Oct. 2007.
[26]
R. B. Miller, Response time in man-computer conversational transactions, in Proceedings of the December 9-11, 1968, fall joint computer conference, part I on - AFIPS '68 (Fall, part I), 1968, p. 267.
[27]
B. A. Myers, The importance of percent-done progress indicators for computer-human interfaces, in Proceedings of the SIGCHI conference on Human factors in computing systems - CHI '85, 1985, vol. 16, no. 4, pp. 11--17.
[28]
C. Reas and B. Fry, Processing: A Programming Handbook for Visual Designers and Artists. The MIT Press, 2007, p. 736.
[29]
B. Westing, MostPixelsEverCE, https://github.com/bmwesting/MostPixelsEverCE.
[30]
O. Bonorden, B. Juurlink, I. von Otte, and I. Rieping, The Paderborn University BSP (PUB) library, Parallel Computing, vol. 29, no. 2, pp. 187--207, Feb. 2003.
[31]
J. M. D. Hill, B. McColl, D. C. Stefanescu, M. W. Goudreau, K. Lang, S. B. Rao, T. Suel, T. Tsantilas, and R. H. Bisseling, BSPlib: The BSP programming library, Parallel Computing, vol. 24, no. 14, pp. 1947--1980, Dec. 1998.
[32]
M. W. Goudreau, K. Lang, S. B. Rao, T. Suel, and T. Tsantilas, Portable and efficient parallel computing using the BSP model, IEEE Transactions on Computers, vol. 48, no. 7, pp. 670--689, Jul. 1999.
[33]
R. Miller, A Library for Bulk-Synchronous Parallel Programming, in Proc. British Computer Society Parallel Processing Specialist Group Workshop on General Purpose Parallel Computing, 1993.
[34]
Message Passing Interface Forum, MPI: A Message-Passing Interface Standard. Version 3.0, 2012.
[35]
J. Dean and S. Ghemawat, MapReduce: a flexible data processing tool, Communications of the ACM, vol. 53, no. 1, p. 72, Jan. 2010.
[36]
G. Malewicz, M. H. Austern, A. J. Bik, J. C. Dehnert, I. Horn, N. Leiser, and G. Czajkowski, Pregel: a system for large-scale graph processing, in Proceedings of the 2010 international conference on Management of data - SIGMOD '10, 2010, p. 135.
[37]
C. Ding, X. Shen, K. Kelsey, C. Tice, R. Huang, and C. Zhang, Software behavior oriented parallelization, ACM SIGPLAN Notices, vol. 42, no. 6, p. 223, Jun. 2007.
[38]
B. K. Schmidt, M. S. Lam, and J. D. Northcutt, The interactive performance of SLIM, in Proceedings of the seventeenth ACM symposium on Operating systems principles - SOSP '99, 1999, vol. 33, no. 5, pp. 32--47.
[39]
J. Nieh, S. J. Yang, and N. Novik, Measuring thin-client performance using slow-motion benchmarking, ACM Transactions on Computer Systems, vol. 21, no. 1, pp. 87--115, Feb. 2003.
[40]
M. Jovic, A. Adamoli, and M. Hauswirth, Catch me if you can, in Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications - OOPSLA '11, 2011, vol. 46, no. 10, p. 155.
[41]
N. Zeldovich and R. Chandra, Interactive performance measurement with VNCplay, in ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference, 2005, p. 54.
[42]
Y. Endo, Z. Wang, J. B. Chen, and M. Seltzer, Using latency to evaluate interactive system performance, ACM SIGOPS Operating Systems Review, vol. 30, no. SI, pp. 185--199, Oct. 1996.
[43]
J. Carmack, Transatlantic ping faster than sending a pixel to the screen?, http://superuser.com/questions/419070/transatlantic-ping-faster-than-sending-a-pixel-to-the-screen.
[44]
P. A. Dinda, G. Memik, R. P. Dick, B. Lin, A. Mallik, A. Gupta, and S. Rossoff, The user in experimental computer systems research, in Proceedings of the 2007 workshop on Experimental computer science - ExpCS '07, 2007, p. 10--es.
[45]
K. Flautner, R. Uhlig, S. Reinhardt, and T. Mudge, Thread-level parallelism and interactive performance of desktop applications, ACM SIGOPS Operating Systems Review, vol. 34, no. 5, pp. 129--138, Dec. 2000.
[46]
G. Blake, R. G. Dreslinski, T. Mudge, and K. Flautner, Evolution of thread-level parallelism in desktop applications, ACM SIGARCH Computer Architecture News, vol. 38, no. 3, p. 302, Jun. 2010.
[47]
C. Hauser, C. Jacobi, M. Theimer, B. Welch, and M. Weiser, Using threads in interactive systems, in Proceedings of the fourteenth ACM symposium on Operating systems principles - SOSP '93, 1993, vol. 27, no. 5, pp. 94--105.
[48]
C. G. Jones, R. Liu, L. Meyerovich, K. Asanović, and R. Bodík, Parallelizing the web browser, p. 7, Mar. 2009.
[49]
D. Stødle, T.-M. S. Hagen, J. M. Bjørndalen, and O. J. Anshus, Gesture Based, Touch Free Multi User Gaming on WallSized, High Resolution Tiled Displays, Journal of Virtual Reality and Broadcasting, vol. 5, 2008.

Recommendations

Reviews

Jason H Moore

Visualization is becoming an increasingly critical component of research studies that generate and analyze big data in biology, economics, physics, and many other disciplines. Visualization methods are sometimes categorized as "information visualization, which focuses on methods such as heat maps for showing high-dimensional research results, and scientific visualization, which focuses on the mathematics and physics of visualizing complex objects" [1]. There is a third emerging discipline called visual analytics, which integrates data analysis and human-computer interaction (HCI) with both information and scientific visualization methods. Data analysis methods such as those from machine learning and data mining have become much more powerful in recent years. HCI tools such as touch and gesture computing make it effortless to interact with visualization systems. These technologies are complemented by inexpensive 3D televisions and immersive display walls. Visual analytics is expected to take visualization to the next level by allowing researchers to explore their data in an interactive manner, while at the same time launching analyses from the visualization. The ability to deliver visual analytics technology to researchers with big data will depend critically on the computational infrastructure that will support the visualization hardware. This paper presents a bulk synchronous visualization (BSV) method for interactive parallel computation. This is accomplished by breaking a big dataset into many small pieces that can be processed for visualization in parallel. Methods such as this will be critical if we are to deliver user-friendly visual analytics tools to big data researchers. Visualization will only be effective when it is fast and seamless. Even small delays in rendering time can greatly impact the user experience and thus limit scientific discovery. This author provides one of many new methods that will be needed to fully exploit the patterns hidden in big data. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PMAM '13: Proceedings of the 2013 International Workshop on Programming Models and Applications for Multicores and Manycores
February 2013
134 pages
ISBN:9781450319089
DOI:10.1145/2442992
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 February 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Python visualizations
  2. bulk synchronous parallelism
  3. display walls
  4. interactive performance
  5. multi-core processors
  6. window management

Qualifiers

  • Research-article

Conference

PPoPP '13
Sponsor:

Acceptance Rates

Overall Acceptance Rate 27 of 49 submissions, 55%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 159
    Total Downloads
  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Jan 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media