who supply the system vectors for their JVM products. 1 HBench:Java will work best with support from JVM vendors

Size: px
Start display at page:

Download "who supply the system vectors for their JVM products. 1 HBench:Java will work best with support from JVM vendors"

Transcription

1 Appeaed in the ACM Java Gande 2000 Confeence, San Fancisco, Califonia, June 3-5, 2000 HBench:Java: An Application-Specific Benchmaking Famewok fo Java Vitual Machines Xiaolan Zhang Mago Seltze Division of Engineeing and Applied Sciences Havad Univesity 33 Oxfod Steet Cambidge, MA 02138, USA , {cxzhang, ABSTRACT Java applications epesent a boad class of pogams, anging fom pogams unning on embedded poducts to highpefomance seve applications. Standad Java benchmaks ignoe this fact and assume a fixed wokload. When an actual application s beha vio diffes fom that included in a standad benchmak, the benchmak esults ae useless, if not misleading. In this pape, we pesent HBench:Java, an application-specific benchmaking famewok, based on the concept that a system's pefomance must be measued in the context of the application of inteest. HBench:Java employs a methodology that uses vectos to chaacteize the application and the undelying and caefully combines the two vectos to fom a single metic that eflects a specific application s pefomance on a paticula such that the pefomance of multiple s can be ealistically compaed. Ou pefomance esults demonstate HBench:Java s supeioity ove taditional benchmaking appoaches in pedicting eal application pefomance and its ability to pinpoint pefomance poblems. Keywods Java pefomance, benchmaking. 1. INTRODUCTION In ecent yeas, the Java pogamming language has enjoyed inceasing populaity and thee has been a polifeation of Java Vitual Machine () implementations. This poses a question fo end uses: which should they choose to un thei applications? Thee have been many attempts to evaluate diffeent implementations. Unfotunately, these appoaches shae a common dawback: they assume a fixed set of wokloads and ignoe the application s pe fomance concens. Java applications epesent a divese set of pogams, anging fom those unning on embedded poducts such as PDAs, to applets unning in bowse envionments, to scientific computing applications, and ecently to seve applications, which have taditionally been the stonghold of system languages such as C and C++. Often the actual application unde test diffes enough fom any standad benchmak that the esults fom taditional benchmaks ae useless and sometimes even misleading. Moeove, since the wokloads ae fixed, taditional benchmaks encouage vendos to ove-optimize thei implementations to achieve good esults on the benchmaks. This may potentially hut the pefomance of eal applications. Such incidents have aleady been epoted in the aea of OS benchmaking, whee gaphics cad vendos employ a hack, which can seveely hampe the pefomance of othe devices, to impove thei esults in standad benchmaks [8]. We believe that the goals of benchmaking in geneal should be theefold: 1. To compae the pefomance of systems and to eason about why applications un faste on one system than on anothe. Not only should benchmaks poduce meaningful esults, they should also povide a easonable explanation fo the pefomance diffeences. 2. To guide pefomance optimizations. Benchmaks should eveal pefomance bottlenecks o limitations of the undelying system in the context of a paticula application, and thus help system implementes impove the system in a way that will benefit the application of inteest. 3. To pedict an application s pe fomance on non-existent platfoms. Benchmaks should help answe what if questions and povide uses with a easonable estimate of the application s pefomance when some components of the undelying system change, o when the behavio of the application changes. In this pape, we pesent HBench:Java, pat of a moe geneal application-specific benchmaking famewok called HBench designed to ealize the above goals. The est of the pape is oganized as follows. Section 2 gives an oveview of some of the most popula standad Java benchmaks. Section 3 descibes the design of HBench:Java, and Section 4 descibes ou pototype implementation of HBench:Java in detail. Section 5 pesents expeimental esults. Section 6 descibes some elated woks. Section 7 discusses some unesolved issues and Section 8 concludes.

2 2. JAVA BENCHMARKS Taditional Java benchmaks can be classified into the following thee categoies: 1. Micobenchmaks. CaffeineMak [3] is a typical example, in which a set of pimitive opeations such as method invocation, aithmetic and gaphics opeations, and shot sequences of code (kenels) that solve small and welldefined poblems, ae measued, and the mean (typically geometic mean) of the individual times (o scoes as a function of the time) is epoted. Micobenchmaks ae useful in compaing the low-level opeations of s, but it is difficult to elate them to actual application pefomance in a quantitative way. 2. Macobenchmaks that contain one o moe medium-scale to lage-scale Java applications. Examples include the SPEC98 suite [15], which includes a set of pogams simila to those found in the SPECCPU suite, and VolanoMak fom Volano LLC, which is based on the company s VolanoChat seve. VolanoMak focuses on a s ability to handle long-lasting netwok connections and theads [16]. 3. Combinations of the above. The JavaGande benchmak [2][10] is an example of this type. Designed to compae the ability of diffeent Java Vitual Machines to un lage-scale scientific applications, the JavaGande benchmak suite contains thee sections. The fist section consists of micobenchmaks such as aithmetic opeations, mathematical functions, and exception handling. The second section consists of kenels, each of which contains a type of computation likely to appea in lage scientific pogams. The final section includes ealistic applications, such as a financial simulation based on Monte Calo techniques. This hybid appoach of combining micobenchmaking and macobenchmaking povides the ability to eason about pefomance dispaities between Java Vitual Machines and is paticulaly useful in pinpointing pefomance anomalies in immatue Java Vitual Machine implementations. The common dawback with the above appoaches is that Java applications ae so divese that it is difficult, if not impossible, to find a set of wokloads that ae epesentative of the applications in which end uses ae inteested, even within a sub-field. If the behavio of the benchmak s wokloads does not match that of the intended application, then the benchmak might give misleading infomation egading which is the best fo the application of inteest. In compaison, HBench:Java is a geneal benchmaking famewok that can be applied to any specific wokload. 3. HBENCH:JAVA DESIGN 3.1 Oveview HBench:Java is based on the vecto-based methodology of the HBench famewok [14]. The pinciple behind the vecto-based methodology is the obsevation that a system s pefomance is detemined by the pefomance of the individual pimitive opeations that it suppots, and that an application s pefomance is detemined by how much it utilizes the pimitive opeations of the undelying system. As the name vecto-based indicates, we use a vecto V s = ( v1, v2,..., vn ), to epesent the pefomance chaacteistics of a, with each enty v i epesenting the pefomance of a pimitive opeation of the. We call this vecto V s a system vecto, and it is obtained by unning a set of micobenchmaks. A key featue of HBench:Java is that it incopoates chaacteistics of the application into the benchmaking pocess. This is achieved using an application vecto, V A = ( u1, u2,..., un ), with each element u i epesenting the numbe of times that the coesponding ith pimitive opeation was pefomed. Intuitively, the application vecto indicates how much demand the application places on the undelying and is obtained though pofiling. The dot poduct of the two vectos poduces the pedicted unning time of the application on a given. The basic stategy behind HBench has been to use the simplest model possible without sacificing accuacy. To that end, we use a simple linea model, until we find that it is no longe able to povide the pedictive and explanatoy powe we seek. In some cases, athe than going to a moe complex model, we etain the simplicity of a linea model by adding multiple data points fo a single pimitive. Fo example, on some systems, TCP connect times gow non-linealy with the numbe of connections. Rathe than modeling the non-lineaity explicitly, we povide thee o fou points in the system vecto that coespond to diffeing odes of magnitude fo the numbe of connections. HBench:Java addesses the benchmaking goals outlined in Section 1 in the following ways: 1. The system vecto and the application vecto povide an effective way to study and explain pefomance diffeences between diffeent s. 2. The application vecto indicates which pimitive opeations ae impotant, and the system vecto eveals which pimitive opeations ae pefomance bottlenecks. System implementes can use this infomation to impove pimitive opeations that ae significant fo the application. At the same time, application pogammes can use this infomation to optimize the application by educing the numbe of calls to expensive pimitive opeations. 3. One can pedict the pefomance of the application on a given without actually unning the application on it, as long as the system vecto is available 1. One might also answe what if questions such as What if this pimitive takes twice as long? by modifying the appopiate system and application vecto enties. 3.2 Identifying Pimitive Opeations A is a complicated piece of softwae. Figue 1 shows a schematic view of a implementation. Much of a s functionality is suppoted via the system classes (also called built-in classes o bootstap classes). A includes a memoy management system that automatically manages the heap fo the application. The execution engine is esponsible fo bytecode intepetation, class loading, exception handling, thead 1 HBench:Java will wok best with suppot fom vendos who supply the system vectos fo thei poducts.

3 Use App. System Classes JIT // empty loop fo (int i = 0; i < numiteations; i++) { ; } Memoy System Execution Engine Figue 1. Schematic view of a. scheduling and context switches, the native method inteface, and synchonization. The implementation is futhe complicated by the JIT (Just In Time) component, which compiles Java bytecode on the fly into native machine code. In ode to ceate a system vecto fo a, we need to decompose this complexity into a set of pimitive opeations. One set of candidates is the s assembly instuctions, i.e., bytecodes. This appoach, howeve, poved inadequate pimaily due to the pesence of the JIT. Once bytecodes ae compiled into native machine code, optimizations at the hadwae level such as out-of-ode execution, paallel issue and cache effects can lead to a unning time that is significantly diffeent fom the sum of the execution times of the individual instuctions executed alone. Fo example, Figue 2(a) shows two Java code sequences: an empty loop and a loop containing an intege addition opeation. The coesponding native code poduced by the JIT is shown in Figue 2(b). On a Pentium III pocesso, both loop iteations take 2 cycles to execute, due to paallel instuction issues. This leads one to conclude that the addition opeation is fee, which is clealy not tue. A highe level of abstaction that is immune o less sensitive to hadwae optimization is theefoe needed. We identified the following fou types of high-level components of a system vecto: system classes, with method invocations to the system classes being pimitive opeations; memoy management, whee pimitive opeations could include object allocation, live-object identification, liveobject elocation (fo copying gabage collectos) and deadobject eclamation; execution engine, whee pimitive opeations include bytecode intepetation, exception handling, context switching, synchonization opeations, etc.; JIT, which can be measued by two metics: ovehead and quality of code geneated. JIT ovehead can be appoximated as a function of bytecode size, in which case the pimitive opeation is the time it takes to JIT one bytecode instuction. The poduct of this pe-bytecode ovehead and the numbe of JITted bytecodes yields the oveall ovehead. Note that the numbe of JITted bytecodes cannot be diectly obtained fom the application, as it is dependent. Rathe, it is obtained by applying a // loop containing intege addition fo (int i = 0; i < numiteations; i++) { sum += i; } Figue 2(a). Java code sequences //empty loop loop_stat: inc ecx ;; i++ cmp ecx, [esi+04h] ;; i<numiteations jnge loop_stat // loop containing intege addition loop_stat: add edi,ecx ;; sum += i inc ecx ;; i++ cmp ecx, [esi+04h] ;; i<numiteations jnge loop_stat Figue 2(b). Coesponding native code sequences dependant function J to the base application vecto N, and S, whee each enty in N and S epesent each method s invocation count and bytecode size, espectively. Fo example, if a compiles a method the fist time it is invoked, then J ( N, S) = s i, i whee s i is the ith element of S. The quality of JITted-code is hade to quantify, and is a subject of ongoing eseach. The system classes component povides a convenient abstaction laye and is a good stating point fo ou pototype implementation, which cuently includes only this component, as highlighted by the cicle in Figue 1. Ou expeience shows that applications tend to spend a significant amount of time in system classes. Theefoe we believe that this simplistic system vecto, albeit cude, can be indicative of application pefomance. Ou esults demonstate that HBench:Java aleady povides bette pedictive powe than existing benchmaks. 4. HBENCH:JAVA IMPLEMENTATION The implementation of HBench:Java consists of two independent pats: a pofile that taces an application s inteactions with the to poduce an application vecto and a set of micobenchmaks that measues the pefomance of the to poduce a system vecto. The following two sub-sections descibe these pats in moe detail.

4 4.1 Pofile The pofile is based on JDK s Java Vitual Machine Pofiling Inteface (PI) [7]. Once attached to the, a pofile can intecept events in the such as method invocation and object ceation. The Java SDK1.2.2 kit fom Sun comes with a default pofiling agent called hpof that povides extensive pofiling functionality [9]. We use this default pofile to obtain statistics of method invocations fom which we deive an application vecto. As a fist step, ou application vecto (and accodingly ou system vecto) only contains method invocations to system classes. A moe complete custom pofile that incopoates the gabage collecto (GC) and the execution engine and that is able to diectly poduce an application vecto is cuently unde development. A dawback of PI is that it does not povide callbacks to etieve aguments of method calls. To emedy this poblem, we implemented a second pofile that is able to ecod method aguments; it is based on JDK s Java Vitual Machine Debugge Inteface (DI) [6]. Since DI can only be enabled with JIT tuned off (fo the classic vesion of JDK), we keep both pofiles fo obvious pefomance easons, with the fist pofile esponsible fo extensive pofiling and the second pofile esponsible fo the much simple task of call tacing. 4.2 Micobenchmaks The cuent set of micobenchmaks consists of appoximately thity methods including fequently invoked methods and methods that take a elatively long time to complete, based on taces fom sample applications. Even though these methods epesent only a tiny potion of the entie Java coe API, we found them quite effective in pedicting application pefomance, as shown late in Section 5. The micobenchmak suite is implemented using an abstact Benchmak class. To add a micobenchmak to the suite, one implements a class that extends the Benchmak class. Specifically, this means implementing the untial() abstact method. A utility pogam facilitates this pocess by automatically geneating the coesponding souce Java pogam fom a template file and a file that specifies key infomation about the paticula micobenchmak. Typically, the untial() method invokes the method to be measued in a loop fo some numbe of iteations. A nice featue of ou micobenchmaks is that the numbe of iteations is not fixed, but athe dynamically detemined based on the time esolution of the System.cuentTimeMillis() function of the specific. A micobenchmak is un long enough that the total unning time is at least n times the time esolution (to allow fo accuate measuement), and less than 2n times the time esolution (so that the benchmak doesn t un fo an unnecessaily long time). Fo the expeiments epoted in this pape, we used a value of 10 fo n. Fo methods whose unning time also depends on paametes, such as the BuffeedReade.ead() method that eads an aay of bytes fom an input steam, we measue the pe-byte eading cost and the coesponding enty in the application vecto includes the total numbe of bytes instead of the numbe of times the ead() method is called. Ou cuent pototype implementation suppots this simple case of linea dependency on a single agument, and we found it sufficient fo the sample applications we tested. Fo moe complicated agument types, the system vecto enty would consist of a list of (n+1)-tuples, (t, a 1, a 2,, a n), whee a i is the value of the ith agument, and t is the time it takes to invoke the method with the given aguments. We then measue seveal data points in this n-dimension space, and extapolate the unning time based on the actual paametes included in the coesponding application vecto enty. Figue 3 shows some sample micobenchmak esults fo JDK1.2.2 (Windows NT). The time fo the ead() method of BuffeedReade is the pe-byte ead cost, and the Class.foName() method loads an empty class. 4.3 Suppot fo Pofiling and Micobenchmaking Fo some pimitive opeations such as class loading, the fisttime invocation cost is the tue cost and subsequent invocations just etun a cached value. As a esult we cannot simply measue the cost by epeatedly calling the method with the same aguments in a loop and dividing the total time by the numbe of iteations. In the case of class loading, it means we need to load a diffeent class evey iteation. With the time esolution of cuent implementations, to achieve easonable accuacy, the numbe of iteations equied is on the ode of hundeds and inceases as pocesso speed inceases. We could automatically ceate these dummy classes befoe stating the loop. Howeve, not only does this appoach not scale well, ceating a lage numbe of class files also petubs the esults since the numbe of classes within a diectoy is usually not that lage. A bette solution is to have the povide a high-esolution time API. This appoach has the added advantage of educed benchmak unning time (ecall that the numbe of loop iteations is invesely popotional to the time esolution). Most moden CPUs povide cycle countes that ae accessible in use mode, and many popula opeating systems such as Solais and Windows NT aleady povide high-esolution time APIs. Method Name Method Signatue Time(us) java.lang.chaacte.tosting ()Ljava/lang/Sting; java.lang.sting.chaat (I)C java.io.buffeedreade.ead ([CII)I java.lang.class.foname (Ljava/lang/Sting;)Ljava/lang/Class ; java.net.socket.<init> (Ljava/net/InetAddess;I)V Figue 3. Sample micobenchmak esults.

5 Table 1. Java Vitual Machines tested. CPU Memoy (MB) Opeating System Vesion Vendo JDK1.2.2_NT_PRO Pentium Po Classic Sun Micosystems 128 SDK3.2_NT_PRO 200MHz Micosoft Windows NT 4.0 JDK1.2.2_NT_II Pentium II Classic Sun Micosystems 64 SDK3.2_NT_II 266MHz Micosoft JDK1.2.2_SunOS_Classic UltaSpac IIi Classic Sun Micosystems 128 Solais 7 JDK1.2.1_SunOS_Pod 333 MHz 1.2.1_O3 Poduction Sun Micosystems One of the difficulties of micobenchmaking is that sometimes a good JIT will ecognize the micobenchmak code as dead code and optimize it out. We have to inset code to fool the JIT into believing that the vaiables used in the micobenchmak loop ae still live afte the loop, and subsequently not optimized out of the loop. Howeve, thee is a limit as to how much this wokaound can do. A bette solution would be fo the JIT to include command-line options that allow uses to specify optimization levels, simila to those pesent in C/C++ compiles. Advanced JIT techniques such as the adaptive compilation used in HotSpot [5] pose some difficulties measuing JIT ovehead, which cannot be ovecome without help fom implementes. An adaptive compile compiles methods based on thei usage. Methods might be intepeted initially. As time pogesses, some ae compiled into native code with a lightweight compile (with little optimization). Fequently executed methods might be e-compiled with a moe poweful backend compile that pefoms extensive optimization. The poblem lies in how to model the dependent function J which, given the numbe of method invocations and method bytecode sizes, yields the numbe of bytecodes compiled/optimized. We think the following enhancement to would be useful: A PI event should be geneated at the beginning and end of the compilation of a method, so that we can model and evaluate J. To measue the pe-bytecode compile/optimize ovehead, the java.lang.compile class should be augmented with APIs fo compiling and optimizing methods. 5. EXPERIMENTAL RESULTS 5.1 Expeimental Setup We an ou expeiments on a vaiety of Java Vitual Machines. Table 1 shows the list of s tested and thei configuations. Thee non-tivial Java applications (Table 2) wee used to evaluate HBench:Java. Fist, we an the applications with pofiling tuned on and deived application vectos fom the collected pofiles. Fo Mecato, which is a web cawling application, we an the poxy seve and the web cawle on two diffeent machines connected with a 100Mb Ethenet switch, isolated fom the outside netwok. The machine that hosted the poxy seve was at least as fast as the machine that hosted the client, to insue that the poxy seve was not the bottleneck. Next we an the HBench:Java micobenchmaks on the s listed in Table 1 and obtained thei system vectos. The dot poducts of the system and application vectos gave the estimated unning time fo each application on each, which was then compaed with the actual unning time to evaluate the effectiveness of HBench:Java. Since ou initial goal is to coectly pedict the atios of execution times of the applications on diffeent platfoms, we use nomalized speed in epoting expeimental esults. This also allows us to compae HBench:Java with conventional benchmaking appoaches such as SPEC98 that epot esults in the fom of atios. Table 2. Java applications used in the expeiments. Application Desciption Input Data WebL Cloudscape Mecato A scipting language designed specifically fo pocessing documents etieved fom the web [17]. A Java- and SQL-based ORDBMS (object-elational database management system). The embedded vesion is used, i.e., the database is unning in the same as the use pogam [4]. A multi-theaded web cawle [11]. A WebL scipt that counts the numbe of images contained in a sample html file. The JBMSTous sample application included in the Cloudscape distibution kit. Only the BuildATou pogam, which simulates the task of booking flights and hotels, is used. The synthetic poxy povided by the Mecato kit that geneates web documents on the fly instead of etieving them fom the Intenet.

6 Nomalized Speed Spec98 Actual hbench Pedicted JDK1.2.2_NT_II JDK1.2.2_NT_Po SDK3.2_NT_II JDK1.2.1_SunOS_Pod JDK1.2.2_SunOS-Classic SDK3.2_NT_Po Figue 4. Nomalized unning speeds fo WebL. Nomalized Speed Spec98 Actual hbench Pedicted JDK1.2.2_NT_Po JDK1.2.2_NT_II SDK3.2_NT_Po JDK1.2.1_SunOS_Pod SDK3.2_NT_II Figue 5. Nomalized unning speeds fo Cloudscape. Nomalized Speed Spec98 Actual Hbench Pedicted 0.00 JDK1.2.2_NT_Po SDK3.2_NT_Po JDK1.2.2_SunOS_Classic JDK1.2.1_SunOS_Pod Figue 6. Nomalized unning speeds fo Mecato.

7 Table 3. Impotant pimitive opeations fo WebL. Time (µs) Class.foName() ClassLoade.loadClass() BuffeedReade.ead() JDK1.2.2_NT_PRO SDK3.2_NT_PRO JDK1.2.2_NT_II SDK3.2_NT_II JDK1.2.2_SunOS_Classic JDK1.2.1_SunOS_Pod Table 4. Impotant pimitive opeations fo Mecato. Time (µs) Socket.<init>() SocketInputSteam.ead() JDK1.2.2_NT_PRO SDK3.2_NT_PRO JDK1.2.2_SunOS_Classic JDK1.2.1_SunOS_Pod Results Figue 4 shows the esults fo the scipting language WebL. In this expeiment, thee pimitive opeations account fo the majoity of the unning time, shown in Table 3. Also shown in Table 3 ae the thei measued pefomance on the five Java Vitual Machine tested. The coesponding application vecto is (80, 121, 32768). It s inteesting to note that the SPEC98 scoe of JDK1.2.2 on the PentiumPo NT machine is highe than that on the SpacStation. Howeve, WebL uns close to thee times as fast on the SpacStation. HBench:Java s system vecto eveals the poblem. Class loading is twice as fast fo the SpacStation JDK, and the BuffeedReade.ead() method executes almost 35 times faste. It tuns out that fo some eason, the NT JDK1.2.2 s JIT didn t compile the method sun.io.bytetochasinglebyte.convet(), an expensive method called many times by java.io.buffeedreade.ead(). The diffeences esult in supeio pefomance on the SpacStation. Besides explaining pefomance diffeences, the pedicted atios of execution speeds ae within a small magin of the eal execution speed atios. Figue 5 shows the esults fo Cloudscape, a database management system. We did not epot the esult fo the Sun JDK1.2.2 classic vesion on the SpacStation because Cloudscape wasn t able to un on it. Similaly to what we obseved fo the WebL esults, not only does HBench:Java coectly pedict the ode of the unning speed on the diffeent platfoms, the pedicted atios of the execution speeds closely match the actual atios. On the othe hand, SPEC98 does not pedict the ode coectly, and its pedicted speed atios ae off by a lage magin in most cases. Also simila to the case of WebL, Cloudscape spends lage amount of time in class loading. Figue 6 shows the esults fo Mecato, the web cawle. We only collected esults fo a limited numbe of s due to the difficulty of setting up the machines in an isolated netwok 2. The esults, howeve, ae quite encouaging. Even though HBench:Java pedicted the ode fo JDK1.2.2_NT_Po and SDK3.2_NT_Po incoectly, the pedicted atio still matches the actual atio quite closely. As a matte of fact, the actual atio is so close to one, it is difficult to tell which one is faste. SPEC98 again pedicted the wong ode fo Sun JDK In this case, two pimitive opeations, the constucto of java.net.socket and java.net.socketinputsteam.ead(), account fo the majoity of the unning time. Table 4 lists the cost of these two pimitives fo the fou Java Vitual Machines tested. The pe-byte socket ead time is quite simila fo the fou s. The socket initialization time, which includes the cost of ceating a TCP connection, vaies a lot among the fou s. The coesponding application vecto enty is (19525, ). To undestand why SPEC pefoms pooly, we examined the time beakdown fo use vesus system classes. Tables 5 and 6 show the pecentage of time spent in system classes fo SPEC pogams and the thee sample applications we tested, espectively. These numbes wee obtained using the sampling facility of the hpof agent included in Sun s JDK As the data show, the SPEC pogams spend most of the time in use classes. Theefoe, they ae poo pedictos fo applications that spend a lot of time in system classes. Notice that even though a lage pecentage of time goes to use classes fo the Cloudscape 2 We have an ageement with Compaq that equies expeiments concening Mecato to be un in an isolated (disconnected) netwok envionment.

8 Table 5. Time beakdown fo SPEC pogams. Pogam System Time (%) Use Time (%) _201_compess _202_jess _209_db _213_javac _222_mpegaudio _227_mtt _228_jack Aveage Table 6. Time beakdown fo sample applications. Pogam System Time (%) Use Time (%) WebL Cloudscape Mecato case, HBench:Java was still able to pedict the atios quite accuately. We suspect that this is because pefomance of use classes is lagely detemined by JIT quality. System classes ae also compiled by the same JIT, thus pefomance of a collection of system classes in some way eflects the JIT quality, which applies to use classes as well. In theoy we can use HBench:Java to pedict the unning time of SPEC pogams. Howeve, since SPEC pogams spend little time in system classes, the few system classes seve as poo sample data fo measuing JIT quality, esulting in lage eo ate. Theefoe, fo SPEC-like applications, moe sophisticated techniques to measue JIT quality ae needed. In summay, the thee examples pesented demonstate HBench:Java s ability to pedict eal applications pefomance. The esults ae especially encouaging since the system vecto contains only a small set of system class methods. We expect the accuacy of HBench:Java to impove as the system vecto is completed. 6. RELATED WORK The HBench:Java appoach is simila to the abstact machine model [12], whee the undelying system is viewed as an abstact Fotan machine, and each pogam is decomposed into a collection of Fotan abstact opeations called AbOps. The machine chaacteize obtains a machine pefomance vecto, wheeas the pogam analyze poduces an application vecto. The linea combination of the two vectos gives the pedicted unning time. This appoach equies extensive compile suppot fo obtaining the accuate numbe of AbOps and is limited to pogamming languages with extemely egula syntax. It is also highly sensitive to compile optimization and hadwae achitectue [13]. As hadwae becomes moe sophisticated, the accuacy achievable with this technique tends to decease. This is the key eason we did not use bytecodes as pimitive opeations. Bown and Seltze [1] used the vecto-based appoach of HBench to evaluate opeating systems. They demonstated that it effectively pedicts the pefomance of the Apache web seve on diffeent platfoms. The pimitive opeations in this case ae system calls, and the application vecto is essentially the system call tace. 7. DISCUSSION AND FUTURE WORK HBench:Java is still in the ealy stages of its development. Hee we identify a few unesolved issues and descibe how we plan to addess them. The fist issue is the lage numbe of API method calls. We plan to attack this poblem by identifying a set of coe methods, including methods executed fequently by most applications (such as those in the Sting class), and methods upon which many othe methods ae built (such as those in the FileInputSteam class). We then plan to analyze method intedependencies and deive unning time estimates of non-coe methods fom the unning times of the coe methods. Fo instance, a length() method typically takes the same time as a size() method. We believe that it is acceptable if the estimates of non-coe classes ae not 100% accuate, since we expect these methods to be infequently invoked. Ou goal is to keep the numbe of micobenchmaks fo the system class method calls unde 200. Anothe issue is that JIT compiles could alte an application enough that no single application vecto could be used acoss all platfoms. Ou expeience so fa indicates that this is not yet a poblem. Howeve, we will closely follow this issue as JIT technologies become moe advanced. Ou shot-tem goal is to implement a complete set of system class micobenchmaks fo HBench:Java and to test it on moe vaieties and commecial applications. In the long un, we will implement othe pats of the system vecto, including components epesenting the memoy system and the execution engine. 8. CONCLUSION HBench:Java is a vecto-based, application-specific benchmaking famewok fo s. Ou pefomance esults demonstate HBench:Java s supeioity ove taditional benchmaking methods in pedicting the pefomance of eal applications and in pinpointing pefomance poblems. By taking the natue of taget applications into account and offeing fine-gained pefomance chaacteizations HBench:Java can povide meaningful metics to both consumes and developes of s and Java applications. 9. ACKNOWLEDGMENTS We wish to thank Allan Heydon and Mac Najok at Compaq Systems Reseach Cente fo poviding us with the Mecato kit, and Suiling Ku fo he assistance with the Cloudscape softwae. We also thank the ceatos of the WebL scipting language. Special thanks go to Lance Bec fom Compaq Systems Reseach Cente fo his suggestions of Java applications fo measuement. We ae gateful to the anonymous eviewes fo thei insightful

9 comments and suggestions on impoving this pape, and to David Sullivan, Keith Smith and Kostas Magoutis fo poofeading the daft. David Sullivan implemented the fist vesion of the HBench:Java micobenchmaks. 10. REFERENCES [1] Bown, A. B. A Decompositional Appoach to Compute System Pefomance Evaluation. Technical Repot TR-03-97, Cente fo Reseach in Computing Technology, Havad Univesity, [2] Bull, J. M., Smith, L. A., Westhead, M. D., Henty, D. S., and Davey, R. A. A Methodology fo Benchmaking Java Gande Applications. In Poceedings of the ACM 1999 Confeence on Java Gande, pages 81-88, Palo Alto, CA, June 12-14, [3] CaffeineMak. [4] Cloudscape. [5] HotSpot. [6] DI, Java Vitual Machine Debugge Inteface. [7] PI, Java Vitual Machine Pofiling Inteface. [8] Jones, M., and Regeh, J. The Poblems You e Having May Not Be the Poblems You Think You e Having: Results fom a Latency Study of Windows NT. In Poceedings of the 1999 Wokshop on Hot Topics in Opeating Systems (HotOS VII), pages , Rio Rico, AZ, Mach 29-30, [9] Liang, S., and Viswanathan, D. Compehensive Pofiling Suppot in the Java Vitual Machine. In 5th USENIX Confeence on Object-Oiented Technologies and Systems (COOTS 99), pages , San Diego, CA, May 3-7, [10] Mathew, J. A., Coddington, P. D., and Hawick, K. A. Analysis and Development of Java Gande Benchmaks. In Poceedings of the ACM 1999 Confeence on Java Gande, pages 72-80, Palo Alto, CA, June 12-14, [11] Mecato. [12] Saaveda-Baea, R. H., Smith, A. J., and Miya, E. Machine Chaacteization Based on an Abstact High-Level Language Machine. IEEE Tansactions on Compute, 38(12), Decembe 1989, [13] Saaveda-Baea, R. H., Smith, A. J., Analysis of Benchmak Chaacteistics and Benchmak Pefomance Pediction. ACM Tansactions on Compute Systems, 14(4), Novembe 1996, [14] Seltze, M., Kinsky, D., Smith, K., and Zhang X. The Case fo Application-Specific Benchmaking. In Poceedings of the 1999 Wokshop on Hot Topics in Opeating Systems (HotOS VII), pages , Rio Rico, AZ, Mach 29-30, [15] SPEC98. [16] VolanoMak. [17] WebL.

STUDENT RESPONSE TO ANNUITY FORMULA DERIVATION

STUDENT RESPONSE TO ANNUITY FORMULA DERIVATION Page 1 STUDENT RESPONSE TO ANNUITY FORMULA DERIVATION C. Alan Blaylock, Hendeson State Univesity ABSTRACT This pape pesents an intuitive appoach to deiving annuity fomulas fo classoom use and attempts

More information

Software Engineering and Development

Software Engineering and Development I T H E A 67 Softwae Engineeing and Development SOFTWARE DEVELOPMENT PROCESS DYNAMICS MODELING AS STATE MACHINE Leonid Lyubchyk, Vasyl Soloshchuk Abstact: Softwae development pocess modeling is gaining

More information

9:6.4 Sample Questions/Requests for Managing Underwriter Candidates

9:6.4 Sample Questions/Requests for Managing Underwriter Candidates 9:6.4 INITIAL PUBLIC OFFERINGS 9:6.4 Sample Questions/Requests fo Managing Undewite Candidates Recent IPO Expeience Please povide a list of all completed o withdawn IPOs in which you fim has paticipated

More information

Questions & Answers Chapter 10 Software Reliability Prediction, Allocation and Demonstration Testing

Questions & Answers Chapter 10 Software Reliability Prediction, Allocation and Demonstration Testing M13914 Questions & Answes Chapte 10 Softwae Reliability Pediction, Allocation and Demonstation Testing 1. Homewok: How to deive the fomula of failue ate estimate. λ = χ α,+ t When the failue times follow

More information

Memory-Aware Sizing for In-Memory Databases

Memory-Aware Sizing for In-Memory Databases Memoy-Awae Sizing fo In-Memoy Databases Kasten Molka, Giuliano Casale, Thomas Molka, Laua Mooe Depatment of Computing, Impeial College London, United Kingdom {k.molka3, g.casale}@impeial.ac.uk SAP HANA

More information

An Introduction to Omega

An Introduction to Omega An Intoduction to Omega Con Keating and William F. Shadwick These distibutions have the same mean and vaiance. Ae you indiffeent to thei isk-ewad chaacteistics? The Finance Development Cente 2002 1 Fom

More information

ON THE (Q, R) POLICY IN PRODUCTION-INVENTORY SYSTEMS

ON THE (Q, R) POLICY IN PRODUCTION-INVENTORY SYSTEMS ON THE R POLICY IN PRODUCTION-INVENTORY SYSTEMS Saifallah Benjaafa and Joon-Seok Kim Depatment of Mechanical Engineeing Univesity of Minnesota Minneapolis MN 55455 Abstact We conside a poduction-inventoy

More information

An Approach to Optimized Resource Allocation for Cloud Simulation Platform

An Approach to Optimized Resource Allocation for Cloud Simulation Platform An Appoach to Optimized Resouce Allocation fo Cloud Simulation Platfom Haitao Yuan 1, Jing Bi 2, Bo Hu Li 1,3, Xudong Chai 3 1 School of Automation Science and Electical Engineeing, Beihang Univesity,

More information

HEALTHCARE INTEGRATION BASED ON CLOUD COMPUTING

HEALTHCARE INTEGRATION BASED ON CLOUD COMPUTING U.P.B. Sci. Bull., Seies C, Vol. 77, Iss. 2, 2015 ISSN 2286-3540 HEALTHCARE INTEGRATION BASED ON CLOUD COMPUTING Roxana MARCU 1, Dan POPESCU 2, Iulian DANILĂ 3 A high numbe of infomation systems ae available

More information

Comparing Availability of Various Rack Power Redundancy Configurations

Comparing Availability of Various Rack Power Redundancy Configurations Compaing Availability of Vaious Rack Powe Redundancy Configuations By Victo Avela White Pape #48 Executive Summay Tansfe switches and dual-path powe distibution to IT equipment ae used to enhance the availability

More information

An Epidemic Model of Mobile Phone Virus

An Epidemic Model of Mobile Phone Virus An Epidemic Model of Mobile Phone Vius Hui Zheng, Dong Li, Zhuo Gao 3 Netwok Reseach Cente, Tsinghua Univesity, P. R. China [email protected] School of Compute Science and Technology, Huazhong Univesity

More information

The transport performance evaluation system building of logistics enterprises

The transport performance evaluation system building of logistics enterprises Jounal of Industial Engineeing and Management JIEM, 213 6(4): 194-114 Online ISSN: 213-953 Pint ISSN: 213-8423 http://dx.doi.og/1.3926/jiem.784 The tanspot pefomance evaluation system building of logistics

More information

Financing Terms in the EOQ Model

Financing Terms in the EOQ Model Financing Tems in the EOQ Model Habone W. Stuat, J. Columbia Business School New Yok, NY 1007 [email protected] August 6, 004 1 Intoduction This note discusses two tems that ae often omitted fom the standad

More information

est using the formula I = Prt, where I is the interest earned, P is the principal, r is the interest rate, and t is the time in years.

est using the formula I = Prt, where I is the interest earned, P is the principal, r is the interest rate, and t is the time in years. 9.2 Inteest Objectives 1. Undestand the simple inteest fomula. 2. Use the compound inteest fomula to find futue value. 3. Solve the compound inteest fomula fo diffeent unknowns, such as the pesent value,

More information

AN IMPLEMENTATION OF BINARY AND FLOATING POINT CHROMOSOME REPRESENTATION IN GENETIC ALGORITHM

AN IMPLEMENTATION OF BINARY AND FLOATING POINT CHROMOSOME REPRESENTATION IN GENETIC ALGORITHM AN IMPLEMENTATION OF BINARY AND FLOATING POINT CHROMOSOME REPRESENTATION IN GENETIC ALGORITHM Main Golub Faculty of Electical Engineeing and Computing, Univesity of Zageb Depatment of Electonics, Micoelectonics,

More information

Chapter 3 Savings, Present Value and Ricardian Equivalence

Chapter 3 Savings, Present Value and Ricardian Equivalence Chapte 3 Savings, Pesent Value and Ricadian Equivalence Chapte Oveview In the pevious chapte we studied the decision of households to supply hous to the labo maket. This decision was a static decision,

More information

Comparing Availability of Various Rack Power Redundancy Configurations

Comparing Availability of Various Rack Power Redundancy Configurations Compaing Availability of Vaious Rack Powe Redundancy Configuations White Pape 48 Revision by Victo Avela > Executive summay Tansfe switches and dual-path powe distibution to IT equipment ae used to enhance

More information

SUPPORT VECTOR MACHINE FOR BANDWIDTH ANALYSIS OF SLOTTED MICROSTRIP ANTENNA

SUPPORT VECTOR MACHINE FOR BANDWIDTH ANALYSIS OF SLOTTED MICROSTRIP ANTENNA Intenational Jounal of Compute Science, Systems Engineeing and Infomation Technology, 4(), 20, pp. 67-7 SUPPORT VECTOR MACHIE FOR BADWIDTH AALYSIS OF SLOTTED MICROSTRIP ATEA Venmathi A.R. & Vanitha L.

More information

Reduced Pattern Training Based on Task Decomposition Using Pattern Distributor

Reduced Pattern Training Based on Task Decomposition Using Pattern Distributor > PNN05-P762 < Reduced Patten Taining Based on Task Decomposition Using Patten Distibuto Sheng-Uei Guan, Chunyu Bao, and TseNgee Neo Abstact Task Decomposition with Patten Distibuto (PD) is a new task

More information

Database Management Systems

Database Management Systems Contents Database Management Systems (COP 5725) D. Makus Schneide Depatment of Compute & Infomation Science & Engineeing (CISE) Database Systems Reseach & Development Cente Couse Syllabus 1 Sping 2012

More information

INITIAL MARGIN CALCULATION ON DERIVATIVE MARKETS OPTION VALUATION FORMULAS

INITIAL MARGIN CALCULATION ON DERIVATIVE MARKETS OPTION VALUATION FORMULAS INITIAL MARGIN CALCULATION ON DERIVATIVE MARKETS OPTION VALUATION FORMULAS Vesion:.0 Date: June 0 Disclaime This document is solely intended as infomation fo cleaing membes and othes who ae inteested in

More information

IBM Research Smarter Transportation Analytics

IBM Research Smarter Transportation Analytics IBM Reseach Smate Tanspotation Analytics Laua Wynte PhD, Senio Reseach Scientist, IBM Watson Reseach Cente [email protected] INSTRUMENTED We now have the ability to measue, sense and see the exact condition

More information

Converting knowledge Into Practice

Converting knowledge Into Practice Conveting knowledge Into Pactice Boke Nightmae srs Tend Ride By Vladimi Ribakov Ceato of Pips Caie 20 of June 2010 2 0 1 0 C o p y i g h t s V l a d i m i R i b a k o v 1 Disclaime and Risk Wanings Tading

More information

A Comparative Analysis of Data Center Network Architectures

A Comparative Analysis of Data Center Network Architectures A Compaative Analysis of Data Cente Netwok Achitectues Fan Yao, Jingxin Wu, Guu Venkataamani, Suesh Subamaniam Depatment of Electical and Compute Engineeing, The Geoge Washington Univesity, Washington,

More information

Tracking/Fusion and Deghosting with Doppler Frequency from Two Passive Acoustic Sensors

Tracking/Fusion and Deghosting with Doppler Frequency from Two Passive Acoustic Sensors Tacking/Fusion and Deghosting with Dopple Fequency fom Two Passive Acoustic Sensos Rong Yang, Gee Wah Ng DSO National Laboatoies 2 Science Pak Dive Singapoe 11823 Emails: [email protected], [email protected]

More information

Power Monitoring and Control for Electric Home Appliances Based on Power Line Communication

Power Monitoring and Control for Electric Home Appliances Based on Power Line Communication I²MTC 2008 IEEE Intenational Instumentation and Measuement Technology Confeence Victoia, Vancouve Island, Canada, May 12 15, 2008 Powe Monitoing and Contol fo Electic Home Appliances Based on Powe Line

More information

A framework for the selection of enterprise resource planning (ERP) system based on fuzzy decision making methods

A framework for the selection of enterprise resource planning (ERP) system based on fuzzy decision making methods A famewok fo the selection of entepise esouce planning (ERP) system based on fuzzy decision making methods Omid Golshan Tafti M.s student in Industial Management, Univesity of Yazd [email protected]

More information

The Role of Gravity in Orbital Motion

The Role of Gravity in Orbital Motion ! The Role of Gavity in Obital Motion Pat of: Inquiy Science with Datmouth Developed by: Chistophe Caoll, Depatment of Physics & Astonomy, Datmouth College Adapted fom: How Gavity Affects Obits (Ohio State

More information

Data Center Demand Response: Avoiding the Coincident Peak via Workload Shifting and Local Generation

Data Center Demand Response: Avoiding the Coincident Peak via Workload Shifting and Local Generation (213) 1 28 Data Cente Demand Response: Avoiding the Coincident Peak via Wokload Shifting and Local Geneation Zhenhua Liu 1, Adam Wieman 1, Yuan Chen 2, Benjamin Razon 1, Niangjun Chen 1 1 Califonia Institute

More information

Ilona V. Tregub, ScD., Professor

Ilona V. Tregub, ScD., Professor Investment Potfolio Fomation fo the Pension Fund of Russia Ilona V. egub, ScD., Pofesso Mathematical Modeling of Economic Pocesses Depatment he Financial Univesity unde the Govenment of the Russian Fedeation

More information

FXA 2008. Candidates should be able to : Describe how a mass creates a gravitational field in the space around it.

FXA 2008. Candidates should be able to : Describe how a mass creates a gravitational field in the space around it. Candidates should be able to : Descibe how a mass ceates a gavitational field in the space aound it. Define gavitational field stength as foce pe unit mass. Define and use the peiod of an object descibing

More information

Automatic Testing of Neighbor Discovery Protocol Based on FSM and TTCN*

Automatic Testing of Neighbor Discovery Protocol Based on FSM and TTCN* Automatic Testing of Neighbo Discovey Potocol Based on FSM and TTCN* Zhiliang Wang, Xia Yin, Haibin Wang, and Jianping Wu Depatment of Compute Science, Tsinghua Univesity Beijing, P. R. China, 100084 Email:

More information

Distributed Computing and Big Data: Hadoop and MapReduce

Distributed Computing and Big Data: Hadoop and MapReduce Distibuted Computing and Big Data: Hadoop and Map Bill Keenan, Diecto Tey Heinze, Achitect Thomson Reutes Reseach & Development Agenda R&D Oveview Hadoop and Map Oveview Use Case: Clusteing Legal Documents

More information

Scheduling Hadoop Jobs to Meet Deadlines

Scheduling Hadoop Jobs to Meet Deadlines Scheduling Hadoop Jobs to Meet Deadlines Kamal Kc, Kemafo Anyanwu Depatment of Compute Science Noth Caolina State Univesity {kkc,kogan}@ncsu.edu Abstact Use constaints such as deadlines ae impotant equiements

More information

The impact of migration on the provision. of UK public services (SRG.10.039.4) Final Report. December 2011

The impact of migration on the provision. of UK public services (SRG.10.039.4) Final Report. December 2011 The impact of migation on the povision of UK public sevices (SRG.10.039.4) Final Repot Decembe 2011 The obustness The obustness of the analysis of the is analysis the esponsibility is the esponsibility

More information

Cloud Service Reliability: Modeling and Analysis

Cloud Service Reliability: Modeling and Analysis Cloud Sevice eliability: Modeling and Analysis Yuan-Shun Dai * a c, Bo Yang b, Jack Dongaa a, Gewei Zhang c a Innovative Computing Laboatoy, Depatment of Electical Engineeing & Compute Science, Univesity

More information

Review Graph based Online Store Review Spammer Detection

Review Graph based Online Store Review Spammer Detection Review Gaph based Online Stoe Review Spamme Detection Guan Wang, Sihong Xie, Bing Liu, Philip S. Yu Univesity of Illinois at Chicago Chicago, USA [email protected] [email protected] [email protected] [email protected]

More information

Adaptive Queue Management with Restraint on Non-Responsive Flows

Adaptive Queue Management with Restraint on Non-Responsive Flows Adaptive Queue Management wi Restaint on Non-Responsive Flows Lan Li and Gyungho Lee Depatment of Electical and Compute Engineeing Univesity of Illinois at Chicago 85 S. Mogan Steet Chicago, IL 667 {lli,

More information

VISCOSITY OF BIO-DIESEL FUELS

VISCOSITY OF BIO-DIESEL FUELS VISCOSITY OF BIO-DIESEL FUELS One of the key assumptions fo ideal gases is that the motion of a given paticle is independent of any othe paticles in the system. With this assumption in place, one can use

More information

High Availability Replication Strategy for Deduplication Storage System

High Availability Replication Strategy for Deduplication Storage System Zhengda Zhou, Jingli Zhou College of Compute Science and Technology, Huazhong Univesity of Science and Technology, *, [email protected] [email protected] Abstact As the amount of digital data

More information

Supplementary Material for EpiDiff

Supplementary Material for EpiDiff Supplementay Mateial fo EpiDiff Supplementay Text S1. Pocessing of aw chomatin modification data In ode to obtain the chomatin modification levels in each of the egions submitted by the use QDCMR module

More information

How to SYSPREP a Windows 7 Pro corporate PC setup so you can image it for use on future PCs

How to SYSPREP a Windows 7 Pro corporate PC setup so you can image it for use on future PCs AnswesThatWok TM How to SYSPREP a Windows 7 Po copoate PC setup so you can image it fo use on futue PCs In a copoate envionment most PCs will usually have identical setups, with the same pogams installed

More information

Uncertain Version Control in Open Collaborative Editing of Tree-Structured Documents

Uncertain Version Control in Open Collaborative Editing of Tree-Structured Documents Uncetain Vesion Contol in Open Collaboative Editing of Tee-Stuctued Documents M. Lamine Ba Institut Mines Télécom; Télécom PaisTech; LTCI Pais, Fance mouhamadou.ba@ telecom-paistech.f Talel Abdessalem

More information

Modeling and Verifying a Price Model for Congestion Control in Computer Networks Using PROMELA/SPIN

Modeling and Verifying a Price Model for Congestion Control in Computer Networks Using PROMELA/SPIN Modeling and Veifying a Pice Model fo Congestion Contol in Compute Netwoks Using PROMELA/SPIN Clement Yuen and Wei Tjioe Depatment of Compute Science Univesity of Toonto 1 King s College Road, Toonto,

More information

2 r2 θ = r2 t. (3.59) The equal area law is the statement that the term in parentheses,

2 r2 θ = r2 t. (3.59) The equal area law is the statement that the term in parentheses, 3.4. KEPLER S LAWS 145 3.4 Keple s laws You ae familia with the idea that one can solve some mechanics poblems using only consevation of enegy and (linea) momentum. Thus, some of what we see as objects

More information

Manual ultrasonic inspection of thin metal welds

Manual ultrasonic inspection of thin metal welds Manual ultasonic inspection of thin metal welds Capucine Capentie and John Rudlin TWI Cambidge CB1 6AL, UK Telephone 01223 899000 Fax 01223 890689 E-mail [email protected] Abstact BS EN ISO 17640

More information

THE DISTRIBUTED LOCATION RESOLUTION PROBLEM AND ITS EFFICIENT SOLUTION

THE DISTRIBUTED LOCATION RESOLUTION PROBLEM AND ITS EFFICIENT SOLUTION IADIS Intenational Confeence Applied Computing 2006 THE DISTRIBUTED LOCATION RESOLUTION PROBLEM AND ITS EFFICIENT SOLUTION Jög Roth Univesity of Hagen 58084 Hagen, Gemany [email protected] ABSTRACT

More information

College of Engineering Bachelor of Computer Science

College of Engineering Bachelor of Computer Science 2 0 0 7 w w w. c n u a s. e d u College of Engineeing Bachelo of Compute Science This bochue Details the BACHELOR OF COMPUTER SCIENCE PROGRAM available though CNU s College of Engineeing. Fo ou most up-to-date

More information

Efficient Redundancy Techniques for Latency Reduction in Cloud Systems

Efficient Redundancy Techniques for Latency Reduction in Cloud Systems Efficient Redundancy Techniques fo Latency Reduction in Cloud Systems 1 Gaui Joshi, Emina Soljanin, and Gegoy Wonell Abstact In cloud computing systems, assigning a task to multiple seves and waiting fo

More information

Real Time Tracking of High Speed Movements in the Context of a Table Tennis Application

Real Time Tracking of High Speed Movements in the Context of a Table Tennis Application Real Time Tacking of High Speed Movements in the Context of a Table Tennis Application Stephan Rusdof Chemnitz Univesity of Technology D-09107, Chemnitz, Gemany +49 371 531 1533 [email protected]

More information

Spirotechnics! September 7, 2011. Amanda Zeringue, Michael Spannuth and Amanda Zeringue Dierential Geometry Project

Spirotechnics! September 7, 2011. Amanda Zeringue, Michael Spannuth and Amanda Zeringue Dierential Geometry Project Spiotechnics! Septembe 7, 2011 Amanda Zeingue, Michael Spannuth and Amanda Zeingue Dieential Geomety Poject 1 The Beginning The geneal consensus of ou goup began with one thought: Spiogaphs ae awesome.

More information

Figure 2. So it is very likely that the Babylonians attributed 60 units to each side of the hexagon. Its resulting perimeter would then be 360!

Figure 2. So it is very likely that the Babylonians attributed 60 units to each side of the hexagon. Its resulting perimeter would then be 360! 1. What ae angles? Last time, we looked at how the Geeks intepeted measument of lengths. Howeve, as fascinated as they wee with geomety, thee was a shape that was much moe enticing than any othe : the

More information

Semipartial (Part) and Partial Correlation

Semipartial (Part) and Partial Correlation Semipatial (Pat) and Patial Coelation his discussion boows heavily fom Applied Multiple egession/coelation Analysis fo the Behavioal Sciences, by Jacob and Paticia Cohen (975 edition; thee is also an updated

More information

Channel selection in e-commerce age: A strategic analysis of co-op advertising models

Channel selection in e-commerce age: A strategic analysis of co-op advertising models Jounal of Industial Engineeing and Management JIEM, 013 6(1):89-103 Online ISSN: 013-0953 Pint ISSN: 013-843 http://dx.doi.og/10.396/jiem.664 Channel selection in e-commece age: A stategic analysis of

More information

How to create RAID 1 mirroring with a hard disk that already has data or an operating system on it

How to create RAID 1 mirroring with a hard disk that already has data or an operating system on it AnswesThatWok TM How to set up a RAID1 mio with a dive which aleady has Windows installed How to ceate RAID 1 mioing with a had disk that aleady has data o an opeating system on it Date Company PC / Seve

More information

YARN PROPERTIES MEASUREMENT: AN OPTICAL APPROACH

YARN PROPERTIES MEASUREMENT: AN OPTICAL APPROACH nd INTERNATIONAL TEXTILE, CLOTHING & ESIGN CONFERENCE Magic Wold of Textiles Octobe 03 d to 06 th 004, UBROVNIK, CROATIA YARN PROPERTIES MEASUREMENT: AN OPTICAL APPROACH Jana VOBOROVA; Ashish GARG; Bohuslav

More information

METHODOLOGICAL APPROACH TO STRATEGIC PERFORMANCE OPTIMIZATION

METHODOLOGICAL APPROACH TO STRATEGIC PERFORMANCE OPTIMIZATION ETHODOOGICA APPOACH TO STATEGIC PEFOANCE OPTIIZATION ao Hell * Stjepan Vidačić ** Željo Gaača *** eceived: 4. 07. 2009 Peliminay communication Accepted: 5. 0. 2009 UDC 65.02.4 This pape pesents a matix

More information

Self-Adaptive and Resource-Efficient SLA Enactment for Cloud Computing Infrastructures

Self-Adaptive and Resource-Efficient SLA Enactment for Cloud Computing Infrastructures 2012 IEEE Fifth Intenational Confeence on Cloud Computing Self-Adaptive and Resouce-Efficient SLA Enactment fo Cloud Computing Infastuctues Michael Maue, Ivona Bandic Distibuted Systems Goup Vienna Univesity

More information

Exam #1 Review Answers

Exam #1 Review Answers xam #1 Review Answes 1. Given the following pobability distibution, calculate the expected etun, vaiance and standad deviation fo Secuity J. State Pob (R) 1 0.2 10% 2 0.6 15 3 0.2 20 xpected etun = 0.2*10%

More information

Towards Realizing a Low Cost and Highly Available Datacenter Power Infrastructure

Towards Realizing a Low Cost and Highly Available Datacenter Power Infrastructure Towads Realizing a Low Cost and Highly Available Datacente Powe Infastuctue Siam Govindan, Di Wang, Lydia Chen, Anand Sivasubamaniam, and Bhuvan Ugaonka The Pennsylvania State Univesity. IBM Reseach Zuich

More information

Chris J. Skinner The probability of identification: applying ideas from forensic statistics to disclosure risk assessment

Chris J. Skinner The probability of identification: applying ideas from forensic statistics to disclosure risk assessment Chis J. Skinne The pobability of identification: applying ideas fom foensic statistics to disclosue isk assessment Aticle (Accepted vesion) (Refeeed) Oiginal citation: Skinne, Chis J. (2007) The pobability

More information

MATHEMATICAL SIMULATION OF MASS SPECTRUM

MATHEMATICAL SIMULATION OF MASS SPECTRUM MATHEMATICA SIMUATION OF MASS SPECTUM.Beánek, J.Knížek, Z. Pulpán 3, M. Hubálek 4, V. Novák Univesity of South Bohemia, Ceske Budejovice, Chales Univesity, Hadec Kalove, 3 Univesity of Hadec Kalove, Hadec

More information

The Predictive Power of Dividend Yields for Stock Returns: Risk Pricing or Mispricing?

The Predictive Power of Dividend Yields for Stock Returns: Risk Pricing or Mispricing? The Pedictive Powe of Dividend Yields fo Stock Retuns: Risk Picing o Mispicing? Glenn Boyle Depatment of Economics and Finance Univesity of Cantebuy Yanhui Li Depatment of Economics and Finance Univesity

More information

Give me all I pay for Execution Guarantees in Electronic Commerce Payment Processes

Give me all I pay for Execution Guarantees in Electronic Commerce Payment Processes Give me all I pay fo Execution Guaantees in Electonic Commece Payment Pocesses Heiko Schuldt Andei Popovici Hans-Jög Schek Email: Database Reseach Goup Institute of Infomation Systems ETH Zentum, 8092

More information

An Efficient Group Key Agreement Protocol for Ad hoc Networks

An Efficient Group Key Agreement Protocol for Ad hoc Networks An Efficient Goup Key Ageement Potocol fo Ad hoc Netwoks Daniel Augot, Raghav haska, Valéie Issany and Daniele Sacchetti INRIA Rocquencout 78153 Le Chesnay Fance {Daniel.Augot, Raghav.haska, Valéie.Issany,

More information

ENABLING INFORMATION GATHERING PATTERNS FOR EMERGENCY RESPONSE WITH THE OPENKNOWLEDGE SYSTEM

ENABLING INFORMATION GATHERING PATTERNS FOR EMERGENCY RESPONSE WITH THE OPENKNOWLEDGE SYSTEM Computing and Infomatics, Vol. 29, 2010, 537 555 ENABLING INFORMATION GATHERING PATTERNS FOR EMERGENCY RESPONSE WITH THE OPENKNOWLEDGE SYSTEM Gaia Tecaichi, Veonica Rizzi, Mauizio Machese Depatment of

More information

Do Vibrations Make Sound?

Do Vibrations Make Sound? Do Vibations Make Sound? Gade 1: Sound Pobe Aligned with National Standads oveview Students will lean about sound and vibations. This activity will allow students to see and hea how vibations do in fact

More information

Strength Analysis and Optimization Design about the key parts of the Robot

Strength Analysis and Optimization Design about the key parts of the Robot Intenational Jounal of Reseach in Engineeing and Science (IJRES) ISSN (Online): 2320-9364, ISSN (Pint): 2320-9356 www.ijes.og Volume 3 Issue 3 ǁ Mach 2015 ǁ PP.25-29 Stength Analysis and Optimization Design

More information

Define What Type of Trader Are you?

Define What Type of Trader Are you? Define What Type of Tade Ae you? Boke Nightmae srs Tend Ride By Vladimi Ribakov Ceato of Pips Caie 20 of June 2010 1 Disclaime and Risk Wanings Tading any financial maket involves isk. The content of this

More information

Statistics and Data Analysis

Statistics and Data Analysis Pape 274-25 An Extension to SAS/OR fo Decision System Suppot Ali Emouznead Highe Education Funding Council fo England, Nothavon house, Coldhabou Lane, Bistol, BS16 1QD U.K. ABSTRACT This pape exploes the

More information

Model-Driven Engineering of Adaptation Engines for Self-Adaptive Software: Executable Runtime Megamodels

Model-Driven Engineering of Adaptation Engines for Self-Adaptive Software: Executable Runtime Megamodels Model-Diven Engineeing of Adaptation Engines fo Self-Adaptive Softwae: Executable Runtime Megamodels Thomas Vogel, Holge Giese Technische Beichte N. 66 des Hasso-Plattne-Instituts fü Softwaesystemtechnik

More information

Experiment 6: Centripetal Force

Experiment 6: Centripetal Force Name Section Date Intoduction Expeiment 6: Centipetal oce This expeiment is concened with the foce necessay to keep an object moving in a constant cicula path. Accoding to Newton s fist law of motion thee

More information

INVESTIGATION OF FLOW INSIDE AN AXIAL-FLOW PUMP OF GV IMP TYPE

INVESTIGATION OF FLOW INSIDE AN AXIAL-FLOW PUMP OF GV IMP TYPE 1 INVESTIGATION OF FLOW INSIDE AN AXIAL-FLOW PUMP OF GV IMP TYPE ANATOLIY A. YEVTUSHENKO 1, ALEXEY N. KOCHEVSKY 1, NATALYA A. FEDOTOVA 1, ALEXANDER Y. SCHELYAEV 2, VLADIMIR N. KONSHIN 2 1 Depatment of

More information

An application of stochastic programming in solving capacity allocation and migration planning problem under uncertainty

An application of stochastic programming in solving capacity allocation and migration planning problem under uncertainty An application of stochastic pogamming in solving capacity allocation and migation planning poblem unde uncetainty Yin-Yann Chen * and Hsiao-Yao Fan Depatment of Industial Management, National Fomosa Univesity,

More information

An Analysis of Manufacturer Benefits under Vendor Managed Systems

An Analysis of Manufacturer Benefits under Vendor Managed Systems An Analysis of Manufactue Benefits unde Vendo Managed Systems Seçil Savaşaneil Depatment of Industial Engineeing, Middle East Technical Univesity, 06531, Ankaa, TURKEY [email protected] Nesim Ekip 1

More information

Optimizing Content Retrieval Delay for LT-based Distributed Cloud Storage Systems

Optimizing Content Retrieval Delay for LT-based Distributed Cloud Storage Systems Optimizing Content Retieval Delay fo LT-based Distibuted Cloud Stoage Systems Haifeng Lu, Chuan Heng Foh, Yonggang Wen, and Jianfei Cai School of Compute Engineeing, Nanyang Technological Univesity, Singapoe

More information

Research on Risk Assessment of the Transformer Based on Life Cycle Cost

Research on Risk Assessment of the Transformer Based on Life Cycle Cost ntenational Jounal of Smat Gid and lean Enegy eseach on isk Assessment of the Tansfome Based on Life ycle ost Hui Zhou a, Guowei Wu a, Weiwei Pan a, Yunhe Hou b, hong Wang b * a Zhejiang Electic Powe opoation,

More information

Gravitational Mechanics of the Mars-Phobos System: Comparing Methods of Orbital Dynamics Modeling for Exploratory Mission Planning

Gravitational Mechanics of the Mars-Phobos System: Comparing Methods of Orbital Dynamics Modeling for Exploratory Mission Planning Gavitational Mechanics of the Mas-Phobos System: Compaing Methods of Obital Dynamics Modeling fo Exploatoy Mission Planning Alfedo C. Itualde The Pennsylvania State Univesity, Univesity Pak, PA, 6802 This

More information

NBER WORKING PAPER SERIES FISCAL ZONING AND SALES TAXES: DO HIGHER SALES TAXES LEAD TO MORE RETAILING AND LESS MANUFACTURING?

NBER WORKING PAPER SERIES FISCAL ZONING AND SALES TAXES: DO HIGHER SALES TAXES LEAD TO MORE RETAILING AND LESS MANUFACTURING? NBER WORKING PAPER SERIES FISCAL ZONING AND SALES TAXES: DO HIGHER SALES TAXES LEAD TO MORE RETAILING AND LESS MANUFACTURING? Daia Bunes David Neumak Michelle J. White Woking Pape 16932 http://www.nbe.og/papes/w16932

More information

Automatic Closed Caption Detection and Filtering in MPEG Videos for Video Structuring

Automatic Closed Caption Detection and Filtering in MPEG Videos for Video Structuring JOURNAL OF INFORMATION SCIENCE AND ENGINEERING, 1145-116 (006) Automatic Closed Caption Detection and Filteing in MPEG Videos fo Video Stuctuing Depatment of Compute Science and Infomation Engineeing National

More information

Faithful Comptroller s Handbook

Faithful Comptroller s Handbook Faithful Comptolle s Handbook Faithful Comptolle s Handbook Selection of Faithful Comptolle The Laws govening the Fouth Degee povide that the faithful comptolle be elected, along with the othe offices

More information

Pipelined MIPS Processor. Dmitri Strukov ECE 154A

Pipelined MIPS Processor. Dmitri Strukov ECE 154A Pipelined MIPS Pocesso Dmiti Stukov ECE 154A Pipelining Analogy Pipelined laundy: ovelapping execution Paallelism impoves pefomance Fou loads: Speedup = 8/3.5 = 2.3 Non-stop: Speedup = 2n/0.5n + 1.5 4

More information

Effect of Contention Window on the Performance of IEEE 802.11 WLANs

Effect of Contention Window on the Performance of IEEE 802.11 WLANs Effect of Contention Window on the Pefomance of IEEE 82.11 WLANs Yunli Chen and Dhama P. Agawal Cente fo Distibuted and Mobile Computing, Depatment of ECECS Univesity of Cincinnati, OH 45221-3 {ychen,

More information

Left- and Right-Brain Preferences Profile

Left- and Right-Brain Preferences Profile Left- and Right-Bain Pefeences Pofile God gave man a total bain, and He expects us to pesent both sides of ou bains back to Him so that He can use them unde the diection of His Holy Spiit as He so desies

More information

Towards Automatic Update of Access Control Policy

Towards Automatic Update of Access Control Policy Towads Automatic Update of Access Contol Policy Jinwei Hu, Yan Zhang, and Ruixuan Li Intelligent Systems Laboatoy, School of Computing and Mathematics Univesity of Westen Sydney, Sydney 1797, Austalia

More information