Reducing Runtime Complexity of Long-Running Application Services via Dynamic Profiling and Dynamic Bytecode Adaptation for Improved Quality of Service

Size: px
Start display at page:

Download "Reducing Runtime Complexity of Long-Running Application Services via Dynamic Profiling and Dynamic Bytecode Adaptation for Improved Quality of Service"

Transcription

1 Reduing Runtime Complexity of Long-Running Appliation Servies via Dynami Profiling and Dynami Byteode Adaptation for Improved Quality of Servie ABSTRACT John Bergin Performane Engineering Laboratory University College Dublin Dublin, Ireland We present a transparent optimisation framework for automatially improving run-time performane of omponentbased enterprise appliations. Run-time performane is improved by automatially identifying and dynamially swithing to an optimised but funtionally equivalent program flow, for a speifi transation type. More preisely, one or more appliation omponents an have both stati and dynami inputs, where the former and its output remain mostly fixed from invoation-to-invoation, while the latter is unonstrained. Through dynami profiling and run-time adaptation, an optimised program flow is derived, that allows only future exeution of program points that operate on dynami inputs and not stati inputs. During exeution, a target appliation is instrumented to swith to an optimised program flow. Additional instrumentation ours to profile key program points that may invalidate an optimised program flow. If these points exeute, then the appliation reverts bak to its pre-optimised program flow. We evaluate and demonstrate how run-time performane for a typial thre-tired enterprise system an be improved for frequently aessed data that remains mostly stati. For the appliation studied we showed a 49% marked improvement in the number of users servied per seond. Categories and Subjet Desriptors D.3.4 [Programming Languages]: Proessors - Optimisation, Code generation, Run-time environments ; D.2.9 [Software Engineering]: Management -Life yle ; D.2.8 [Software Engineering]: Metris -Proess metris The presented work is funded by Enterprise Ireland Informatis Initiative 2004 Permission to make digital or hard opies of all or part of this work for personal or lassroom use is granted without fee provided that opies are not made or distributed for profit or ommerial advantage and that opies bear this notie and the full itation on the first page. To opy otherwise, to republish, to post on servers or to redistribute to lists, requires prior speifi permission and/or a fee. ASE Workshop on Automating Servie Quality, November 2007, Atlanta, Georgia, USA Copyright 2007 ACM ISBN: /07/11...$5.00. Liam Murphy Performane Engineering Laboratory University College Dublin Dublin, Ireland liam.murphy@ud.ie General Terms Performane, Profiling, Cahing, Measurement Keywords adaptation, Optimisation, Cahing, Profiling, Objet Cahing, Java Language 1. INTRODUCTION Large-Sale Enterprise Systems (LSES) typially exeute as managed Objet-Oriented (OO) programs on High-Level- Language Virtual Mahines (HLLVM) [16]. HLLVM use Garbage Colletion (GC) [9] to automatially dealloate unused run-time objets. GC offers numerous software engineering benefits, but often inurs run-time penalties of poor performane, during periods of redued memory availability [9]. OO languages enourage highly modularised programs, that result in large numbers of objet alloations and short lived method invoations, plaing inreased demands on GC. In addition, LSES often leads to exessive run-time ativity for simple funtionality. Suh omplex run-time behaviour arises from ineffiient oupling of heterogeneous, off-the-shelf omponents, ausing repliated movement and manipulation of system data during run-time [18]. Furthermore, due to the long-running nature of LSES suh ineffiient run-time exeution persists aross repliated invoations of idential user interations. Ineffiient program behaviour is beoming inreasingly diffiult to asses [18] and even more problemati to remove, due to a rise in dynami, distributed, omponent-based software engineering. Component-based frameworks (CBF), suh as Enterprise Java Beans (EJB), are being inreasingly adopted for building LSES. CBF yield numerous software engineering benefits, but inur run-time penalties of poor performane. This is due to an inreased reuse and oupling of blak-box omponents. Run-time modifiation of system omponents (dynami lass loading) and hanging ontexts (user s state) typially renders initial optimisations to prevent redundany obsolete. Cahing is key to preventing repeated run-time ativity for idential events. However, designing an effiient appliation independent ahing system for LSES is espeially diffiult due to their inherent heterogeneity. Cahing strategies used in appliation servers and supported middleware are too rudimentary to observe unneessary exeution of (a). fine grained events

2 and (b). program flow spanning multiple frameworks, leading to self-ontained and loalised ahing behaviour. In addition, ahing is ontext sensitive and requires multiple ahe types to servie varying appliation workloads and appliation-speifi knowledge to effiiently ahe program behaviour. Knowing whih program points reeives no further exeution is typially based on a simplified understanding of global omponent-to-omponent run-time ontexts. Suh oarse-grained ahing misses out on opportunities for fine-grained (method-to-method) ahing opportunities. We present a framework that an identify opportunities for finegrained ahing of multi-tiered enterprise appliations at varying levels of granularity that are loal and or distributed. Our framework makes the following ontributions: (a). automati elimination of redundant exeution (no progammer annotataion is needed), (b). redundany elimination is dynami and an adapt to a hanging system, (). our solution is appliation indenpendent and portable aross Java Virtual Mahines (JVM), (d). finally our framework an detet end-to-end redundany, i.e. aross distributed JVM. 2. BACKGROUND: OBJECT ALLOCATION The Java Virtual Mahine (JVM) [16] defines the following data types: primitive data types, referenes and objets, where objets are omposed of primitive and referene types. Primitive data types inlude: short, byte, int, double, long, boolean, double, float and return-address. Referene values point to objets, and objets are either an instane of a lass or an array. Three data storage areas are defined for the JVM - global, loal and operand. Heap: Global storage, also ommonly referred to as the heap is where objets and arrays are alloated. Heap alloations are ostly, sine objets and arrays are not expliitly dealloated. An automati memory manager known as the garbage olletor is invoked at speifi periods of time (depending on the olletion algorithm) to find all reahable objets. Those that are not reahable from global root objets are marked for olletion, dealloated and free up heap spae. Compation based olletors will redue heap fragmentation by organising heap objets into a non-fragmented ontiguous blok of objets. The heap memory does not have to be ontiguous but a defragmented heap results in fewer ahe misses and page faults, that greatly effet program performane [5, 12]. In addition, aess to heap objets require objet loks, that are ostly espeially given the large number of objets live at any time in the heap. Garbage Colletion Performane: Hertz et al. demonstrate the impat automati memory management has on program performane. The authors onlude that to math the performane of an expliit memory managed program (i.e. where the programer expliitly dealloates objets) an Appel-style generational olletor with a non-opying mature spae and a heap size five times greater is required [9]. Objet ahing frameworks [10, 6, 13] maintain their ahe on the heap, these ahes an be large and often ontain un-referened objets. Managing ahed data plaes further demands on the garbage olletor and it also redues the amount of available memory to a program, that an further degrade program performane if a large number of ahe misses our [5, 12]. Stak: Not all Java types are heap alloated: primitive data types, referenes, individual array elements, and proedure arguments are plaed on the stak. Some JVM implementations offer a run-time optimisation tehnique known as esape-analysis [4], whih fores stak alloation of normally heap alloated objets / arrays that do not esape the lifetime of the method in whih they are reated. When a method is invoked the JVM reates a new stak frame that enapsulates loal variables, operands and opodes for the entire life-yle of the method. One the method finishes exeuting, its staked data is simply overwritten and no garbage olletion is neessary. Foring stak alloation of normally staked objets an improve program performane greatly, but the potential to stak alloated objets is appliation dependant. 3. FRAMEWORK OVERVIEW We present a transparent optimisation framework for automatially improving run-time performane of omponentbased enterprise appliations and their underlying middleware. Run-time performane is improved by automatially identifying and migrating to an optimised (simplified) but funtionally equivalent ontrol flow for speifi user requests. More preisely, one or more appliation omponents an have both stati and dynami inputs, where the former and its output remain mostly fixed from invoation-to-invoation, while the latter is unonstrained. Through dynami profiling and run-time adaptation an optimised ontrol flow is derived that allows only future exeution of program points that operate on dynami inputs but not stati inputs. Our framework provides a transparent, appliation independent ahing tehnique for isolating and removing redundant program ativity resulting from user requests (end-toend transations) that results in idential output, or output that is largely stati from invoation-to-invoation. A transation defines both the ontrol flow (order of exeution - all paths) and data flow (data movement and transformation) resulting from a speifi user transation. A transation s run-time performane is improved by eliminating unneessary repetitive run-time behaviour, via on-line profiling and dynami byteode adaptation. We eliminate partial program exeution for speifi transation types based on redundant objet ativity, i.e. ostly objetion alloations, objet look ups, and objet modifiation for idential, repeated invoations. Optimisation is ahieved in 3 distint phases: (a) Profiling (b) Redundany Detetion and () Optimisation (dynami byteode adaptation). 3.1 Multi-threaded Call Path Profiling Call paths define program exeution at method entry and method exit. We extrat suh ativity by inserting byteode at the beginning and end of eah method points using the Java Virtual Mahine Tool Interfae (JVMTI) [11]. On method entry and exit points, the added byteode invokes a method to update a data struture used to reord the order of method exeution. A direted graph maintains a olletion of all paths for eah thread. Eah all path maintains the state of its all stak as a parent-hild node relationship, where eah node is assoiated with frequeny information and other run-time metris. Instrumentation ours by first speifying during run-time one or more root method(s) for profiling. Our framework identifies further methods to instrument by parsing a root method s byteode and statially

