Abstract
Multicore, multithreaded processors are rapidly becoming the platform of choice for high-throughput request-processing applications (RPAs). We refer to this class of modern parallel platforms as multi-⋆ systems. In this paper, we describe the design and implementation of Lagniappe, a translator that simplifies RPA development by transforming portable models of RPAs to high-throughput multi-⋆ executables. We demonstrate Lagniappe’s effectiveness with a pair of stateful RPA case studies.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Chen, B., Morris, R.: Flexible Control of Parallelism in a Multiprocessor PC Router. In: USENIX Annual Technical Conference, pp. 333–346. USENIX (2001)
Chen, M.K., Li, X.F., Lian, R., Lin, J.H., Liu, L., Liu, T., Ju, R.: Shangri-La: Achieving High Performance from Compiled Network Applications while Enabling Ease of Programming. In: ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 224–236. ACM, New York (2005)
Clement, A., Kapritsos, M., Lee, S., Wang, Y., Alvisi, L., Dahlin, M., Riché, T.L.: Upright Cluster Services. In: ACM SIGOPS Symposium on Operating Systems Principles, pp. 277–290. ACM, New York (2009)
Microsoft directshow, http://msdn.microsoft.com/en-us/library/ms783323.aspx
Emma, P.: The End of Scaling? Revolutions in Technology and Microarchitecture As We Pass the 90 Nanometer Node. SIGARCH Computer Architecture News 34(2), 128 (2006)
Estan, C., Varghese, G.: New Directions in Traffic Measurement and Accounting: Focusing on the Elephants, Ignoring the Mice. ACM Transactions on Computer Systems 21(3), 270–313 (2003)
Estan, C., Varghese, G., Fisk, M.: Bitmap Algorithms for Counting Active Flows on High-Speed Links. IEEE/ACM Transactions on Networking 14(5), 925–937 (2006)
Francois, A.R.J.: A Hybrid Architectural Style for Distributed Parallel Processing of Generic Data Streams. In: International Conference on Software Engineering, pp. 367–376. IEEE Computer Society, Los Alamitos (2004)
Gay, D., Levis, P., von Behren, R., Welsh, M., Brewer, E., Culler, D.: The nesC Language: A Holistic Approach to Networked Embedded Systems. In: ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 1–11. ACM, New York (2003)
Gorlick, M.M., Razouk, R.R.: Using Weaves for Software Construction and Analysis. In: International Conference on Software Engineering, pp. 23–34. IEEE Press, Los Alamitos (1991)
Gummaraju, J., Coburn, J., Turner, Y., Rosenblum, M.: Streamware: Programming General-Purpose Multicore Processors Using Streams. In: International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 297–307. ACM, New York (2008)
Hadoop, http://hadoop.apache.org/core/
Johnston, W.M., Hanna, J.R.P., Millar, R.J.: Advances in Dataflow Programming Languages. ACM Computing Surveys 36(1), 1–34 (2004)
Kohler, E., Morris, R., Chen, B., Jannotti, J., Kaashoek, M.F.: The Click Modular Router. ACM Transactions on Computer Systems 18(3), 263–297 (2000)
Kokku, R., Riché, T.L., Kunze, A., Mudigonda, J., Jason, J., Vin, H.M.: A Case for Run-Time Adaptation in Packet Processing Systems. SIGCOMM Computer Communication Review 34(1), 107–112 (2004)
Kokku, R., Shevade, U., Shah, N., Mahimkar, A., Cho, T., Vin, H.: Processor Scheduler for Multi-Service Routers. In: IEEE International Real-Time Systems Symposium, pp. 225–235. IEEE Computer Society Press, Los Alamitos (2006)
Mudigonda, J.: Addressing the Memory Bottleneck in Packet Processing Systems. Ph.D. thesis, The University of Texas at Austin (2005)
National Instruments LabView, http://www.ni.com/labview/
Papadopoulos, G.A., Arbab, F.: Coordination Models and Languages. In: Advances in Computers, pp. 329–400. Academic Press, London (1998)
Riché, T.L., Mudigonda, J., Vin, H.M.: Experimental Evaluation of Load Balancers in Packet Processing Systems. In: Workshop on Building Block Engine Architectures for Computers and Networks, Boston, MA (October 2004)
Riché, T.L., Vin, H.M., Batory, D.: Transformation-Based Parallelization of Request-Processing Applications. Tech. Rep. TR-10-16, Department of Computer Science, The University of Texas at Austin (2010)
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)
Sztipanovits, J., Karsai, G., Bapty, T.: Self-Adaptive Software for Signal Processing. Communications of the ACM 41(5), 66–73 (1998)
Thies, W.: Lang. and Compiler Support for Stream Programs. Ph.D. thesis, MIT (February 2009)
Data parallelism, http://en.wikipedia.org/wiki/Data_parallelism
Task parallelism, http://en.wikipedia.org/wiki/Task_parallelism
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Riché, T.L., Vin, H.M., Batory, D. (2010). Transformation-Based Parallelization of Request-Processing Applications. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds) Model Driven Engineering Languages and Systems. MODELS 2010. Lecture Notes in Computer Science, vol 6395. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16129-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-16129-2_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16128-5
Online ISBN: 978-3-642-16129-2
eBook Packages: Computer ScienceComputer Science (R0)