publications: - title: "Automatic generation of layered queuing software performance models from commonly available traces" author: - name: "Tauseef A. Israr" link: "https://researchr.org/alias/tauseef-a.-israr" - name: "Danny H. Lau" link: "https://researchr.org/alias/danny-h.-lau" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "2005" doi: "http://doi.acm.org/10.1145/1071021.1071037" links: doi: "http://doi.acm.org/10.1145/1071021.1071037" tags: - "C++" researchr: "https://researchr.org/publication/IsrarLFW05" cites: 0 citedby: 0 pages: "147-158" booktitle: "wosp" kind: "inproceedings" key: "IsrarLFW05" - title: "Towards A Performance-Oriented Self-Adaptive System" author: - name: "Chung-Horng Lung" link: "http://www.sce.carleton.ca/faculty/lung" - name: "Xiu Zhang" link: "https://researchr.org/alias/xiu-zhang" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Marzia Zaman" link: "https://researchr.org/alias/marzia-zaman" year: "2007" abstract: "Software architecture evaluation is critical to the success of a system. Software architecture evaluation, unfortunately, is difficult in practice, especially for performance or quality-of-service at the early stage where uncertainties usually arise. Selecting an architecture alternative that has better performance requires more detailed information and efforts. In addition, software performance issue becomes even more challenging with respect to increasing hardware complexity and sophisticated software interactions. This position paper proposes an approach that could conduct self-management based on performance results. Such an approach can help the architect conduct architecture evaluation more effectively and efficiently. In addition, the architect can focus more on the application level" tags: - "rule-based" - "software architecture" - "architecture" - "systematic-approach" researchr: "https://researchr.org/publication/LungZFZ07" cites: 0 citedby: 0 pages: "613-620" booktitle: "serp" kind: "inproceedings" key: "LungZFZ07" - title: "Performance of multi-level client-server systems with parallel service operations" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "1998" doi: "http://doi.acm.org/10.1145/287318.287346" links: doi: "http://doi.acm.org/10.1145/287318.287346" tags: - "C++" researchr: "https://researchr.org/publication/FranksW98" cites: 0 citedby: 0 pages: "120-130" booktitle: "wosp" kind: "inproceedings" key: "FranksW98" - title: "Multiclass Multiservers with Deferred Operations in Layered Queueing Networks, with Software System Applications" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "2004" doi: "http://csdl.computer.org/comp/proceedings/mascots/2004/2251/00/22510239abs.htm" abstract: "Layered queueing networks describe the simultaneous-resource behaviour of servers that request lower-layer services and wait for them to complete. Layered software systems often follow this model, with messages to request service and receive the results. Their performance has been computed successfully using mean-value queueing approximations. Such systems also have multiservers (which model multi-threaded software processes), multiple classes of service, and what we call deferred operations or ``second phases'', which are executed after sending the reply message to the requester. In this paper, three established MVA approximations for multiclass multiservers were extended to include deferred service, and evaluated within the layered queueing context. Errors ranged from 1% up to about 15%. These servers were then used to model the Network File System, as implemented on Linux, to show that the method scales up and gives good accuracy on typical systems, with computation times of a few seconds to a few minutes. This is hundreds of times faster than simulation." links: doi: "http://csdl.computer.org/comp/proceedings/mascots/2004/2251/00/22510239abs.htm" tags: - "completeness" - "meta-model" - "modeling" - "C++" - "context-aware" - "Meta-Environment" - "process modeling" researchr: "https://researchr.org/publication/FranksW04" cites: 0 citedby: 0 pages: "239-248" booktitle: "mascots" kind: "inproceedings" key: "FranksW04" - title: "Dynamic Load Balancing Protocol for Locally Distributed Systems" author: - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "Seyed H. Hosseini" link: "https://researchr.org/alias/seyed-h.-hosseini" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2006" tags: - "protocol" researchr: "https://researchr.org/publication/OmariHF06" cites: 0 citedby: 0 journal: "isca" volume: "13" number: "4" pages: "211-219" kind: "article" key: "OmariHF06" - title: "Simulating Layered Queueing Networks with Passive Resources" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2011" abstract: "This paper describes an extension to Layered Queueing Networks (LQN), a form of an extended queueing network used to investigate performance problems, to model passive resources such as counting semaphores and buffers. Layered queueing networks can be constructed directly, or from UML design models which incorporate the MARTE profile, either directly or via the Core Scenario Model. Layered Queueing Networks scale well and can solve analytically systems with nested resource requests to active resources. However, passive resources cause problems which force the use of simulation. The layered queueing network simulator, lqsim, is also described here. Simulations are created by reading in an LQN model, constructing objects from pre-existing templates, then solving. The semaphore task extension was incorporated by modifying the existing template used to model multi-server tasks. Finally, the semaphore extension was used to solve a model of a building security system which has a pool of buffers to capture video images. The results here show that a lack of buffers is indeed a bottleneck, but other parts of the system ultimately limit the capacity of the system." tags: - "meta-model" - "UML" - "object-role modeling" - "security" - "Meta-Environment" - "design" - "meta-objects" researchr: "https://researchr.org/publication/perf%3Afranks-2011-mod4sim-semaphore" cites: 0 citedby: 0 booktitle: "Proceedings of the 2011 Springsim Multiconference" kind: "inproceedings" key: "perf:franks-2011-mod4sim-semaphore" - title: "Deriving distribution of thread service time in layered queueing networks" author: - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "Salem Derisavi" link: "https://researchr.org/alias/salem-derisavi" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2007" doi: "http://doi.acm.org/10.1145/1216993.1217007" links: doi: "http://doi.acm.org/10.1145/1216993.1217007" researchr: "https://researchr.org/publication/OmariDF07" cites: 0 citedby: 0 pages: "66-77" booktitle: "wosp" kind: "inproceedings" key: "OmariDF07" - title: "Effectiveness of Early Replies in Client-Server Systems" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "1999" abstract: "A common performance optimization for a Server process is to send the reply to each request as early as possible, before final operations that are not in the critical path (such as buffer cleanup, state updates, logging and file updates). The operations after the reply form a ``second phase'' of service. This does not delay the current request from the client, but may delay succeeding requests. The net performance improvement depends on the number of clients at a server, its utilization, and the proportion of the total work which is placed in the second phase. This dependence is explored using analytic models that include an improved special approximation for two phases service in queueing networks, and layered queueing networks The result is an approximate analysis for large and complex client-server systems, with second phases.\"," tags: - "optimization" - "meta-model" - "modeling" - "analysis" - "C++" - "Meta-Environment" - "process modeling" researchr: "https://researchr.org/publication/FranksW99" cites: 0 citedby: 0 journal: "pe" volume: "36-37" number: "1-4" pages: "165-183" kind: "article" key: "FranksW99" - title: "Performance modeling of systems using fair share scheduling with Layered Queueing Networks" author: - name: "Lianhua Li" link: "https://researchr.org/alias/lianhua-li" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2009" doi: "http://dx.doi.org/10.1109/MASCOT.2009.5366689" abstract: "Fair-share scheduling attempts to grant access to a resource based on the amount of ``share'' that a task possesses. It is widely used in places such as Internet routing, and recently, in the Linux kernel. Software performance engineering is concerned with creating responsive applications and often uses modeling to predict the behaviour of a system before the system is built. This work extends the Layered Queueing Network (LQN) performance model used to model distributed software systems by including hierarchical fair-share scheduling with both guarantees and caps. To exercise the model, the Completely Fair Scheduler, found in recent Linux kernels, is incorporated into PARASOL, the underlying simulation engine of the LQN simulator, lqsim. This simulator is then used to study the effects of fair-share scheduling on a multi-tier implementation of a building security system. The results here show that fair-share scheduling with guarantees is not sufficient when an application is layered into multiple tiers because of contention at lower layers in the system. Fair-share scheduling with caps must be used instead." links: doi: "http://dx.doi.org/10.1109/MASCOT.2009.5366689" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/mascots/LiF09" tags: - "rule-based" - "meta-model" - "modeling" - "software engineering" - "model-driven engineering" - "security" - "Meta-Environment" - "routing" researchr: "https://researchr.org/publication/LiF09-8" cites: 0 citedby: 0 pages: "1-10" booktitle: "mascots" kind: "inproceedings" key: "LiF09-8" - title: "Towards Architecture-based Autonomic Software Performance Engineering " author: - name: "Zhang, Xu" link: "https://researchr.org/alias/zhang%2C-xu" - name: "Chung-Horng Lung" link: "http://www.sce.carleton.ca/faculty/lung" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2010" abstract: "Autonomic systems can be self-adaptive and have the potential to achieve high performance through run-time configuration changes. This paper describes an architecture-centric self-adaptive approach and presents a simple application in a distributed system where it can be advantageous to switch archi- tectures based on the workload being presented to the system. The self-adaptive framework is built on top of a generative system which comprises three software architectural alternatives, namely Single Thread (ST), Half-Sync/Half-Async (HS/HA) and Leaders-Followers (LFs). A software performance analysis tool called the Layered Queuing Network Solver (LQNS) is integrated into the frame- work to support the architecture selection process. A comparison of the perfor- mance of the three different software architecture alternatives is also presented. The results from this analysis are used to support the construction of a perfor- mance knowledge base and analysis policies for the self-adaptive system." tags: - "rule-based" - "software architecture" - "application framework" - "architecture" - "analysis" - "software engineering" - "systematic-approach" researchr: "https://researchr.org/publication/Zhang2010" cites: 0 citedby: 0 booktitle: "Proceedings of CAL 2010 : Conference sur les Architectures Logicielles" kind: "inproceedings" key: "Zhang2010" - title: "Alternative software architectures for parallel protocol execution with synchronous IPC" author: - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "1993" doi: "http://portal.acm.org/citation.cfm?id=153377.153380" links: doi: "http://portal.acm.org/citation.cfm?id=153377.153380" tags: - "software architecture" - "protocol" - "architecture" - "C++" researchr: "https://researchr.org/publication/WoodsideF93" cites: 0 citedby: 0 journal: "ton" volume: "1" number: "2" pages: "178-186" kind: "article" key: "WoodsideF93" - title: "Traffic dependencies in client-server systems and their effect on performance prediction" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "1995" month: "apr" doi: "10.1109/IPDS.1995.395840" abstract: "Client-server systems are becoming increasingly common in the world today as users move from centralized mainframe facilities to networks of distributed work stations. This form of work demands new performance models as the interactions in client-server systems are more complex than the types supported by classic queueing network solvers such as Mean Value Analysis. However, certain interaction patterns can arise in multi-level client-server systems that require special treatment. This paper describes these interactions (referred to as interlocking here) and how they affect the performance estimates of solution methods using surrogate delays to solve multi-level client-server models. It then describes a method to take interlocking into account when solving the performance models. These corrections often reduce the solution error to close to zero when compared to exact solutions for situations where interlocking is significant." links: "url": "http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=395840" tags: - "meta-model" - "analysis" - "type system" - "Meta-Environment" researchr: "https://researchr.org/publication/perf%3Afranks-95-ipds-interlock" cites: 0 citedby: 0 pages: "24-33" booktitle: "Proceedings of 1995 IEEE International Computer Performance and Dependability Symposium" kind: "inproceedings" key: "perf:franks-95-ipds-interlock" - title: "Layered Bottlenecks and Their Mitigation" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Dorina C. Petriu" link: "http://www.sce.carleton.ca/faculty/petriu" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Jing Xu" link: "https://researchr.org/alias/jing-xu" - name: "Peter Tregunno" link: "https://researchr.org/alias/peter-tregunno" year: "2006" doi: "http://doi.ieeecomputersociety.org/10.1109/QEST.2006.23" links: doi: "http://doi.ieeecomputersociety.org/10.1109/QEST.2006.23" tags: - "C++" researchr: "https://researchr.org/publication/FranksPWXT06" cites: 0 citedby: 0 pages: "103-114" booktitle: "qest" kind: "inproceedings" key: "FranksPWXT06" - title: "Performance Analysis of Distributed Server Systems" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Shikharesh Majumdar" link: "http://www.sce.carleton.ca/faculty/majumdar" - name: "Neilson, John" link: "https://researchr.org/alias/neilson%2C-john" - name: "Dorina Petriu" link: "http://www.sce.carleton.ca/faculty/petriu" - name: "Jerome Rolia" link: "http://www.hpl.hp.com/people/jerry_rolia/" - name: "Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "1996" month: "oct" abstract: "It is generally accepted that performance characteristics, such as response time and throughput, are an integral part of the factors defining the quality of software products. The relationship between quality and system responsiveness is especially strong in the case of distributed application using various kind of software servers (name servers, application servers, database servers, etc.) In order to meet the performance requirements of such systems, the developers should be able to assess and understand the effect of various design decisions on system performance at an early stage, when changes can be made easily and effectively. Performance analysis should then continue throughout the whole life cycle, becoming one of the means of assuring the quality of software products. For this to become a practical reality, we need appropriate modeling techniques.$\\backslash$$\\backslash$ This paper presents a new performance model named \\{$\\backslash$em Layered Queueing Networks\\} (LQN) for systems with distributed software servers. In such systems the servers are are frequently layered, so that lower level delays are included in the higher layer service time, which limits the system capacity. LQN represents these effects in a compact and understandable way, and provide analytical and simulation tools. The paper explains the model, and more importantly, shows how can be applied to identify performance trouble spots in a system and devise effective corrective measures." tags: - "meta-model" - "modeling" - "software product quality" - "analysis" - "database" - "Meta-Environment" - "design" researchr: "https://researchr.org/publication/perf%3Afranks-96" cites: 0 citedby: 0 pages: "15-26" booktitle: "The Sixth International Conference on Software Quality (6ICSQ)" kind: "inproceedings" key: "perf:franks-96" - title: "The Future of Software Performance Engineering" author: - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Dorina C. Petriu" link: "http://www.sce.carleton.ca/faculty/petriu" year: "2007" doi: "http://doi.acm.org/10.1145/1253532.1254717" abstract: "Performance is a pervasive quality of software systems; everything affects it, from the software itself to all underlying layers, such as operating system, middleware, hardware, communication networks, etc. Software Performance Engineering encompasses efforts to describe and improve performance, with two distinct approaches: an early-cycle predictive model-based approach, and a late-cycle measurement-based approach. Current progress and future trends within these two approaches are described, with a tendency (and a need) for them to converge, in order to cover the entire development cycle." links: doi: "http://doi.acm.org/10.1145/1253532.1254717" tags: - "rule-based" - "operating system" - "meta-model" - "model-driven development" - "software engineering" - "model-driven engineering" - "C++" - "performance modeling" - "Meta-Environment" - "systematic-approach" researchr: "https://researchr.org/publication/WoodsideFP07" cites: 0 citedby: 0 pages: "171-187" booktitle: "ICSE" kind: "inproceedings" key: "WoodsideFP07" - title: "Efficient performance models for layered server systems with replicated servers and parallel behaviour" author: - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Amy Pan" link: "https://researchr.org/alias/amy-pan" year: "2007" doi: "http://dx.doi.org/10.1016/j.jss.2006.07.022" abstract: "Capacity planning for large computer systems may require very large performance models, which are difficult or slow to solve. Layered queueing models solved by mean value analysis can be scaled to dozens of servers and hundreds of service classes, with large class populations, but this may not be enough. A common feature of planning models for large systems is structural repetition expressed through replicated subsystems, which can provide both scalability and reliability, and this replication can be exploited to scale the solution technique. A model has recently been described for symmetrically replicated layered servers, and their integration into the system, with a mean-value solution approximation. However, parallelism is often combined with replication; high-availability systems use parallel data-update operations on redundant replicas, to enhance reliability, and grid systems use parallel computations for scalability. This work extends the replicated layered server model to systems with parallel execution paths. Different servers may be replicated to different degrees, with different relationships between them. The solution time is insensitive to the number of replicas of each replicated server, so systems with thousands or even millions of servers can be modelled efficiently." links: doi: "http://dx.doi.org/10.1016/j.jss.2006.07.022" tags: - "meta-model" - "modeling" - "analysis" - "data-flow" - "C++" - "Meta-Environment" - "data-flow analysis" - "reliability" researchr: "https://researchr.org/publication/OmariFWP07" cites: 0 citedby: 0 journal: "jss" volume: "80" number: "4" pages: "510-527" kind: "article" key: "OmariFWP07" - title: "A Toolset for Performance Engineering and Software Design of Client-Server Systems" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Alex Hubbard" link: "https://researchr.org/alias/alex-hubbard" - name: "Shikharesh Majumdar" link: "http://www.sce.carleton.ca/faculty/majumdar" - name: "John E. Neilson" link: "https://researchr.org/alias/john-e.-neilson" - name: "Dorina C. Petriu" link: "http://www.sce.carleton.ca/faculty/petriu" - name: "Jerome A. Rolia" link: "http://www.hpl.hp.com/people/jerry_rolia/" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "1995" month: "November" doi: "10.1016/0166-5316(95)96869-T" abstract: "TimeBench/SRVN is a prototype toolset for computer-aided design and performance analysis of software, with an emphasis on distributed client-server systems. The novelty of the tool consists in providing support both for developing design specifications and also for performance analysis. The integrated approach avoids the semantic gap between a designer's domain and the performance modeling domain, and assists the designer to explore factors that impact the performance of a design. TimeBench/SRVN is intended as a demonstration of the concept of an integrated designer/performance interface, and as a research environment for fast analytic solvers for the models. Besides a simulation solver, it offers three approximate analytic solvers based on recent research, a Markovian solver, a technique for finding bounds on the throughput without too many assumptions, and a tool for rapidly exploring the space of possible parameter values." tags: - "rule-based" - "meta-model" - "modeling" - "design research" - "domain analysis" - "analysis" - "software engineering" - "model-driven engineering" - "C++" - "Meta-Environment" - "design" - "systematic-approach" researchr: "https://researchr.org/publication/FranksHMNPRW95" cites: 0 citedby: 0 journal: "pe" volume: "24" number: "1-2" pages: "117-136" kind: "article" key: "FranksHMNPRW95" - title: "Solving layered queueing networks of large client-server systems with symmetric replication" author: - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Amy Pan" link: "https://researchr.org/alias/amy-pan" year: "2005" doi: "http://doi.acm.org/10.1145/1071021.1071038" links: doi: "http://doi.acm.org/10.1145/1071021.1071038" tags: - "C++" researchr: "https://researchr.org/publication/OmariFWP05" cites: 0 citedby: 0 pages: "159-166" booktitle: "wosp" kind: "inproceedings" key: "OmariFWP05" - title: "A Performance Experiment System Supporting Fast Mapping of System Issues" author: - name: "Martin Mroz" link: "https://researchr.org/alias/martin-mroz" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2009" doi: "10.4108/ICST.VALUETOOLS2009.7807" abstract: "The most fruitful use of a performance model is to study deep properties of the system, and hypothetical situations that might lead to improved configurations or designs. This requires executing experiments on the model, which evaluate systematic changes. Parameter estimation methods also exploit search in a parameter space to fit a model to performance data. Estimation, sensitivity and optimization experiments can require hundreds of evaluations, and the efficiency of the analytic model solver may become an issue. Analytic models usually provide fast solutions (compared to simulations) but repetitive solutions for near- models offer opportunities for further reducing the effort. This work describes an driver for a layered queueing solver which provides a factor of two improvement. It also raises the issue of domain-specific languages for model experiments, versus general languages with suitable libraries." tags: - "optimization" - "data-flow language" - "meta-model" - "modeling language" - "modeling" - "language modeling" - "data-flow" - "Meta-Environment" - "search" - "systematic-approach" - "domain-specific language" researchr: "https://researchr.org/publication/MrozFranksMrozFranks2009" cites: 0 citedby: 0 booktitle: "Fourth International Conference on Performance Evaluation Methodologies and Tools" kind: "inproceedings" key: "MrozFranksMrozFranks2009" - title: "Enhanced Modeling and Solution of Layered Queueing Networks" author: - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Olivia Das" link: "http://www.ee.ryerson.ca/people/Das.html" - name: "Salem Derisavi" link: "https://researchr.org/alias/salem-derisavi" year: "2009" doi: "http://dx.doi.org/10.1109/TSE.2008.74" abstract: "Layered queues are a canonical form of extended queueing network for systems with nested multiple resource possession, in which successive depths of nesting define the layers. The model has been applied to most modern distributed systems, which use different kinds of client-server and master-slave relationships, and scales up well. The Layered Queueing Network (LQN) model is described here in a unified fashion, including its many more extensions to match the semantics of sophisticated practical distributed and parallel systems. These include efficient representation of replicated services, parallel and quorum execution, and dependability analysis under failure and reconfiguration. The full LQN model is defined here and its solver is described. A substantial case study to an air traffic control system shows errors (compared to simulation) of a few percent. The LQN model is compared to other models and solutions, and is shown to cover all their features." links: doi: "http://dx.doi.org/10.1109/TSE.2008.74" tags: - "control systems" - "semantics" - "case study" - "meta-model" - "modeling" - "analysis" - "C++" - "Meta-Environment" researchr: "https://researchr.org/publication/FranksOWDD09" cites: 0 citedby: 0 journal: "TSE" volume: "35" number: "2" pages: "148-161" kind: "article" key: "FranksOWDD09" - title: "An automatic trace based performance evaluation model building for parallel distributed systems" author: - name: "Ahmad Mizan" link: "https://researchr.org/alias/ahmad-mizan" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2011" doi: "10.1145/1958746.1958760" abstract: "Performance models can be built at early stages of software development cycles to aid software designers to assess design alternatives and identify fundamental design problems before the implementation cycles starts. These models are flexible for varying operational conditions and design alternatives; however, their creation is not trivial and requires considerable effort. An automatic performance model making system has been developed which uses traces of events from an instrumented executable program in a distributed computing system to create layered queuing network (LQN) performance evaluation models. The model construction process is independent of local time of the geographically dispersed nodes by using a new format for logical time. Low communications overhead and simplified interaction identification are the main characteristics of this format. The system can identify Synchronous, Asynchronous, Forward and Loop interaction types between the nodes in which tasks have internal concurrency." tags: - "interaction design" - "rule-based" - "meta programming" - "meta-model" - "modeling" - "parallel programming" - "type system" - "model-driven development" - "Meta-Environment" - "design" - "process modeling" researchr: "https://researchr.org/publication/MizanFranks2011" cites: 0 citedby: 0 booktitle: "Proceeding of the second joint WOSP/SIPEW international conference on Performance engineering" kind: "inproceedings" key: "MizanFranks2011" - title: "Interaction tree algorithms to extract effective architecture and layered performance models from traces" author: - name: "Tauseef A. Israr" link: "https://researchr.org/alias/tauseef-a.-israr" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" year: "2007" doi: "http://dx.doi.org/10.1016/j.jss.2006.07.019" abstract: "Models of software architecture and software performance both depend on identifying and describing the interactions between the components, during typical responses. This work identifies the components and interactions that are active during a tracing experiment, hence the name \"effective architecture\" and also derives layered performance models. The System Architecture and Model Extraction Technique (SAMEtech) described here overcomes a weakness of previous work with \"angio traces\" in two ways. It only requires standard trace formats (rather than a custom format which captures causality) and it uses a simpler algorithm which scales up linearly for very large traces. It accepts some limitations: components must not have internal parallelism with forking and joining of the flow of execution. SAMEtech uses pattern matching based on \"interaction trees\" for detecting various types of interactions (asynchronous, blocking synchronous, nested synchronous, and forwarding). With this information it builds architecture and performance models." links: doi: "http://dx.doi.org/10.1016/j.jss.2006.07.019" tags: - "rule-based" - "software architecture" - "software components" - "meta-model" - "architecture" - "software component" - "type system" - "tree pattern matching" - "data-flow" - "C++" - "pattern matching" - "information models" - "Meta-Environment" researchr: "https://researchr.org/publication/IsrarWF07" cites: 0 citedby: 0 journal: "jss" volume: "80" number: "4" pages: "474-492" kind: "article" key: "IsrarWF07" - title: "Performance Modeling of a Quorum Pattern in Layered Service Systems" author: - name: "Tariq Omari" link: "https://researchr.org/alias/tariq-omari" - name: "Salem Derisavi" link: "https://researchr.org/alias/salem-derisavi" - name: "Greg Franks" link: "http://www.sce.carleton.ca/faculty/franks" - name: "C. Murray Woodside" link: "http://www.sce.carleton.ca/faculty/woodside" year: "2007" doi: "http://doi.ieeecomputersociety.org/10.1109/QEST.2007.31" abstract: "Quorum consensus protocols execute requests in parallel and proceed once K out of N responses are received. The performance of a system depends on the value of K, the distributions of the quorum response delays, and on the use of system resources by the N concurrent requests. An analytic approximation is given for the delay to achieve the quorum, which also accounts for the contention and delay caused by the (N-K) delayed responses. Compared to simulation results, our approximation gives reasonable accuracy; about 5% in most cases. Our method is shown to be rapid and scalable." links: doi: "http://doi.ieeecomputersociety.org/10.1109/QEST.2007.31" tags: - "modeling" - "protocol" - "C++" researchr: "https://researchr.org/publication/OmariDFW07" cites: 0 citedby: 0 pages: "201-210" booktitle: "qest" kind: "inproceedings" key: "OmariDFW07"