3 analysing the flow of exeution from lass to lass, expanding the number of edges and nodes as the analysis proeeds. The analysis will ontinue to a user defined depth or until the omplete transitive losure of the all path is identified, i.e. no further method invoations are made. One profiling is initiated, all paths are not olleted until an appliation s thread enters a root method. If a method hosen for profiling is a hild proess of an exeuting thread, profiling will not begin until an instrumented root method is re-invoked. 3.2 Objet Traking As well as apturing a program s flow of exeution, additional probes are instrumented to reord suh objet ativity as: instanes of objet alloations, values passed to and from method invoations, and objet modifying events. To determine if an objet s value is hanging, a tostring method is added to every lass loaded by the JVM. When an objet is passed to and from a method a hash of an objet s tostring value is ompared to previously hashed values for the urrent method invoation. If they math then the objets value has not hanged, but if they differ then an attribute s assoiated with this node is inremented, stating that the objet value has hanged. Additional byteode analysis is done to derive the ontrol flow of a method, suh analysis determines if an objet is esaping its enapsulated method. Depending on a method s ontrol flow an objet an be both esaping and non-esaping. If an objet esapes to a method M and M alters objet O, then an edge of type E w is plaed from M O. 3.3 Ativity Graph We introdue the notion of a run-time abstration alled the Ativity Graph, that aptures the relationship between methods and objets. We struture these relationships as a direted graph G = (N m, N l, N r, Ng, E r, E a, E m, E w), where N m represents the set of method all(s), and a program statement in a method that alloates, writes or referenes an objet - statement(n m). At least one invoation of N m must be made for G to exist. N l represents the set of heap alloated objets loal to a method. N g represents the set of heap alloated objets that are globally aessed by one or more methods, or objets passed to and from methods. N r represents the set of objet referenes from loalto-global objets or from global-to-global objets, and from loal-to-loal, but not loal-to-global referenes. E m represents the set of method edges, If x y ǫ E m, then x,y ǫ N m. E r represents the set of edges referening objets, If x y ǫ E r, then x ǫ N r y ǫ N l N g N r. E a represents the set of alloation edges, If x a y ǫ E a then x ǫ N m N l N r y ǫ N l N g N r x ǫ N m N g N r y ǫ N g N r. E w represents the set of edges that write to objets, If x w y ǫ E w, then x ǫ N m N l N r y ǫ N l N g N r x ǫ N m N g N r y ǫ N g N r. Given a reahable node o ǫ N g N r N l N m, the set of reahable nodes O G that o points to diretly and indiretly is determined by traversing the edge(s) leading from o until no further edges an be traversed. An edge between nodes an denote one of the following transation types: x y, ǫ E r, E m node x points to node (method / objet) y, x a y, ǫ E a denotes that x alloates an objet y, and x w y, ǫ E w states that x alters y. We formalise the transition between nodes as: Definition 1: Let x, y ǫ N m N g N l N r. The sequene of all nodes leading from x is denoted by x +p y, where x = x 0 x 1... y terminating at node y where no further edges an be traversed. We formalise the funtion used to determine the full transitive losure of all nodes leading from x as, let x ǫ N m N g N l N r., and the set of reahable nodes pointed to by x is: FullTransitiveClosure(x) = {y x +p y} If an appliation omponent x ontinuously reeives and returns the same objet y, then x is hosen as and initial node in a larger graph for potential redundany elimination. We apply the funtion F ullt ransitiveclosure to x, to determine the omplete transitive losure from x. The returned set of nodes is traversed, searhing for the initial point of exeution where the objet y is reated or where it s dependenies are reated. To understand how this is ahieved, the set of global objets needs to be further defined. The set of global objets N g ontains subsets of different global objet types. Eah sub-type differs in how objets behave within method invoations. It is important to know where objets are passed to and from. These additional properties are only required for global objets. Listing 1 illustrates using Java ode how suh sub-types are reognised and behave. S1 is the only objet not to esape its enapsulated method. The string new is forwarded to method M2 for proessing, we refer to this objet as globally forward (GF) moving. If the objet is passed from method-to-method and all edges pointing to the objet are of type N r, then the objets value is hard-oded into a method s byteode. Objet S3 is referred to as a globally forward and bakward moving, sine it aepts a value returned from a method invoation. Similarly S4 is referred to as a globally forward bakward and returned objet. Finally, the string equal is returned from M1. By knowing both an objets movement pattern outside the method in whih it was reated and all edges leading to and from an objet, one an determine if O s value remains onstant. for its entire life-yle for eah time it s instantiated. Figure 1 should help to illustrate the onnetion between the ativity graph and soure ode. 3.4 Redundany Detetion Eah node in the graph is augmented with two frequeny metris: i and s, where i ounts the number of node invoations, and s ounts the number of state hanges for a node (i.e. has an objets value hanged, is a method pulling the same value, is a method s aller pushing the same value). We look for a steady state to our in G, whereby the frequeny values for eah node are inreasing, and the state values remain onstant. We have found from analysing the

4 publi Objet M1() { String S1 = "s1"; M2(new String("new")); String S3 = "s3"; S3 = M3(S3); String S4 = "s4"; S4 = M3(S4); if(s4.equals("s4")) return S4; if(s3.equals(s4)) return "equal"; } Listing 1: Method M1 - Objet Sope S1 M2 (S2) M0 M1 (S4),( SR ) (S3),(S4)* M3 r w w S2 S3 S4 run-time Ativity Graph of numerous tightly oupled threetiered systems, that a large subset of a transation s nodes beome redundant after their initial invoation. By redundant we mean, that the node only serves to at as a support node for suessive invoations of larger transations to repeatedly pull the same data from objets, or from a database. This form of repeated objet ativity is extremely ostly. Our framework allows for on-the-fly definitions of redundant behaviour, by leveraging the type of information provided by the Ativity Graph. For example, we onsider method m to be the first node in a redundant data pulling senario, that is part of a transation U i, suh that U i G and m ontinues to retrieve objet o, whose value rarely hanges. We then hek to see if all nodes leading from m in U i have reahed a steady state, suh that, i,sequal(u i,s), where U ǫ N m N g ǫ N l. 3.5 Cahing and Byteode adaptation If the set of nodes in U [N 1,.., N n] have reahed a steady state, then U is hoosen for redundany elimination. If node N n ontinues to pull stati data from a repository (objet or database), and nodes N 1,., N n 1 only serve to instantiate an instane of N n then we refer to the set of redundant nodes (N 2,.., N n 1) in U i as U ir and the optimised set of paths for the next invoation of U i as U io = U U ir. The edge N m leading from N 1 to N 2 is removed, thus preventing further exeution of the redundant path. The objet returned to N 1 is stripped of it s primitive data types and their values are hard-oded into N 1. On future invoations of N 1 the stak alloated hard-oded data is returned. Alternatively there ould exist a path N 1,..., N n, N 1 whih passes an objet O to N 2 where N 2 and suessive nodes up to N n1 ontinue to reapply the same operations to O. One the altered objet reahes N n a new operation is always applied to O. In this ase the set of redundant path is N 2,..., N n 1. Byteode is added to rediret the all from N 1 N 2 to N 1 N n with the ahed objet O (taken from the output of N n 1) is sent diretly to N n. 3.6 Disussion We improve on standard objet ahing frameworks by observing the following program behaviour: program exeution based on a request, response olletion of method invoations, where a method often requests a speifi data value, that results in objets being alloated, populated and Figure 1: Ativity Graph for Method M1 returned to their aller. Objets serve only as entities to enapsulate and transfer sets of primitive data types between method invoations, upon where the aller strips an objet of it s primitive data types for further program manipulation. If this type of request, response exeution repeats, and repeats returning the same primitive data values, then suh ativity should be ahed. Current Plain Old Java Objet (POJO) ahing frameworks an observe (in some situations) and ahe suh ativity by preserving the final objet returned from a request, response senario [10, 6, 13, 14]. However, multiple instanes of suh ativity our frequently during exeution, and sine the ahed objet is still heap alloated, program performane still suffers from garbage olletion yles, objet loks, ahe misses and page faults [12]. We redue the possibility for suh performane degradation by stripping the would be ahed objet of its primitive data types and hard-oding their values into a method s body. On it s next invoation the data values are stak alloated. In doing so, we must ensure that no external objets or methods on the same thread or onurrent threads require the would be ahed objet s values. We perform esape analysis [4] to ensure that an objet s life-yle does not esape the method in whih it s reated. If an external method or thread of exeution strips a primate data type from the objet, the external method / objet is also hardoded with the primitive onstant. 4. RELATED WORK The following related work also seeks to redue the runtime omplexity of managed languages, by preventing repeated exeution of program events that ontinue to repeated idential behaviour aross invoations. However, despite the usefullness of eah approah, eah has a limiting fator for removing redundant run-time exeution in multitiered enterprise appliations. In-lining, Salar replaement: The JVM an perform a number of optimisation proedures to improve the performane of aessing and manipulating heap-alloated

