Skip to main content

Experiences Parallelizing a Web Server with OpenMP

  • Conference paper
OpenMP Shared Memory Parallel Programming (IWOMP 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4315))

Included in the following conference series:

Abstract

Multi-threaded web servers are typically parallelized by hand using the pthreads library. OpenMP has rarely been used to parallelize such kind of applications, although we foresee that it can be a great tool for network servers developers. In this paper we compare how easy is to parallelize the Boa web server using OpenMP, compared to a pthreads parallelization, and the performance achieved. We present the results of a parallelization based on OpenMP 2.0, the dynamic sections model and pthreads.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. OpenMP Organization. Openmp fortran application interface, v. 2.0 (June 2000), http://www.openmp.org

  2. Doolittle, L., Nelson, J.: Boa webserver site, http://www.boa.org

  3. Balart, J., Duran, A., González, M., Martorell, X., Ayguadè, E., Labarta, J.: Nanos mercurium: a research compiler for openmp. In: Proceedings of the European Workshop on OpenMP 2004 (October 2004)

    Google Scholar 

  4. Kuhn, B., Petersen, P., O’Toole, E.: Openmp versus threading in c/c++. Concurrency - Practice and Experience 12, 1165–1176 (2000)

    Article  MATH  Google Scholar 

  5. Lee, D.J., Downar, T.J.: The application of posix threads and openmp to the u.s. nrc neutron kinetics code parcs. In: Eigenmann, R., Voss, M.J. (eds.) WOMPAT 2001. LNCS, vol. 2104, pp. 69–83. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  6. Breshears, C., Luong, P.: Comparison of openmp and pthreads within a coastal ocean circulation model code. In: Workshop on OpenMP Applications and Tools (July 2000)

    Google Scholar 

  7. Dedu, E., Vialle, S., Timsit, C.: Comparison of openmp and classical multi-threading parallelization for regular and irregular algorithms. In: Software Engineering Applied to Networking and Parallel/Distributed Computing (SNPD), pp. 53–60 (2000)

    Google Scholar 

  8. Asenjo, R., Corbera, F., Gutiérrez, E., Navarro, M.A., Plata, O., Zapata, E.L.: Optimization techniques for irregular and pointer-based programs. In: Proceedings of the 12th EuroMicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2004), February 2004, pp. 11–13 (2004)

    Google Scholar 

  9. Shah, S., Haab, G., Petersen, P., Throop, J.: Flexible control structures for parallellism in openmp. In: 1st European Workshop on OpenMP (September 1999)

    Google Scholar 

  10. Ishihara, T., Keen, A.W., Maris, J.T., Wohlstadter, E., Olsson, R.A.: Cow: A cooperative multithreading web server. In: The 2002 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2002), June 2002, pp. 991–996 (2002)

    Google Scholar 

  11. Jeong, J., Park, S., Nang, J.: Performance analysis of a multithreaded web server on multiprocessor. In: Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2000), June 2000, pp. 1885–1889 (2000)

    Google Scholar 

  12. Guitart, J., Beltran, V., Carrera, D., Torres, J., Ayguadé, E.: Characterizing secure dynamic web applications scalability. In: 19th International Parallel and Distributed Symposium (IPDPS 2005) (April 2005)

    Google Scholar 

  13. Apache web server, http://www.apache.org/

  14. Welsh, M., Culler, D., Brewer, E.: Seda: An architecture for well-conditioned, scalable internet services. In: Symposium on Operating Systems Principles (SOSP 2001), October 2001, pp. 230–243 (2001)

    Google Scholar 

  15. Pai, V.S., Druschel, P., Zwaenepoel, W.: Flash: An efficient and portable web server (1999)

    Google Scholar 

  16. Mosberger, D., Jin, T.: httperf – a tool for measuring web server performance. In: First Workshop on Internet Server Performance, June 1998, pp. 59–67 (1998)

    Google Scholar 

  17. Barford, P., Crovella, M.: Generating representative web workloads for network and server performance evaluation. In: Measurament and Modeling of Computer Systems, pp. 151–160 (1998)

    Google Scholar 

  18. eDragon Research Group site, http://www.ciri.upc.edu/edragon

Download references

Author information

Authors and Affiliations

Authors

Editor information

Matthias S. Mueller Barbara M. Chapman Bronis R. de Supinski Allen D. Malony Michael Voss

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Balart, J., Duran, A., Gonzàlez, M., Martorell, X., Ayguadé, E., Labarta, J. (2008). Experiences Parallelizing a Web Server with OpenMP. In: Mueller, M.S., Chapman, B.M., de Supinski, B.R., Malony, A.D., Voss, M. (eds) OpenMP Shared Memory Parallel Programming. IWOMP 2005. Lecture Notes in Computer Science, vol 4315. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68555-5_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-68555-5_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-68554-8

  • Online ISBN: 978-3-540-68555-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics