Browsing by Author "Patros, Panagiotis"
Now showing 1 - 2 of 2
Results Per Page
Sort Options
Item Measuring Java Util Concurrent parking contention in the IBM J9 Virtual Machine(University of New Brunswick, 2014) Patros, Panagiotis; Aubanel, Eric; Bremner, DavidJava Util Concurrent (JUC) is a widely used library providing support for multithreaded applications. JUC provides a variety of tools such as explicit locks, thread pools, blocking queues etc. Many of these constructs use thread parking as a means of synchronizing threads. Measuring thread parking contention can potentially provide information which can be used to accelerate Java applications through the identification of bottlenecks. To the best of our knowledge, no such tool exists, possessing the ability to run as part of the JVM while not otherwise modifying the JUC base classes. IBM's J9 Virtual Machine, which is an implementation of a Java Virtual Machine (JVM), has been modified to store parking contention data and output the results to the screen or to Java dumps. We also show that our tool has a negligible effect on the performance of the JVM. Furthermore, we have investigated coding patterns involving JUC locks and have used our tool to identify bottlenecks and consequently accelerate the Java code. We conclude that our instrumentation to the JUC thread parking implementation provides useful information to developers hoping to optimize application performance.Item Modeling and improving the performance of cloud systems(University of New Brunswick, 2018) Patros, Panagiotis; Kent, KennethCloud computing enables the transparent allocation and sharing of computing resources offered by a multitenant cloud provider to its tenants. Cloud applications are predominately following the client-server paradigm; the server part of an application is the one executed on the cloud and it is responsible for serving its clients while abiding by certain constraints, called Service Level Agreements (SLAs). However, multitenancy comes at the cost of performance interference, which can risk SLA satisfaction. This work investigates a number of performance improvements targeting multitenant cloud application servers as well as theoretically modeling and predicting their behavior. In particular, multitenancy at the application server level is proposed and evaluated; CPU contention during scaling is modeled and cloud applications are classified based on their resource slowdown; cloud performance during scaling is improved through a cross-instance experience sharing technique; the SLA satisfaction of tenants is modeled and improved; the effects of Garbage Collection on SLA satisfaction are studied; and low-load periods are utilized towards decreasing GC-induced performance interference.