5 objets. Aessing fields held in objets often involves levels of address indiretion, individual objet field aess suffer small overhead that an aumulate. To ope with reation overhead, if profiling indiates a partiular objet is frequently alloated, then the ode for the heap alloation and objet initialisation an be inlined. Further optimisations inlude salar replaement [7] that an redue objet aess delays, under speifi irumstanes. This optimisation replaes an objet s field with a salar value. For example the program statement objet.value = 10; is replaed with int s = 10 and printing suh values moves from print(objet.value) to print(s). Speialisation, Multiversioning: Some virtual mahines employ a more sophistiated and aggressive dynami optimisation tehnique known as Speialisation [20], where hot-portions of program exeution are heavily optimised by hard-oding frequently ourring values that depend on them bak into a method s byteode. In [8] the authors quantify the performane improvement gained from appliations suitable for speialisation, they demonstrate that program exeution an have marked speedups of five fold. Despite suh powerful optimisation potential, speialisation tehniques are not inluded in high-level-language Java Virtual Mahines, sine urrent speialisation tehniques are staged, they require multiple off-line preproessing runs and also require the need for programr annotation [3, 15]. [19] presents a dynami transparent run-time speialiser that is integrated with the Just-in-Time (JIT) ompiler of the Jike s Researh Virtual Mahine (JRVM). This work is losely related to our efforts. However, the speialiser presented is speifi to JVM implementation. The framework requires monitoring of the heap (to detet when objet values hange) that an t be done using a Java Virtual Mahine Tool Interfae (JVMTI) [11] based approah. Our framework profiles program exeution to detet a hange in objet values. Furthermore, the authors use the Arnold-Ryder sampling framework [2], we use byteode instrumentation that aptures all instrumented program exeution rather than sampling programming points. Beause of this we believe that our framework an identify more points for potential ahing (redundany elimination / speialisation). A sampling profiler is not suitable for the appliations we intend to optimise, sine an update to a ahed objet may our one in thousands of program events, rendering hard-oded results returned for speialised events invalid. Redundany Elimination: Enterprise systems are ideal andidates for potential ahing, as they frequently re-exeute idential program exeution for popular user requests. Trofin et al. [21] automatially removes redundant Enterprise Java Bean (EJB) ontainer servies for ontextually bounded omponent based systems, leading to redued program ativity. But the optimisation framework requires that the underlying appliation framework desribe all possible transation types and boundary onditions. In [17] a novel optimisation tehnique is presented, that disovers opportunities for replaing a set of equivalent objet instanes with a single representative objet. This type of optimisation reports similar results as program speialisers. Enterprise Cahing Frameworks: There are many advantages to using objet ahing for LSES, but there are many disadvantages to urrent ahing systems [10, 6, 13, 14]. Current appliation ahing frameworks are appliation dependant and require ontinuous onfiguration. In addition, multiple ahing systems are often need to maintain effiient ahing of one LSES, due to the appliations heterogeneity and distributed system omponents. Furthermore, suh ahing frameworks heap alloated ahed data; heap size an grow unaeptably if there a ahe is ineffiiently managed. 5. EVALUATION This setion presents an empirial evaluation of our urrent framework. We measure its ability to detet and eliminate redundant program behaviour for a three-tiered JEE appliation. We measure the appliations performane and its effet on system behaviour for a non-optimised and an optimised run where redundant behaviour is removed. 5.1 Sample Appliation A JEE Enterprise banking appliation, Duke s Bank [1], was used to demonstrate our framework s performane ahing apabilities. Duke s Bank is a sample JEE appliation that allows ustomers to perform banking operations online. Suh operations inlude: aessing aount histories and performing banking transations. Duke s Bank is designed as a typial three-tiered enterprise appliation, with a web, appliation and a database tier. The appliation ontains three main business entities: ustomer, aount and banking transation. Eah of these business entities is implemented by a separate Entity bean in the appliation tier and by a orresponding table in the relational database. The appliation is designed so that all Entity beans are aessed via Stateful Session beans. Conforming to the EJB speifiation, instanes of Stateful Session EJBs maintain their state for the entire duration of a lient session. Thus, in Duke s Bank, the Entity bean instanes must also remain available for the entire duration of the lient s session. 5.2 Experimental Environment The following distributed testbed was used to arry out our experiments. Three mahines were used. MySQL and JBoss appliation server ran on separate but idential Intel Pentium IV 2.4Ghz based mahines that had 512MB or RAM and both ran Linux kernel as their supporting operating system. A third and idential mahine ran Jmeter to load both the database and appliation server with a syntheti real world workload. The workload repliated five users logging in every seond, heking their bank aount balanes and then logging off. This workload was repeated for a duration of a half hour. 5.3 Results and Disussion The results presented in table 1, depited the differene in run-time performane for an optimised and non-optimised instane of Duke s Bank responding to a syntheti workload of twenty users logging in every seond, heking their bank aount balanes and then logging off. Our framework deteted repeated invoations of idential program ativity resulting from multiple user s requesting their aount information. The initial point in the redundant path begins at the Dispather.doGet( aountlist ) method, where a request for aounlist is made to return a user s aount balane. The full transitive losure of FullTransitive-

