IP Library › Granted Patent US 10,558,549
Granted Patent B2
US 10,558,549 · App. 15/361,129 · Granted Feb 11, 2020

Method and system for pre-deployment performance estimation of input-output intensive workloads

Inventors: Dheeraj Chahal (Mumbai, IN); Rupinder Singh Virk (Mumbai, IN); Manoj Karunakaran Nambiar (Mumbai, IN)
Assignee: Tata Consultancy Services Limited
G06F11/3485G06F11/3006G06F11/3041G06F11/3051G06F11/349G06F11/3414G06F11/364
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,558,549
App. No.
15/361,129
Granted
Feb 11, 2020
Kind
B2
Abstract

A method and system is provided for pre-deployment performance estimation of input-output intensive workloads. Particularly, the present application provides a method and system for predicting the performance of input-output intensive distributed enterprise application on multiple storage devices without deploying the application and the complete database in the target environment. The present method comprises of generating the input-output traces of an application on a source system with varying concurrencies; replaying the generated traces from the source system on a target system where application needs to be migrated; gathering performance data in the form of resource utilization, through-put and response time from the target system; extrapolating the data gathered from the target system in order to accurately predict the performance of multi-threaded input-output intensive applications in the target system for higher concurrencies.

Claims (34)

1. A system for pre-deployment performance estimation of input-output intensive workloads in a distributed enterprise environment, the system comprising a processor, a memory, operatively coupled with said processor, the memory storing instructions executed by the processor comprising:

an I/O trace capture module configured to generate input-output traces of an application on a source system with varying concurrencies, wherein the input-output traces comprise one or more of a process ID, a timestamp value, or an offset and input-output system call;

an I/O trace replay module configured to replay the generated traces from the source system on a target system, wherein the target system is to which the application needs to be migrated, and to collect performance data in the form of resource utilization, through-put time and response time from the target system; and

an extrapolation module configured to extrapolate the data gathered from the target system in order to accurately predict the performance of multi-threaded input-output intensive application in the target system.

2. The system according to claim 1 , wherein the extrapolation module is further configured to predict performance of multi-threaded input-output intensive application by implementing linear regression, sigmoid curve and black box techniques on the data gathered from the target system.

3. The system according to claim 1 , wherein the I/O trace capture module is further configured to generate the input-output traces in a user mode wherein the user mode is a mode which requires no modification in the application or kernel.

4. The system according to claim 3 , wherein the I/O trace capture module is further configured to:

create a multiple trace output files;

merge the multiple trace output files into a single file; and

sort the input-output system call corresponding to each of the merged multiple trace output files based on the timestamp value associated with the input-output system call.

5. The system according to claim 1 , wherein the I/O trace replay module is further configured to:

copy the database files of the application to a temporary directory on the target system;

replace any access to the database file in the trace by path to the temporary directory; and

replay the generated traces from the source system on the target system wherein the replays are executed at the same time interval as in the source system.

6. A method for pre-deployment performance estimation of input-output intensive workloads in a distributed enterprise environment, said method implemented by a processor and comprising:

generating input-output traces of an application on a source system with varying concurrencies using an I/O trace capture module, wherein the input-output traces comprise one or more of a process ID, a timestamp value, or an offset and input-output system call;

replaying the generated traces from the source system on a target system wherein the target system is to which the application needs to be migrated using an I/O trace replay module;

collecting performance data in the form of resource utilization, through-put time and response time from the target system using the I/O trace replay module; and

extrapolating the data gathered from the target system in order to accurately predict the performance of multi-threaded input-output intensive application in the target system using an extrapolation module.

7. The method according to claim 6 , wherein the input-output traces are generated in a user mode using the I/O trace capture module, wherein the user mode is a mode which requires no modification in the application or kernel.

8. The method according to claim 6 , further comprising:

copying the database files of the application to a temporary directory on the target system;

replacing any access to the database file in the trace by path to the temporary directory; and

replaying the generated traces from the source system on the target system wherein the replays are executed at the same time interval as in the source system.

9. The method according to claim 6 , wherein performance of multi-threaded input-output intensive application is predicted by implementing linear regression, sigmoid curve and black box techniques on the data gathered from the target system using the extrapolation module.

10. A computer program product for pre-deployment performance estimation of input-output intensive workloads in a distributed enterprise environment, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:

generating input-output traces of an application on a source system with varying concurrencies using an I/O trace capture module, wherein the input-output traces comprise one or more of a process ID, a timestamp value, or an offset and input-output system call;

replaying the generated traces from the source system on a target system wherein the target system is to which the application needs to be migrated using an I/O trace replay module;

collecting performance data in the form of resource utilization, through-put time and response time from the target system using the I/O trace replay module; and

extrapolating the data gathered from the target system in order to accurately predict the performance of multi-threaded input-output intensive application in the target system using an extrapolation module.

11. The computer program product of claim 10 , further having embodied instructions for:

copying the database files of the application to a temporary directory on the target system;

replacing any access to the database file in the trace by path to the temporary directory; and

replaying the generated traces from the source system on the target system wherein the replays are executed at the same time interval as in the source system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2016
From: CHAHAL, DHEERAJ; VIRK, RUPINDER SINGH; NAMBIAR, MANOJ KARUNAKARAN
To: TATA CONSULTANCY SERVICES LIMITED
Reel/Frame 040688/0303 →
Priority Claims (1)
IN 4445/MUM/2015 · Nov 26, 2015 · national
Continuity (1)
Related Publication 20170153963A1 · Jun 1, 2017