6 Duke s Bank (DB) DB DB (optimised) I Objet alloations (#) 826, ,260 69% Method invoations (#) 189,729 78,008 59% Garbage olletions (#) % Average GC time (ms) 27,311 19,986 27% Peak heap size (MB) % Response time (ms) 1, % Users per seond (#) % Table 1: Improved (I ) runtime performane Closure(Dispather.doGet()) returns a set of nodes that desribe the relationship between method and objet ativity, we apture this information in an ativity graph and begin to profile a hange in state for eah event in the graph. The ativity graph for nodes leading from Dispather.doGet() show that N m, N g nodes resulting from alls to Aount- ControllerBean, AountBean and alls to the database to populate AountBean have all reahed a steady state, i.e. i is inreasing for all nodes and s remains onstant. Sine a steady state has been reahed, Dispather.doGet() is hosen for ahing (redundany elimination). A ontrol statement is added to Dispather.doGet() to immediately return the ahed value (now a set of one or more loal variables in Dispather.doGet()) iff the request is of type aountlist and for a user who s aount balane has not hanged. Table 1 shows a 69% and 59% redution in objet alloations and method invoations for the optimised Duke s Bank instane. This in turn leads to a derease in: garbage olletions, heap size and response time. As a result, the number of users servied per seond inreased by 49%. We leave automati detetion of program ativity that updates a user s aount balane and renders ahed data inaurate as future work. 6. CONCLUSIONS AND FUTURE WORK We present a transparent, appliation independent ahing tehnique for isolating and extrating a user s end-to-end transation. A transation s run-time performane is improved by eliminating unneessary repetitive run-time behaviour, via on-line profiling and dynami byteode adaptation. We eliminate partial program exeution for speifi transation types based on redundant objet ativity, i.e. ostly objetion alloations, objet look ups, and objet modifiation for idential, repeated invoations. The optimisation senario presented dealt with a set of single threaded events at eah tier. Future work inludes: addressing the robustness (sensitivity to hange in ahed data), orretness (verifing program orretness after adaptation) and performane overhead of our framework for a real world appliation under a realisti workload senario. 7. REFERENCES [1] Dukes s bank. 3-fs/do/Ebank.html. [2] M. Arnold and B. Ryder. A framework work for reduing the ost of instrumented ode. Programming Languages Design and Implementation, June [3] M. Arnoldand, S. Finkand, D. Groveand, M. Hindand, and P. F. Sweeney. Adaptive optimisation in the Jalapeno JVM. Objet-Oriented Programming, Systems, Languages, and Appliations, Otober [4] B. Blanhet. Esape analysis for objet oriented languages: appliation to java. Objet-Oriented Programming, Systems, Languages, and Appliations, November [5] H.-J. Boehm. Reduing garbage olletor ahe misses. International Symposium on Memory Management, Otober [6] J. Bortvedt. Funtional speifiation for objet ahing servie for java. Orale Corporation. [7] S. Carr and K. Kennedy. Salar replaement in the presene of onditional ontrol flow. Software - Pratie and Experiene, p [8] B. Grant, M. Philipose, M. Mok, C. Chambers, and S. J. Eggers. An evaluation of staged run-time optimisations in dy. Programming Language Design and Implementation, May [9] M. Hertz and E. Berger. Quantifying the performane of garbage olletion vs. expliit memory management. Objet-Oriented Programming, Systems, Languages, and Appliations, Otober [10] JCahe. Java temporary ahing api. (JSR [11] JVMTI. (JSR [12] S. F. Kaplan, L. A. MGeoh, and M. F. Cole. Adaptive ahing for demand pre-paging. International Symposium on Memory Management, June [13] V. Krishnaswamy, I. B. Ganev, J. M. Dharap, and M. Ahamad. Distributed objet implementations for interative appliations. Middleware, April [14] E. Lebmann and S. Dustdar. Adaptive data dissemination and ahing for edge servie arhitetures built with the J2EE. ACM SIG Symposium On Applied Computing, Marh [15] P. Lee and M. Leone. Optimising ML with run-time ode generation. Programming Language Design and Implementation, May [16] T. Lindohlm and F. Yellin. The java virtual mahine speifiation. Addison-Wesley, Reading, MA, 2nd ed [17] D. Marinov and R. O Callahan. Objet equality profiling. Objet-Oriented Programming, Systems, Languages, and Appliations, Otober [18] N. Mithell. The runtime struture of objet ownership. European Conferene on Objet-Oriented Programming, July [19] A. Shankar, S. S. Sastry, R. Bodk, and J. E. Smith. Runtime speialization with optimisti heap analysis. Objet-Oriented Programming, Systems, Languages, and Appliations, Otober [20] T. Suganuma, T. Yasue, M. Kawahito, H. Komatsu, and T. Nakatani. A dynami optimisation framework for a java just-in-time ompiler. Objet-Oriented Programming, Systems, Languages, and Appliations, November [21] M. Trofin. Removing redundant boundary heks in ontextual omposition frameworks. Journal of Objet Tehnology, July, August 2006.

On - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2

On - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2 On - Line Path Delay Fault Testing of Omega MINs M. Bellos, E. Kalligeros, D. Nikolos,2 & H. T. Vergos,2 Dept. of Computer Engineering and Informatis 2 Computer Tehnology Institute University of Patras,

More information

Exploring the Commonality in Feature Modeling Notations

Exploring the Commonality in Feature Modeling Notations Exploring the Commonality in Feature Modeling Notations Miloslav ŠÍPKA Slovak University of Tehnology Faulty of Informatis and Information Tehnologies Ilkovičova 3, 842 16 Bratislava, Slovakia miloslav.sipka@gmail.om

More information

Pipelined Multipliers for Reconfigurable Hardware

Pipelined Multipliers for Reconfigurable Hardware Pipelined Multipliers for Reonfigurable Hardware Mithell J. Myjak and José G. Delgado-Frias Shool of Eletrial Engineering and Computer Siene, Washington State University Pullman, WA 99164-2752 USA {mmyjak,

More information

Outline: Software Design

Outline: Software Design Outline: Software Design. Goals History of software design ideas Design priniples Design methods Life belt or leg iron? (Budgen) Copyright Nany Leveson, Sept. 1999 A Little History... At first, struggling

More information

What are Cycle-Stealing Systems Good For? A Detailed Performance Model Case Study

What are Cycle-Stealing Systems Good For? A Detailed Performance Model Case Study What are Cyle-Stealing Systems Good For? A Detailed Performane Model Case Study Wayne Kelly and Jiro Sumitomo Queensland University of Tehnology, Australia {w.kelly, j.sumitomo}@qut.edu.au Abstrat The

More information

PROJECT PERIODIC REPORT

PROJECT PERIODIC REPORT FP7-ICT-2007-1 Contrat no.: 215040 www.ative-projet.eu PROJECT PERIODIC REPORT Publishable Summary Grant Agreement number: ICT-215040 Projet aronym: Projet title: Enabling the Knowledge Powered Enterprise

More information

Learning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract

Learning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract CS 9 Projet Final Report: Learning Convention Propagation in BeerAdvoate Reviews from a etwork Perspetive Abstrat We look at the way onventions propagate between reviews on the BeerAdvoate dataset, and

More information

Space- and Time-Efficient BDD Construction via Working Set Control

Space- and Time-Efficient BDD Construction via Working Set Control Spae- and Time-Effiient BDD Constrution via Working Set Control Bwolen Yang Yirng-An Chen Randal E. Bryant David R. O Hallaron Computer Siene Department Carnegie Mellon University Pittsburgh, PA 15213.

More information

Extracting Partition Statistics from Semistructured Data

Extracting Partition Statistics from Semistructured Data Extrating Partition Statistis from Semistrutured Data John N. Wilson Rihard Gourlay Robert Japp Mathias Neumüller Department of Computer and Information Sienes University of Strathlyde, Glasgow, UK {jnw,rsg,rpj,mathias}@is.strath.a.uk

More information

Algorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking

Algorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking Algorithms for External Memory Leture 6 Graph Algorithms - Weighted List Ranking Leturer: Nodari Sithinava Sribe: Andi Hellmund, Simon Ohsenreither 1 Introdution & Motivation After talking about I/O-effiient

More information

COSSIM An Integrated Solution to Address the Simulator Gap for Parallel Heterogeneous Systems

COSSIM An Integrated Solution to Address the Simulator Gap for Parallel Heterogeneous Systems COSSIM An Integrated Solution to Address the Simulator Gap for Parallel Heterogeneous Systems Andreas Brokalakis Synelixis Solutions Ltd, Greee brokalakis@synelixis.om Nikolaos Tampouratzis Teleommuniation

More information

Interconnection Styles

Interconnection Styles Interonnetion tyles oftware Design Following the Export (erver) tyle 2 M1 M4 M5 4 M3 M6 1 3 oftware Design Following the Export (Client) tyle e 2 e M1 M4 M5 4 M3 M6 1 e 3 oftware Design Following the Export

More information

Automatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425)

Automatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425) Automati Physial Design Tuning: Workload as a Sequene Sanjay Agrawal Mirosoft Researh One Mirosoft Way Redmond, WA, USA +1-(425) 75-357 sagrawal@mirosoft.om Eri Chu * Computer Sienes Department University

More information

HEXA: Compact Data Structures for Faster Packet Processing

HEXA: Compact Data Structures for Faster Packet Processing Washington University in St. Louis Washington University Open Sholarship All Computer Siene and Engineering Researh Computer Siene and Engineering Report Number: 27-26 27 HEXA: Compat Data Strutures for

More information

Constructing Transaction Serialization Order for Incremental. Data Warehouse Refresh. Ming-Ling Lo and Hui-I Hsiao. IBM T. J. Watson Research Center

Constructing Transaction Serialization Order for Incremental. Data Warehouse Refresh. Ming-Ling Lo and Hui-I Hsiao. IBM T. J. Watson Research Center Construting Transation Serialization Order for Inremental Data Warehouse Refresh Ming-Ling Lo and Hui-I Hsiao IBM T. J. Watson Researh Center July 11, 1997 Abstrat In typial pratie of data warehouse, the

More information

System-Level Parallelism and Throughput Optimization in Designing Reconfigurable Computing Applications

System-Level Parallelism and Throughput Optimization in Designing Reconfigurable Computing Applications System-Level Parallelism and hroughput Optimization in Designing Reonfigurable Computing Appliations Esam El-Araby 1, Mohamed aher 1, Kris Gaj 2, arek El-Ghazawi 1, David Caliga 3, and Nikitas Alexandridis

More information

Reading Object Code. A Visible/Z Lesson

Reading Object Code. A Visible/Z Lesson Reading Objet Code A Visible/Z Lesson The Idea: When programming in a high-level language, we rarely have to think about the speifi ode that is generated for eah instrution by a ompiler. But as an assembly

More information

CleanUp: Improving Quadrilateral Finite Element Meshes

CleanUp: Improving Quadrilateral Finite Element Meshes CleanUp: Improving Quadrilateral Finite Element Meshes Paul Kinney MD-10 ECC P.O. Box 203 Ford Motor Company Dearborn, MI. 8121 (313) 28-1228 pkinney@ford.om Abstrat: Unless an all quadrilateral (quad)

More information

This fact makes it difficult to evaluate the cost function to be minimized

This fact makes it difficult to evaluate the cost function to be minimized RSOURC LLOCTION N SSINMNT In the resoure alloation step the amount of resoures required to exeute the different types of proesses is determined. We will refer to the time interval during whih a proess

More information

COST PERFORMANCE ASPECTS OF CCD FAST AUXILIARY MEMORY

COST PERFORMANCE ASPECTS OF CCD FAST AUXILIARY MEMORY COST PERFORMANCE ASPECTS OF CCD FAST AUXILIARY MEMORY Dileep P, Bhondarkor Texas Instruments Inorporated Dallas, Texas ABSTRACT Charge oupled devies (CCD's) hove been mentioned as potential fast auxiliary

More information

Methods for Multi-Dimensional Robustness Optimization in Complex Embedded Systems

Methods for Multi-Dimensional Robustness Optimization in Complex Embedded Systems Methods for Multi-Dimensional Robustness Optimization in Complex Embedded Systems Arne Hamann, Razvan Rau, Rolf Ernst Institute of Computer and Communiation Network Engineering Tehnial University of Braunshweig,

More information

Volume 3, Issue 9, September 2013 International Journal of Advanced Research in Computer Science and Software Engineering

Volume 3, Issue 9, September 2013 International Journal of Advanced Research in Computer Science and Software Engineering Volume 3, Issue 9, September 2013 ISSN: 2277 128X International Journal of Advaned Researh in Computer Siene and Software Engineering Researh Paper Available online at: www.ijarsse.om A New-Fangled Algorithm

More information

Performance Benchmarks for an Interactive Video-on-Demand System

Performance Benchmarks for an Interactive Video-on-Demand System Performane Benhmarks for an Interative Video-on-Demand System. Guo,P.G.Taylor,E.W.M.Wong,S.Chan,M.Zukerman andk.s.tang ARC Speial Researh Centre for Ultra-Broadband Information Networks (CUBIN) Department

More information

Runtime Support for OOLs Part II Comp 412

Runtime Support for OOLs Part II Comp 412 COMP 412 FALL 2017 Runtime Support for OOLs Part II Comp 412 soure IR Front End Optimizer Bak End IR target Copright 2017, Keith D. Cooper & Linda Torzon, all rights reserved. Students enrolled in Comp

More information

Capturing Large Intra-class Variations of Biometric Data by Template Co-updating

Capturing Large Intra-class Variations of Biometric Data by Template Co-updating Capturing Large Intra-lass Variations of Biometri Data by Template Co-updating Ajita Rattani University of Cagliari Piazza d'armi, Cagliari, Italy ajita.rattani@diee.unia.it Gian Lua Marialis University

More information

Analysis of input and output configurations for use in four-valued CCD programmable logic arrays

Analysis of input and output configurations for use in four-valued CCD programmable logic arrays nalysis of input and output onfigurations for use in four-valued D programmable logi arrays J.T. utler H.G. Kerkhoff ndexing terms: Logi, iruit theory and design, harge-oupled devies bstrat: s in binary,

More information

COMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation

COMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation Prelude COMP 181 Intermediate representations and ode generation November, 009 What is this devie? Large Hadron Collider What is a hadron? Subatomi partile made up of quarks bound by the strong fore What

More information

Reading Object Code. A Visible/Z Lesson

Reading Object Code. A Visible/Z Lesson Reading Objet Code A Visible/Z Lesson The Idea: When programming in a high-level language, we rarely have to think about the speifi ode that is generated for eah instrution by a ompiler. But as an assembly

More information

Partial Character Decoding for Improved Regular Expression Matching in FPGAs

Partial Character Decoding for Improved Regular Expression Matching in FPGAs Partial Charater Deoding for Improved Regular Expression Mathing in FPGAs Peter Sutton Shool of Information Tehnology and Eletrial Engineering The University of Queensland Brisbane, Queensland, 4072, Australia

More information

A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR

A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR Malaysian Journal of Computer Siene, Vol 10 No 1, June 1997, pp 36-41 A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR Md Rafiqul Islam, Harihodin Selamat and Mohd Noor Md Sap Faulty of Computer Siene and

More information

Test Case Generation from UML State Machines

Test Case Generation from UML State Machines Test Case Generation from UML State Mahines Dirk Seifert To ite this version: Dirk Seifert. Test Case Generation from UML State Mahines. [Researh Report] 2008. HAL Id: inria-00268864

More information

Facility Location: Distributed Approximation

Facility Location: Distributed Approximation Faility Loation: Distributed Approximation Thomas Mosibroda Roger Wattenhofer Distributed Computing Group PODC 2005 Where to plae ahes in the Internet? A distributed appliation that has to dynamially plae

More information

Accommodations of QoS DiffServ Over IP and MPLS Networks

Accommodations of QoS DiffServ Over IP and MPLS Networks Aommodations of QoS DiffServ Over IP and MPLS Networks Abdullah AlWehaibi, Anjali Agarwal, Mihael Kadoh and Ahmed ElHakeem Department of Eletrial and Computer Department de Genie Eletrique Engineering

More information

Calculation of typical running time of a branch-and-bound algorithm for the vertex-cover problem

Calculation of typical running time of a branch-and-bound algorithm for the vertex-cover problem Calulation of typial running time of a branh-and-bound algorithm for the vertex-over problem Joni Pajarinen, Joni.Pajarinen@iki.fi Otober 21, 2007 1 Introdution The vertex-over problem is one of a olletion

More information

Compilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A.

Compilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A. Compilation 0368-3133 Leture 11a Text book: Modern ompiler implementation in C Andrew A. Appel Register Alloation Noam Rinetzky 1 Registers Dediated memory loations that an be aessed quikly, an have omputations

More information

- 1 - S 21. Directory-based Administration of Virtual Private Networks: Policy & Configuration. Charles A Kunzinger.

- 1 - S 21. Directory-based Administration of Virtual Private Networks: Policy & Configuration. Charles A Kunzinger. - 1 - S 21 Diretory-based Administration of Virtual Private Networks: Poliy & Configuration Charles A Kunzinger kunzinge@us.ibm.om - 2 - Clik here Agenda to type page title What is a VPN? What is VPN Poliy?

More information

Allocating Rotating Registers by Scheduling

Allocating Rotating Registers by Scheduling Alloating Rotating Registers by Sheduling Hongbo Rong Hyunhul Park Cheng Wang Youfeng Wu Programming Systems Lab Intel Labs {hongbo.rong,hyunhul.park,heng..wang,youfeng.wu}@intel.om ABSTRACT A rotating

More information

Algorithms, Mechanisms and Procedures for the Computer-aided Project Generation System

Algorithms, Mechanisms and Procedures for the Computer-aided Project Generation System Algorithms, Mehanisms and Proedures for the Computer-aided Projet Generation System Anton O. Butko 1*, Aleksandr P. Briukhovetskii 2, Dmitry E. Grigoriev 2# and Konstantin S. Kalashnikov 3 1 Department

More information

CA Test Data Manager 4.x Implementation Proven Professional Exam (CAT-681) Study Guide Version 1.0

CA Test Data Manager 4.x Implementation Proven Professional Exam (CAT-681) Study Guide Version 1.0 Implementation Proven Professional Study Guide Version 1.0 PROPRIETARY AND CONFIDENTIAL INFORMATION 2017 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer

More information

Chapter 2: Introduction to Maple V

Chapter 2: Introduction to Maple V Chapter 2: Introdution to Maple V 2-1 Working with Maple Worksheets Try It! (p. 15) Start a Maple session with an empty worksheet. The name of the worksheet should be Untitled (1). Use one of the standard

More information

RAC 2 E: Novel Rendezvous Protocol for Asynchronous Cognitive Radios in Cooperative Environments

RAC 2 E: Novel Rendezvous Protocol for Asynchronous Cognitive Radios in Cooperative Environments 21st Annual IEEE International Symposium on Personal, Indoor and Mobile Radio Communiations 1 RAC 2 E: Novel Rendezvous Protool for Asynhronous Cognitive Radios in Cooperative Environments Valentina Pavlovska,

More information

Make your process world

Make your process world Automation platforms Modion Quantum Safety System Make your proess world a safer plae You are faing omplex hallenges... Safety is at the heart of your proess In order to maintain and inrease your ompetitiveness,

More information

Detecting Moving Targets in Clutter in Airborne SAR via Keystoning and Multiple Phase Center Interferometry

Detecting Moving Targets in Clutter in Airborne SAR via Keystoning and Multiple Phase Center Interferometry Deteting Moving Targets in Clutter in Airborne SAR via Keystoning and Multiple Phase Center Interferometry D. M. Zasada, P. K. Sanyal The MITRE Corp., 6 Eletroni Parkway, Rome, NY 134 (dmzasada, psanyal)@mitre.org

More information

Exploiting Enriched Contextual Information for Mobile App Classification

Exploiting Enriched Contextual Information for Mobile App Classification Exploiting Enrihed Contextual Information for Mobile App Classifiation Hengshu Zhu 1 Huanhuan Cao 2 Enhong Chen 1 Hui Xiong 3 Jilei Tian 2 1 University of Siene and Tehnology of China 2 Nokia Researh Center

More information

Run Time Environment. Implementing Object-Oriented Languages

Run Time Environment. Implementing Object-Oriented Languages Run Time Environment Implementing Objet-Oriented Languages Copright 2017, Pedro C. Diniz, all rights reserved. Students enrolled in the Compilers lass at the Universit of Southern California have epliit

More information

Multi-Channel Wireless Networks: Capacity and Protocols

Multi-Channel Wireless Networks: Capacity and Protocols Multi-Channel Wireless Networks: Capaity and Protools Tehnial Report April 2005 Pradeep Kyasanur Dept. of Computer Siene, and Coordinated Siene Laboratory, University of Illinois at Urbana-Champaign Email:

More information

A Load-Balanced Clustering Protocol for Hierarchical Wireless Sensor Networks

A Load-Balanced Clustering Protocol for Hierarchical Wireless Sensor Networks International Journal of Advanes in Computer Networks and Its Seurity IJCNS A Load-Balaned Clustering Protool for Hierarhial Wireless Sensor Networks Mehdi Tarhani, Yousef S. Kavian, Saman Siavoshi, Ali

More information

Incremental Mining of Partial Periodic Patterns in Time-series Databases

Incremental Mining of Partial Periodic Patterns in Time-series Databases CERIAS Teh Report 2000-03 Inremental Mining of Partial Periodi Patterns in Time-series Dataases Mohamed G. Elfeky Center for Eduation and Researh in Information Assurane and Seurity Purdue University,

More information

The recursive decoupling method for solving tridiagonal linear systems

The recursive decoupling method for solving tridiagonal linear systems Loughborough University Institutional Repository The reursive deoupling method for solving tridiagonal linear systems This item was submitted to Loughborough University's Institutional Repository by the/an

More information

Gradient based progressive probabilistic Hough transform

Gradient based progressive probabilistic Hough transform Gradient based progressive probabilisti Hough transform C.Galambos, J.Kittler and J.Matas Abstrat: The authors look at the benefits of exploiting gradient information to enhane the progressive probabilisti

More information

Direct-Mapped Caches

Direct-Mapped Caches A Case for Diret-Mapped Cahes Mark D. Hill University of Wisonsin ahe is a small, fast buffer in whih a system keeps those parts, of the ontents of a larger, slower memory that are likely to be used soon.

More information

Performance Improvement of TCP on Wireless Cellular Networks by Adaptive FEC Combined with Explicit Loss Notification

Performance Improvement of TCP on Wireless Cellular Networks by Adaptive FEC Combined with Explicit Loss Notification erformane Improvement of TC on Wireless Cellular Networks by Adaptive Combined with Expliit Loss tifiation Masahiro Miyoshi, Masashi Sugano, Masayuki Murata Department of Infomatis and Mathematial Siene,

More information

Self-Adaptive Parent to Mean-Centric Recombination for Real-Parameter Optimization

Self-Adaptive Parent to Mean-Centric Recombination for Real-Parameter Optimization Self-Adaptive Parent to Mean-Centri Reombination for Real-Parameter Optimization Kalyanmoy Deb and Himanshu Jain Department of Mehanial Engineering Indian Institute of Tehnology Kanpur Kanpur, PIN 86 {deb,hjain}@iitk.a.in

More information

A Formal Hybrid Analysis Technique for Composite Web Services Verification

A Formal Hybrid Analysis Technique for Composite Web Services Verification A Formal Hybrid Analysis Tehnique for Composite Web Servies Verifiation MAY HAIDAR 1,2, HICHAM H. HALLAL 1 1 Computer Siene Department / Department of Eletrial Engineering Fahad Bin Sultan University P.O

More information

Announcements. Lecture Caching Issues for Multi-core Processors. Shared Vs. Private Caches for Small-scale Multi-core

Announcements. Lecture Caching Issues for Multi-core Processors. Shared Vs. Private Caches for Small-scale Multi-core Announements Your fous should be on the lass projet now Leture 17: Cahing Issues for Multi-ore Proessors This week: status update and meeting A short presentation on: projet desription (problem, importane,

More information

Detection and Recognition of Non-Occluded Objects using Signature Map

Detection and Recognition of Non-Occluded Objects using Signature Map 6th WSEAS International Conferene on CIRCUITS, SYSTEMS, ELECTRONICS,CONTROL & SIGNAL PROCESSING, Cairo, Egypt, De 9-31, 007 65 Detetion and Reognition of Non-Oluded Objets using Signature Map Sangbum Park,

More information

Scheduling Multiple Independent Hard-Real-Time Jobs on a Heterogeneous Multiprocessor

Scheduling Multiple Independent Hard-Real-Time Jobs on a Heterogeneous Multiprocessor Sheduling Multiple Independent Hard-Real-Time Jobs on a Heterogeneous Multiproessor Orlando Moreira NXP Semiondutors Researh Eindhoven, Netherlands orlando.moreira@nxp.om Frederio Valente Universidade

More information

the data. Structured Principal Component Analysis (SPCA)

the data. Structured Principal Component Analysis (SPCA) Strutured Prinipal Component Analysis Kristin M. Branson and Sameer Agarwal Department of Computer Siene and Engineering University of California, San Diego La Jolla, CA 9193-114 Abstrat Many tasks involving

More information

Parametric Abstract Domains for Shape Analysis

Parametric Abstract Domains for Shape Analysis Parametri Abstrat Domains for Shape Analysis Xavier RIVAL (INRIA & Éole Normale Supérieure) Joint work with Bor-Yuh Evan CHANG (University of Maryland U University of Colorado) and George NECULA (University

More information

Tackling IPv6 Address Scalability from the Root

Tackling IPv6 Address Scalability from the Root Takling IPv6 Address Salability from the Root Mei Wang Ashish Goel Balaji Prabhakar Stanford University {wmei, ashishg, balaji}@stanford.edu ABSTRACT Internet address alloation shemes have a huge impat

More information

Graph-Based vs Depth-Based Data Representation for Multiview Images

Graph-Based vs Depth-Based Data Representation for Multiview Images Graph-Based vs Depth-Based Data Representation for Multiview Images Thomas Maugey, Antonio Ortega, Pasal Frossard Signal Proessing Laboratory (LTS), Eole Polytehnique Fédérale de Lausanne (EPFL) Email:

More information

CA Release Automation 5.x Implementation Proven Professional Exam (CAT-600) Study Guide Version 1.1

CA Release Automation 5.x Implementation Proven Professional Exam (CAT-600) Study Guide Version 1.1 Exam (CAT-600) Study Guide Version 1.1 PROPRIETARY AND CONFIDENTIAL INFORMATION 2016 CA. All rights reserved. CA onfidential & proprietary information. For CA, CA Partner and CA Customer use only. No unauthorized

More information

Flow Demands Oriented Node Placement in Multi-Hop Wireless Networks

Flow Demands Oriented Node Placement in Multi-Hop Wireless Networks Flow Demands Oriented Node Plaement in Multi-Hop Wireless Networks Zimu Yuan Institute of Computing Tehnology, CAS, China {zimu.yuan}@gmail.om arxiv:153.8396v1 [s.ni] 29 Mar 215 Abstrat In multi-hop wireless

More information

Trajectory Tracking Control for A Wheeled Mobile Robot Using Fuzzy Logic Controller

Trajectory Tracking Control for A Wheeled Mobile Robot Using Fuzzy Logic Controller Trajetory Traking Control for A Wheeled Mobile Robot Using Fuzzy Logi Controller K N FARESS 1 M T EL HAGRY 1 A A EL KOSY 2 1 Eletronis researh institute, Cairo, Egypt 2 Faulty of Engineering, Cairo University,

More information

3-D IMAGE MODELS AND COMPRESSION - SYNTHETIC HYBRID OR NATURAL FIT?

3-D IMAGE MODELS AND COMPRESSION - SYNTHETIC HYBRID OR NATURAL FIT? 3-D IMAGE MODELS AND COMPRESSION - SYNTHETIC HYBRID OR NATURAL FIT? Bernd Girod, Peter Eisert, Marus Magnor, Ekehard Steinbah, Thomas Wiegand Te {girod eommuniations Laboratory, University of Erlangen-Nuremberg

More information

SVC-DASH-M: Scalable Video Coding Dynamic Adaptive Streaming Over HTTP Using Multiple Connections

SVC-DASH-M: Scalable Video Coding Dynamic Adaptive Streaming Over HTTP Using Multiple Connections SVC-DASH-M: Salable Video Coding Dynami Adaptive Streaming Over HTTP Using Multiple Connetions Samar Ibrahim, Ahmed H. Zahran and Mahmoud H. Ismail Department of Eletronis and Eletrial Communiations, Faulty

More information

Cluster-Based Cumulative Ensembles

Cluster-Based Cumulative Ensembles Cluster-Based Cumulative Ensembles Hanan G. Ayad and Mohamed S. Kamel Pattern Analysis and Mahine Intelligene Lab, Eletrial and Computer Engineering, University of Waterloo, Waterloo, Ontario N2L 3G1,

More information

Multiple-Criteria Decision Analysis: A Novel Rank Aggregation Method

Multiple-Criteria Decision Analysis: A Novel Rank Aggregation Method 3537 Multiple-Criteria Deision Analysis: A Novel Rank Aggregation Method Derya Yiltas-Kaplan Department of Computer Engineering, Istanbul University, 34320, Avilar, Istanbul, Turkey Email: dyiltas@ istanbul.edu.tr

More information

Uncovering Hidden Loop Level Parallelism in Sequential Applications

Uncovering Hidden Loop Level Parallelism in Sequential Applications Unovering Hidden Loop Level Parallelism in Sequential Appliations Hongtao Zhong, Mojtaba Mehrara, Steve Lieberman, and Sott Mahlke Advaned Computer Arhiteture Laboratory University of Mihigan, Ann Arbor,

More information

SAND Unlimited Release Printed November 1995 Updated November 29, :26 PM EXODUS II: A Finite Element Data Model

SAND Unlimited Release Printed November 1995 Updated November 29, :26 PM EXODUS II: A Finite Element Data Model SAND92-2137 Unlimited Release Printed November 1995 Updated November 29, 2006 12:26 PM EXODUS II: A Finite Element Data Model Gregory D. Sjaardema (updated version) Larry A. Shoof, Vitor R. Yarberry Computational

More information

Detecting Outliers in High-Dimensional Datasets with Mixed Attributes

Detecting Outliers in High-Dimensional Datasets with Mixed Attributes Deteting Outliers in High-Dimensional Datasets with Mixed Attributes A. Koufakou, M. Georgiopoulos, and G.C. Anagnostopoulos 2 Shool of EECS, University of Central Florida, Orlando, FL, USA 2 Dept. of

More information

Approximate logic synthesis for error tolerant applications

Approximate logic synthesis for error tolerant applications Approximate logi synthesis for error tolerant appliations Doohul Shin and Sandeep K. Gupta Eletrial Engineering Department, University of Southern California, Los Angeles, CA 989 {doohuls, sandeep}@us.edu

More information

Evaluation of Benchmark Performance Estimation for Parallel. Fortran Programs on Massively Parallel SIMD and MIMD. Computers.

Evaluation of Benchmark Performance Estimation for Parallel. Fortran Programs on Massively Parallel SIMD and MIMD. Computers. Evaluation of Benhmark Performane Estimation for Parallel Fortran Programs on Massively Parallel SIMD and MIMD Computers Thomas Fahringer Dept of Software Tehnology and Parallel Systems University of Vienna

More information

Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis

Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis Reverse Engineering of Assembler Programs: A Model-Based Approah and its Logial Basis Tom Lake and Tim Blanhard, InterGlossa Ltd., Reading, UK Tel: +44 174 561919 email: {Tom.Lake,Tim.Blanhard}@glossa.o.uk

More information

Rotation Invariant Spherical Harmonic Representation of 3D Shape Descriptors

Rotation Invariant Spherical Harmonic Representation of 3D Shape Descriptors Eurographis Symposium on Geometry Proessing (003) L. Kobbelt, P. Shröder, H. Hoppe (Editors) Rotation Invariant Spherial Harmoni Representation of 3D Shape Desriptors Mihael Kazhdan, Thomas Funkhouser,

More information

Detection of RF interference to GPS using day-to-day C/No differences

Detection of RF interference to GPS using day-to-day C/No differences 1 International Symposium on GPS/GSS Otober 6-8, 1. Detetion of RF interferene to GPS using day-to-day /o differenes Ryan J. R. Thompson 1#, Jinghui Wu #, Asghar Tabatabaei Balaei 3^, and Andrew G. Dempster

More information

A Dual-Hamiltonian-Path-Based Multicasting Strategy for Wormhole-Routed Star Graph Interconnection Networks

A Dual-Hamiltonian-Path-Based Multicasting Strategy for Wormhole-Routed Star Graph Interconnection Networks A Dual-Hamiltonian-Path-Based Multiasting Strategy for Wormhole-Routed Star Graph Interonnetion Networks Nen-Chung Wang Department of Information and Communiation Engineering Chaoyang University of Tehnology,

More information

Gray Codes for Reflectable Languages

Gray Codes for Reflectable Languages Gray Codes for Refletable Languages Yue Li Joe Sawada Marh 8, 2008 Abstrat We lassify a type of language alled a refletable language. We then develop a generi algorithm that an be used to list all strings

More information

Acoustic Links. Maximizing Channel Utilization for Underwater

Acoustic Links. Maximizing Channel Utilization for Underwater Maximizing Channel Utilization for Underwater Aousti Links Albert F Hairris III Davide G. B. Meneghetti Adihele Zorzi Department of Information Engineering University of Padova, Italy Email: {harris,davide.meneghetti,zorzi}@dei.unipd.it

More information

A Coarse-to-Fine Classification Scheme for Facial Expression Recognition

A Coarse-to-Fine Classification Scheme for Facial Expression Recognition A Coarse-to-Fine Classifiation Sheme for Faial Expression Reognition Xiaoyi Feng 1,, Abdenour Hadid 1 and Matti Pietikäinen 1 1 Mahine Vision Group Infoteh Oulu and Dept. of Eletrial and Information Engineering

More information

DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT

DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT 1 ZHANGGUO TANG, 2 HUANZHOU LI, 3 MINGQUAN ZHONG, 4 JIAN ZHANG 1 Institute of Computer Network and Communiation Tehnology,

More information

Using Augmented Measurements to Improve the Convergence of ICP

Using Augmented Measurements to Improve the Convergence of ICP Using Augmented Measurements to Improve the onvergene of IP Jaopo Serafin, Giorgio Grisetti Dept. of omputer, ontrol and Management Engineering, Sapienza University of Rome, Via Ariosto 25, I-0085, Rome,

More information

13.1 Numerical Evaluation of Integrals Over One Dimension

13.1 Numerical Evaluation of Integrals Over One Dimension 13.1 Numerial Evaluation of Integrals Over One Dimension A. Purpose This olletion of subprograms estimates the value of the integral b a f(x) dx where the integrand f(x) and the limits a and b are supplied

More information

Design Implications for Enterprise Storage Systems via Multi-Dimensional Trace Analysis

Design Implications for Enterprise Storage Systems via Multi-Dimensional Trace Analysis Design Impliations for Enterprise Storage Systems via Multi-Dimensional Trae Analysis Yanpei Chen, Kiran Srinivasan, Garth Goodson, Randy Katz University of California, Berkeley, NetApp In. {yhen2, randy}@ees.berkeley.edu,

More information

EXODUS II: A Finite Element Data Model

EXODUS II: A Finite Element Data Model SAND92-2137 Unlimited Release Printed November 1995 Distribution Category UC-705 EXODUS II: A Finite Element Data Model Larry A. Shoof, Vitor R. Yarberry Computational Mehanis and Visualization Department

More information

35 th Design Automation Conference Copyright 1998 ACM

35 th Design Automation Conference Copyright 1998 ACM Using Reongurable Computing Tehniques to Aelerate Problems in the CAD Domain: A Case Study with Boolean Satisability Peixin Zhong, Pranav Ashar, Sharad Malik and Margaret Martonosi Prineton University

More information

Zippy - A coarse-grained reconfigurable array with support for hardware virtualization

Zippy - A coarse-grained reconfigurable array with support for hardware virtualization Zippy - A oarse-grained reonfigurable array with support for hardware virtualization Christian Plessl Computer Engineering and Networks Lab ETH Zürih, Switzerland plessl@tik.ee.ethz.h Maro Platzner Department

More information

Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introduction Information Retrieval... 8

Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introduction Information Retrieval... 8 Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introdution... 1 1.1. Internet Information...2 1.2. Internet Information Retrieval...3 1.2.1. Doument Indexing...4 1.2.2. Doument Retrieval...4

More information

Bring Your Own Coding Style

Bring Your Own Coding Style Bring Your Own Coding Style Naoto Ogura, Shinsuke Matsumoto, Hideaki Hata and Shinji Kusumoto Graduate Shool of Information Siene and Tehnology, Osaka University, Japan {n-ogura, shinsuke, kusumoto@ist.osaka-u.a.jp

More information

Definitions Homework. Quine McCluskey Optimal solutions are possible for some large functions Espresso heuristic. Definitions Homework

Definitions Homework. Quine McCluskey Optimal solutions are possible for some large functions Espresso heuristic. Definitions Homework EECS 33 There be Dragons here http://ziyang.ees.northwestern.edu/ees33/ Teaher: Offie: Email: Phone: L477 Teh dikrp@northwestern.edu 847 467 2298 Today s material might at first appear diffiult Perhaps

More information

Cross-layer Resource Allocation on Broadband Power Line Based on Novel QoS-priority Scheduling Function in MAC Layer

Cross-layer Resource Allocation on Broadband Power Line Based on Novel QoS-priority Scheduling Function in MAC Layer Communiations and Networ, 2013, 5, 69-73 http://dx.doi.org/10.4236/n.2013.53b2014 Published Online September 2013 (http://www.sirp.org/journal/n) Cross-layer Resoure Alloation on Broadband Power Line Based

More information

Design Patterns. Patterns.mkr Page 223 Wednesday, August 25, :17 AM

Design Patterns. Patterns.mkr Page 223 Wednesday, August 25, :17 AM Patterns.mkr Page 223 Wednesday, August 25, 1999 2:17 AM Design Patterns n the earlier hapters, we have seen that a entral goal of objet-oriented programming is the support of ode reuse. This hapter examines

More information

特集 Road Border Recognition Using FIR Images and LIDAR Signal Processing

特集 Road Border Recognition Using FIR Images and LIDAR Signal Processing デンソーテクニカルレビュー Vol. 15 2010 特集 Road Border Reognition Using FIR Images and LIDAR Signal Proessing 高木聖和 バーゼル ファルディ Kiyokazu TAKAGI Basel Fardi ヘンドリック ヴァイゲル Hendrik Weigel ゲルド ヴァニーリック Gerd Wanielik This paper

More information

User-level Fairness Delivered: Network Resource Allocation for Adaptive Video Streaming

User-level Fairness Delivered: Network Resource Allocation for Adaptive Video Streaming User-level Fairness Delivered: Network Resoure Alloation for Adaptive Video Streaming Mu Mu, Steven Simpson, Arsham Farshad, Qiang Ni, Niholas Rae Shool of Computing and Communiations, Lanaster University

More information

Unsupervised Stereoscopic Video Object Segmentation Based on Active Contours and Retrainable Neural Networks

Unsupervised Stereoscopic Video Object Segmentation Based on Active Contours and Retrainable Neural Networks Unsupervised Stereosopi Video Objet Segmentation Based on Ative Contours and Retrainable Neural Networks KLIMIS NTALIANIS, ANASTASIOS DOULAMIS, and NIKOLAOS DOULAMIS National Tehnial University of Athens

More information

Dynamic Backlight Adaptation for Low Power Handheld Devices 1

Dynamic Backlight Adaptation for Low Power Handheld Devices 1 Dynami Baklight Adaptation for ow Power Handheld Devies 1 Sudeep Pasriha, Manev uthra, Shivajit Mohapatra, Nikil Dutt and Nalini Venkatasubramanian 444, Computer Siene Building, Shool of Information &

More information

Automated System for the Study of Environmental Loads Applied to Production Risers Dustin M. Brandt 1, Celso K. Morooka 2, Ivan R.

Automated System for the Study of Environmental Loads Applied to Production Risers Dustin M. Brandt 1, Celso K. Morooka 2, Ivan R. EngOpt 2008 - International Conferene on Engineering Optimization Rio de Janeiro, Brazil, 01-05 June 2008. Automated System for the Study of Environmental Loads Applied to Prodution Risers Dustin M. Brandt

More information

High-level synthesis under I/O Timing and Memory constraints

High-level synthesis under I/O Timing and Memory constraints Highlevel synthesis under I/O Timing and Memory onstraints Philippe Coussy, Gwenolé Corre, Pierre Bomel, Eri Senn, Eri Martin To ite this version: Philippe Coussy, Gwenolé Corre, Pierre Bomel, Eri Senn,

More information

Displacement-based Route Update Strategies for Proactive Routing Protocols in Mobile Ad Hoc Networks

Displacement-based Route Update Strategies for Proactive Routing Protocols in Mobile Ad Hoc Networks Displaement-based Route Update Strategies for Proative Routing Protools in Mobile Ad Ho Networks Mehran Abolhasan 1 and Tadeusz Wysoki 1 1 University of Wollongong, NSW 2522, Australia E-mail: mehran@titr.uow.edu.au,

More information

We don t need no generation - a practical approach to sliding window RLNC

We don t need no generation - a practical approach to sliding window RLNC We don t need no generation - a pratial approah to sliding window RLNC Simon Wunderlih, Frank Gabriel, Sreekrishna Pandi, Frank H.P. Fitzek Deutshe Telekom Chair of Communiation Networks, TU Dresden, Dresden,

More information