|Publication number||US5303166 A|
|Application number||US 07/868,744|
|Publication date||Apr 12, 1994|
|Filing date||Apr 14, 1992|
|Priority date||Apr 14, 1992|
|Publication number||07868744, 868744, US 5303166 A, US 5303166A, US-A-5303166, US5303166 A, US5303166A|
|Inventors||Eugenie A. Amalfitano, Gregory J. McKnight|
|Original Assignee||International Business Machines Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (7), Referenced by (95), Classifications (7), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
1. Technical Field:
The present invention relates in general to performance measurement within a data processing system, and in particular to performance measurement methods and systems for analyzing input/output efficiency in a multiterminal network. Still more particularly, the present invention relates to methods and systems for measurement of input/output efficiency in a multiterminal network utilizing a benchmark test which emulates the input/output characteristics of selected software applications without requiring actual installation of those applications.
2. Description of the Related Art:
Performance monitoring systems within computer hardware or software systems are well known in the prior art. These known performance monitoring systems may comprise hardware devices interposed between multiple devices and a host system, such as the workstation controllers disclosed in U.S. Pat. No. 4,905,171. These workstation controllers monitor and collect data during operation which may be utilized to determine processor performance and communications line performance for each workstation controller. Thereafter, this data is periodically sent to a database maintained by the host and utilized to calculate processor utilization and communications line utilization. In this manner, workloads within the system may be maintained at a desired level of evenness for enhanced system efficiency.
Software monitoring systems are also well known in the prior art. Such systems often utilize so-called "hooks" or uniquely identifiable software elements which are inserted into selected locations in a software application. During execution of the software application each time a hook is encountered performance data is recorded which identifies a selected software component and which may then be utilized to analyze the performance of the software application. Such systems work well in selected applications; however, the processor overhead required to process each hook often artifically degrades the performance of the application under examination.
The interralation between multiple terminals in a network, such as a large number of personal computers coupled to a server device in a Local Area Network (LAN), presents special problems in performance monitoring systems. The ability of a server device to provide service to multiple terminals, personal computers or the like is an important consideration in configuring a network and system architects often seek message systems for analyzing the input/output efficiency of server devices in order to determine the optimum server device for a selected network configuration.
The analysis of server device performance is generally accomplished in the prior art by the execution of a so-called "benchmark test" which is a representative set of programs and data designed to evalurate the performance of computer hardware and software in a given configuration. For example, both the PC Magazine and PC Week trade publications publish a LAN Benchmark Test which may be utilized to evaluate file server performance by executing an arbitrary set of input/output patterns and functions in a manner which is arbitrary or thought to be representative of actual input/output operations. Peter Norton Computing, Inc. of Santa Monica, Calif. also markets a Network Performance Test which operates in a similar manner. While these systems offer some insight into the operation of file servers within a network, the arbitrary nature of the input/output patterns and functions utilized may lead to an inaccurate appraisal of a file server's capabilities.
In an effort to overcome the artificiality of benchmark tests such as those described above, alternate benchmark testing systems have been proposed which operate as a shell encompassing an actual software application. In such systems, the underlying software application is executed and monitored during operation. While these systems represent an increase in the reality aspect of a benchmark analysis they are cumbersome to operate and require the use of an actual software application, with the concomitant concerns involved in licensing, installation and execution.
It should therefore be apparent that a need exists for a method and system for performing a benchmark performance analysis in a data processing network which accurately emulates the input/output characteristics of one or more specific software applications without requiring actual installation and execution of those applications.
It is therefore one object of the present invention to provide an improved performance measurement system for use with a data processing system.
It is another object of the present invention to provide an improved performance measurement method and system for analyzing input/output efficiency in a multiterminal network.
It is yet another object of the present invention to provide an improved method and system for measurement of input/output efficiency in a multiterminal network utilzing a benchmark test which emulates input/output characteristics of selected software applications without requiring actual installation of those applications.
The foregoing objects are achieved as is now described. The method and system of the present invention may be utilized for automated network benchmark performance analysis while providing a highly realistic benchmark test representative of actual operation of specific software applications, without requiring installation and/or operation of the software applications during testing. Selected software applications generally utilized within a specific network are identified and representative transactions within those applications are executed while tracing the operation of the software application to identify and record input/output operations which occur during those transactions. The recorded list of input/output operations is then utilized to create a benchmark script for utilization in testing which has a high degree of verisimilitude when compared with actual software application operations. Benchmark testing is then performed utilizing the scripted input/output operations and highly accurate performance parameters such as throughput, transactions per second and absolute minimum, maximum and average response times may be determined. Additionally, performance parameter statistics for performance of a selected sequence of input/output operations characteristic of representative transactions may be determined and utilized as a more accurate benchmark for performance than individual response times.
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself however, as well as a preferred mode of use, further objects and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
FIG. 1 illustrates a pictorial representative of a data processing network which may be tested utilizing the method and system of the present invention;
FIG. 2 is a graphic representation of a terminal and software systems executing an application which may be utilized to create a benchmark script for utilization with the method and system of the present invention;
FIG. 3 is a high level logic flowchart illustrating the creation of a benchmark script in accordance with the method and system of the present invention;
FIG. 4 is a graphic representation of an automated network benchmark performance analysis software system which may be utilized in accordance with the method and system of the present invention;
FIG. 5 is a high level logic flowchart illustrating the initiation and performance of a network benchmark performance analysis in accordance with the method and system of the present invention; and
FIG. 6 is an example of a performance analysis report which may be generated utilizing the method and system of the present invention.
With reference now to the figures and in particular with reference to FIG. 1, there is depicted a pictorial representation of a data processing network 8 which may be utilized to implement the method and system of the present invention. As may be seen, data processing network 8 may include a plurality of networks, such as Local Area Networks (LAN) 10 and 32, each of which preferably includes a plurality of individual terminals 12 and 32, respectively. Of course, those skilled in the art will appreciate that terminals 12 and 32 may be implemented utilizing a plurality of personal computers or a plurality of Intelligent Work Station (IWS) coupled to a host processor.
As is common in such data processing networks, each individual terminal/computer may be coupled to a storage device 14 and/or a printer/output device 16. One such storage device 14 may be utilized to store data which is later utilized to generate performance analysis reports which may be created in accordance with the method and system of the present invention, in a manner which will be explained in greater detail herein.
Still referring to FIG. 1, it may be seen that data processing network 8 may also include multiple mainframe computers, such as mainframe computer 18, which may be preferably coupled to Local Area Network (LAN) 10 by means of communications link 22. Mainframe computer 18 may also be coupled to a storage device 20 which may serve as remote storage for Local Area Network (LAN) 10 and may be coupled via communications controller 26 and communications link 34 to gateway server 28. Gateway server 28 is preferably an individual computer or Intelligent Work Station (IWS) which serves to link Local Area Network (LAN) 32 to Local Area Network (LAN) 10.
As discussed above with respect to Local Area Network (LAN) 32 and Local Area Network (LAN) 10, a plurality of data objects, database or documents may be stored within storage device 20 and controlled by mainframe computer 18, as resource manager or library server for the data objects and documents thus stored. The input/output efficiency of any such server device within data processing network 8 will therefore have a major effect on the overall efficiency of the network. Thus, it should be apparent to those skilled in the art that a method and system for performing a benchmark performance analysis within data processing network 8 will be desirable in selecting a server device which is most efficient for the applications generally utilized within data processing network 8.
Referring now to FIG. 2, there is depicted a graphic representation of a terminal 12 and a software system 40 which may be utilized to create a benchmark script for utilization with the method and system of the present invention. As described above, terminal 12 may be implemented utilizing a so-called "personal" computer, such as the International Business Machines Corporation PS/2 personal computer, or an Intelligent Work Station (IWS). Software systems 40 preferably include an original application 42 which is an application selected for general utilization within data processing network 8. Operating system 44, network interface 46 and a device driver 48 are also depicted within software system 40 and these systems are interrelated in a manner well known to those skilled in the art. A trace point 50 is graphically depicted which represents the utilization of a trace tool to capture performance-critical operations as such operations occur between application 42 and operating system 44, and record an indication of those operations in a log. Those skilled in the art will appreciate that in the evaluation of file servers within data processing network 8 input/output operations are of special interest for performance analysis.
Trace point 50 is preferably implemented utilizing any suitable trace tool and may be implemented in computers operating in a DOS or other compatible operating system environment utilizing any trace reporting system which can be programmed to capture selected interrupt calls. For example, DOS interrupt calls requesting operating system services are, in the depicted embodiment of the present invention, each identified and recorded in order to provide a representative sample of typical input/output operations which occur during a representative transaction within application 42.
With reference now to FIG. 3, there is depicted a high level logic flowchart which illustrates the creation of a benchmark script in accordance with the method and system of the present invention. As illustrated, the process begins at block 60 and thereafter passes to block 62 which depicts the identification of a specific application 42 (see FIG. 2). In accordance with a preferred embodiment of the present invention applications are chosen which are generally utilized within data processing network 8 (see FIG. 1) in order to provide a benchmark performance analysis which has a high degree of verisimilitude. Next, the process passes to block 64 which illustrates the selection of representative transactions within the chosen software application. Those skilled in the art will appreciate that this selection may be accomplished automatically or may be accomplished, in an alternate embodiment of the present invention, by prompting a user to select particular transactions within the specific application which are representative of commonly utilized operations within that application.
Next, the process passes to block 66, which illustrates the starting of the trace operation. As described above, any suitable trace application may be utilized which is capable of identifying and recording input/output operations which occur during execution of the representative transactions selected in block 64. Thereafter, the process passes to block 68 which illustrates the execution of the identified software application.
After initiating execution of the selected software application, the process passes to block 70 which illustrates a determination of whether or not an interrupt call has occurred. If not, the process merely iterates until such time as an interrupt call does occur. After identifying an interrupt call within block 70, the process passes to block 72. Block 72 illustrates the recording of the input/output operation along with an indication of the time of occurrence. Thereafter, the process passes to block 74. Block 74 illustrates a determination of whether or not the selected application is still executing and if so, the process returns iteratively to block 70 to await the occurrence of the next interrupt call.
Still referring to block 74, in the event the software application has ceased execution the process passes to block 76. Block 76 illustrates the conversion of the recorded input/output operations to a benchmark script. This may be done manually; however, a program may be utilized to create generic input/output operations from the recorded indications of input/output operations identified and recorded during execution of representative transactions in the identified software application. Those skilled in the art will appreciate that this may be accomplished, in the depicted embodiment of the present invention, by filtering out all interrupts other than those related to the direct access storage device (DASD) subsystem. Commands relating to the input/output of subsystems such as: OPEN FILE; CLOSE FILE; READ; WRITE; SEEK; etc. are utilized as an input to the editor to create a script simulation of input/output operations within the representative transactions. Additionally, the file pointer position of each read or write is also utilized to ensure the proper "pattern" of the simulation. The pacing of the various commands and the pattern of the data locations are the criteria which may be utilized to later verify the benchmark script thus created. The benchmark script thus created constitutes a simple time ordered list of input/output operations which, while based on the input/output operations recorded during execution of the selected software application, are generic in nature and do not require the installation and/or execution of the original software application.
Next, the benchmark script which has been created is validated, as depicted at block 78. This validation is preferably accomplished by executing the benchmark script thus created while tracing that operation, in the manner utilized to identify and record the original input/output operations during execution of the actual software application. A trace of the input/output operations generated by the benchmark script may then be compared to the trace of the input/output operations generated during execution of the actual software application, to ensure that the input/output operations generated utilizing the script represent an accurate and realistic emulation of the original software application execution. Thereafter, the process passes to block 80 and terminates.
Referring now to FIG. 4, there is depicted a graphic representation of an automated network benchmark performance analysis software system 100 which may be utilized in accordance with the method and system of the present invention. As illustrated, the performance analyzer software system 100 preferably includes multiple benchmark scripts 102, 104, 106 and 108. In one preferred embodiment of the present invention a benchmark script is prepared for each of multiple software applications which are generally utilized within data processing network 8. In this manner, benchmark performance analysis of a file server within data processing network 8 may be accomplished utilizing benchmark scripts prepared to emulate multiple software applications. This results in a test which more accurately emulates a real world environment for file server performance analysis.
A user interface system 110 is depicted. User interface system 110 is a so-called "front end" interactive system which may be utilized to permit a user to select various performance parameters and the form which the output of performance analyzer software system 100 will take. By utilizing user interface system 110 the user may specify the performance units desired. For example, throughput, application-emulation transactions per second, absolute minimum, maximum and average response time among all workstations, mean minimum, maximum, and average response times among all workstations may be selected. Additionally, in accordance with an important feature of the present invention, the response time for execution of a specified series of input/output operations which emulate a representative transaction within the software application which has been scripted in accordance with the method and system of the present invention may be determined.
The user may also specify testing of more than one terminal within data processing network 8 and which of the multiple scripts within performance analyzer software system 100 are to be utilized. Further, a user may specify a mix of multiple scripts within performance analyzer software system 100. The run length for the performance analyzer benchmark test may also be specified by the user, utilizing user interface system 110.
Next, script interpreter system 112 is also graphically depicted within performance analyzer software system 100. Those skilled in the art will appreciate that script interpreter system 112 may be implemented utilizing a script compiler. Script interpreter system 112 preferably executes the benchmark performance analysis test utilizing the script created in accordance with the description contained herein. The script interpreter system 112 is preferably invoked at a terminal within data processing network 8 to execute one or more scripts 102, 104, 106, and 108 from the script library contained within performance analyzer software system 100. Those skilled in the art will appreciate that a script interpreter or compiler system may be implemented in different ways; however, the sequential execution of each recorded input/output operation within the benchmark script created as described above will permit those input/output operations to be coupled from a terminal to a file server within data processing network 8, emulating the actual execution of a software application.
Finally, report generator system 114 is depicted. Report generator system 114 is a management system which may be utilized to create various reports desired by the user from the operation parameters recorded by performance analyzer software system 100 during execution of the benchmark script. Those skilled in the art will appreciate that report generation system 114 may simply utilize files produced each time a script is executed within a workstation which contain multiple transactions and input/output operations and which also include the response times, operations per second, data throughput and statistical distributions for that script.
The data contained within each log file may then be manipulated utilizing report generation system 114 in any manner found to be desirable by a user in order to generate performance reports which may include system throughput, application-emulation transactions per second, absolute minimum, maximum and average response time among all terminals; mean minimum, maximum and average response times among all terminals and the application-emulation transaction response time among all clients. Additionally, report generation system 114 preferably includes sufficient formatting and performance parameter selection capabilities to permit the reports generated thereby to be formatted for an appropriate printer and/or spread sheet application which may be utilized to automatically generate graphs or other output formats.
With reference now to FIG. 5, there is depicted a high level logic flowchart which illustrates the initiation and performance of a network benchmark performance analysis in accordance with the method and system of the present invention. As illustrated, the process begins at block 120 and thereafter passes to block 122 which illustrates the prompting of the user for test options. As described above, a user may select particular units of measurement for performance analysis and may also specify a number of terminals and a specific application and/or mix of applications which are to be utilized for a desired performance benchmark test. Thereafter, the process passes to block 124.
Block 124 illustrates the execution of the benchmark script at selected terminals and, as depicted at block 126, for each terminal and script, each transaction and input/output operation is logged, preserving an indication of the input/output efficiency of a file server within data processing network 8. Block 128 illustrates the generation of desired performance reports, in any format desired by a user and capable of being generated from the data identified and recorded by the performance analyzer system of the present invention. Thereafter, the process passes to block 130 and terminates.
Referring now to FIG. 6, there is depicted an example of a performance analyzer report which may be generated in accordance with the method and system of the present invention. As illustrated FIG. 6 depicts a report which may be generated utilizing the benchmark performance analysis system of the present invention. The report preferably includes various parameters which specify the system under test, as illustrated at reference numeral 130. Thus, a specification of the operating system, buffer size, run date and start time may be included within the report depicted within FIG. 6. Further, as indicated at reference numeral 132, files defined for utilization by the benchmark script utilized for this test may also be specified within the report depicted within FIG. 6. Thereafter, as depicted at reference numeral 134, various measurements specified by the user may be listed.
Additionally, columns 136, 138, 140, and 142 may be utilized to list a particular operation the average time required for that operation, the total time devoted to that operation and the throughput for that operation respectively. Thus, when utilizing a benchmark script created in accordance with the method and system of the present invention, the average and total amount of time required to process specified operations which are highly representative of those operations generated during actual execution of a representative transaction within a software application generally utilized within the data processing system may be determined. Of course, those skilled in the art will appreciate that the method and system of the present invention may be utilized to generate reports in various other formats, limited only by the capability of the performance parameter selection and the specified data which has been obtained during the benchmark testing. These reports may be utilized for capacity planning based upon application transaction performance results and by allowing a mixture of selected application based transactions may be utilized to more realistically emulate prospective user work loads.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention. For example, those skilled in the art will appreciate that the method and system of the present invention will find application in performance analysis of various other systems under test, including individual workstations, printer servers, or video systems. To that end, those skilled in the art will appreciate that the term "input/output efficiency" shall mean the efficiency of transferring data to or from any system under test.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4802164 *||Jan 6, 1987||Jan 31, 1989||Hitachi Ltd.||Method and apparatus for testing a multi-processor system|
|US5008058 *||Jan 19, 1989||Apr 16, 1991||Siemens Aktiengesellschaft||Method for manufacturing an otoplastic or an ear adaptor member|
|US5045994 *||Sep 23, 1986||Sep 3, 1991||Bell Communications Research, Inc.||Emulation process having several displayed input formats and output formats and windows for creating and testing computer systems|
|US5086386 *||Mar 23, 1990||Feb 4, 1992||Sun Microsystems, Inc.||Method and apparatus for benchmarking the working set of window-based computer systems|
|US5157779 *||Jun 7, 1990||Oct 20, 1992||Sun Microsystems, Inc.||User extensible testing system|
|US5161116 *||Feb 27, 1989||Nov 3, 1992||Dynix||System for evaluating the performance of a large scale programmable machine capable of having a plurality of terminals attached thereto|
|US5245638 *||Oct 29, 1990||Sep 14, 1993||Iowa State University Research Foundation, Inc.||Method and system for benchmarking computers|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US5537542 *||Apr 4, 1994||Jul 16, 1996||International Business Machines Corporation||Apparatus and method for managing a server workload according to client performance goals in a client/server data processing system|
|US5557740 *||May 30, 1995||Sep 17, 1996||International Business Machines Corporation||Method and system for providing device support testing for a plurality of operating systems|
|US5642504 *||Jul 17, 1995||Jun 24, 1997||Fujitsu Limited||Method of testing an application on a server which accesses a database|
|US5671402 *||Mar 28, 1995||Sep 23, 1997||Mitsubishi Denki Kabushiki Kaisha||Method of evaluating a data processing rate using simulation|
|US5680326 *||Jun 22, 1995||Oct 21, 1997||Mci Corporation||System and method therefor of estimating optimal spare capacity for a distributed restoration scheme|
|US5694336 *||May 3, 1996||Dec 2, 1997||Nec Corporation||Detection of improper CPU operation from lap time pulses and count of executed significant steps|
|US5696701 *||Jul 12, 1996||Dec 9, 1997||Electronic Data Systems Corporation||Method and system for monitoring the performance of computers in computer networks using modular extensions|
|US5732218 *||Jan 2, 1997||Mar 24, 1998||Lucent Technologies Inc.||Management-data-gathering system for gathering on clients and servers data regarding interactions between the servers, the clients, and users of the clients during real use of a network of clients and servers|
|US5764912 *||May 20, 1997||Jun 9, 1998||Advanced System Technologies||Method and apparatus for determining response time in computer applications|
|US5781449 *||Aug 10, 1995||Jul 14, 1998||Advanced System Technologies, Inc.||Response time measurement apparatus and method|
|US5790425 *||Feb 19, 1997||Aug 4, 1998||Sun Microsystems, Inc.||Generic server benchmarking framework in a client-server environment|
|US5796633 *||Jul 12, 1996||Aug 18, 1998||Electronic Data Systems Corporation||Method and system for performance monitoring in computer networks|
|US5805898 *||Feb 24, 1995||Sep 8, 1998||International Business Machines Corporation||Method and apparatus for estimating installation time in a data processing system|
|US5809250 *||Oct 23, 1996||Sep 15, 1998||Intel Corporation||Methods for creating and sharing replayable modules representive of Web browsing session|
|US5812780 *||May 24, 1996||Sep 22, 1998||Microsoft Corporation||Method, system, and product for assessing a server application performance|
|US5838920 *||Jul 18, 1997||Nov 17, 1998||Advanced System Technologies, Inc.||Method and apparatus for identifying transactions|
|US5960206 *||Mar 24, 1998||Sep 28, 1999||International Business Machines Corporation||Method and apparatus for estimating installation time in a data processing system|
|US5974572 *||Oct 14, 1997||Oct 26, 1999||Mercury Interactive Corporation||Software system and methods for generating a load test using a server access log|
|US6003079 *||Feb 27, 1997||Dec 14, 1999||Hewlett Packard Company||System and method for continuously measuring quality of service in a federated application environment|
|US6012072 *||Jan 5, 1996||Jan 4, 2000||Digital Equipment Corporation||Display apparatus for the display of documents in a three-dimensional workspace|
|US6035306 *||Nov 24, 1997||Mar 7, 2000||Terascape Software Inc.||Method for improving performance of large databases|
|US6059835 *||Jun 13, 1997||May 9, 2000||International Business Machines Corporation||Performance evaluation of processor operation using trace pre-processing|
|US6151610 *||Dec 27, 1995||Nov 21, 2000||Digital Equipment Corporation||Document display system using a scripting language having container variables setting document attributes|
|US6208640||Feb 27, 1998||Mar 27, 2001||David Spell||Predictive bandwidth allocation method and apparatus|
|US6308211||Dec 16, 1998||Oct 23, 2001||Computer Associates Think, Inc.||Method and apparatus for identifying informational packets|
|US6360332||Jun 21, 1999||Mar 19, 2002||Mercury Interactive Corporation||Software system and methods for testing the functionality of a transactional server|
|US6381558 *||Dec 18, 1998||Apr 30, 2002||International Business Machines Corporation||Alternative profiling methodology and tool for analyzing competitive benchmarks|
|US6381635||Nov 19, 1998||Apr 30, 2002||Ncr Corporation||Method for displaying multiple performance measurements of a web site using a platform independent program|
|US6477571||Aug 11, 1998||Nov 5, 2002||Computer Associates Think, Inc.||Transaction recognition and prediction using regular expressions|
|US6493754||Nov 5, 1998||Dec 10, 2002||Computer Associates Think, Inc.||Method and apparatus for analyzing communications on different threads|
|US6519714 *||Sep 30, 1999||Feb 11, 2003||Netscout Service Level Corporation||Evaluating computer resources|
|US6522631||Apr 9, 2002||Feb 18, 2003||Computer Associates Think, Inc.||Response time measurement apparatus and method|
|US6549944||Jul 6, 2000||Apr 15, 2003||Mercury Interactive Corporation||Use of server access logs to generate scripts and scenarios for exercising and evaluating performance of web sites|
|US6587969||Jun 21, 1999||Jul 1, 2003||Mercury Interactive Corporation||Software system and methods for testing the functionality of a transactional server|
|US6694288||Aug 6, 2002||Feb 17, 2004||Mercury Interactive Corporation||System and method for automated analysis of load testing results|
|US6763321 *||Jun 22, 2001||Jul 13, 2004||Sun Microsystems, Inc.||Method and apparatus to facilitate measurement of quality-of-service performance of a network server|
|US6792460||Jan 20, 2003||Sep 14, 2004||Mercury Interactive Corporation||System and methods for monitoring application server performance|
|US6810494||Feb 24, 2003||Oct 26, 2004||Mercury Interactive Corporation||Software system and methods for testing transactional servers|
|US6889159||Jul 22, 2002||May 3, 2005||Finisar Corporation||Scalable multithreaded system testing tool|
|US6898556||Sep 26, 2003||May 24, 2005||Mercury Interactive Corporation||Software system and methods for analyzing the performance of a server|
|US6931357 *||Jul 18, 2003||Aug 16, 2005||Computer Network Technology Corp.||Computer network monitoring with test data analysis|
|US6990521||Oct 4, 2002||Jan 24, 2006||Computer Associates Think, Inc.||Transaction recognition and prediction using regular expressions|
|US7035222 *||Jul 19, 2001||Apr 25, 2006||At&T Corp.||Methods for optimizing and evaluating network access techniques|
|US7047446||Oct 26, 2000||May 16, 2006||International Business Machines Corporation||Load test system and method|
|US7114106||Jul 22, 2002||Sep 26, 2006||Finisar Corporation||Scalable network attached storage (NAS) testing tool|
|US7120589 *||Jul 16, 1999||Oct 10, 2006||Dell Products L.P.||System and method for managing customer experience information|
|US7171464 *||Jan 24, 2000||Jan 30, 2007||Microsoft Corporation||Method of tracing data traffic on a network|
|US7184945 *||Sep 28, 2000||Feb 27, 2007||Fujitsu Limited||Service distribution device|
|US7200526 *||Sep 6, 2005||Apr 3, 2007||Sun Microsystems, Inc.||Method and apparatus for comparing performance of electronic devices|
|US7200527 *||Sep 6, 2005||Apr 3, 2007||Sun Microsystems, Inc.||Apparatus for comparing performance of electronic devices|
|US7284052 *||Aug 2, 2002||Oct 16, 2007||Hewlett-Packard Development Company, L.P.||Estimating utilization of computing system resources|
|US7401143||Mar 3, 2004||Jul 15, 2008||Hewlett-Packard Development Company, L.P.||System and methods for monitoring application server performance|
|US7457723||Mar 1, 2006||Nov 25, 2008||Microsoft Corporation||Software performance testing with minimum iterations|
|US7483976||Nov 11, 2005||Jan 27, 2009||Computer Associates Think, Inc.||Transaction recognition and prediction using regular expressions|
|US7526508||Sep 3, 2004||Apr 28, 2009||Oracle International Corporation||Self-managing database architecture|
|US7558211 *||Feb 17, 2006||Jul 7, 2009||At&T Corp.||Methods for optimizing and evaluating network access techniques|
|US7596484||Nov 15, 2000||Sep 29, 2009||Itt Manufacturing Enterprises, Inc.||Network node emulator and method of node emulation|
|US7603340||Sep 3, 2004||Oct 13, 2009||Oracle International Corporation||Automatic workload repository battery of performance statistics|
|US7664798||Sep 3, 2004||Feb 16, 2010||Oracle International Corporation||Database performance baselines|
|US7673291 *||Feb 9, 2004||Mar 2, 2010||Oracle International Corporation||Automatic database diagnostic monitor architecture|
|US7703079 *||May 3, 2005||Apr 20, 2010||Oracle America, Inc.||System performance prediction|
|US7743090 *||Feb 8, 2006||Jun 22, 2010||Federal Home Loan Mortgage Corporation (Freddie Mac)||Systems and methods for infrastructure validation|
|US7818746||Mar 30, 2005||Oct 19, 2010||Hewlett-Packard Development Company, L.P.||System and method for benchmarking using a multi-threaded load generator|
|US7822844||Mar 3, 2004||Oct 26, 2010||Hewlett-Packard Development Company, L.P.||System and methods for monitoring application server performance|
|US7827529 *||Nov 30, 2005||Nov 2, 2010||Oracle America, Inc.||System and method for generating a probability distribution of computer performance ratios|
|US7945657 *||Mar 30, 2005||May 17, 2011||Oracle America, Inc.||System and method for emulating input/output performance of an application|
|US7996824 *||Feb 28, 2008||Aug 9, 2011||International Business Machines Corporation||Benchmark synthesis using workload statistics|
|US8131530 *||Sep 28, 2007||Mar 6, 2012||Oracle America, Inc.||Mechanism for realistic application/network modeling using a workload description|
|US8176406 *||Mar 19, 2008||May 8, 2012||International Business Machines Corporation||Hard error detection|
|US8255511||Jul 28, 1999||Aug 28, 2012||Ca, Inc.||Network performance monitoring|
|US8448181||Jan 30, 2009||May 21, 2013||Hewlett-Packard Development Company, L.P.||Sizing an infrastructure configuration optimized for a workload mix|
|US8549138 *||Oct 1, 2010||Oct 1, 2013||Microsoft Corporation||Web test generation|
|US8583722||May 7, 2010||Nov 12, 2013||Federal Home Loan Mortgage Corporation||Systems and methods for infrastructure validation|
|US8903757||Jan 28, 2009||Dec 2, 2014||Appnomic Systems Private Limited||Proactive information technology infrastructure management|
|US8990811||Apr 28, 2008||Mar 24, 2015||Oracle International Corporation||Future-based performance baselines|
|US20040215762 *||Mar 3, 2004||Oct 28, 2004||Yossi Oulu||System and methods for monitoring application server performance|
|US20040215768 *||Mar 3, 2004||Oct 28, 2004||Yossi Oulu||System and methods for monitoring application server performance|
|US20050055673 *||Feb 9, 2004||Mar 10, 2005||Oracle International Corporation||Automatic database diagnostic monitor architecture|
|US20050086195 *||Sep 3, 2004||Apr 21, 2005||Leng Leng Tan||Self-managing database architecture|
|US20050086242 *||Sep 3, 2004||Apr 21, 2005||Oracle International Corporation||Automatic workload repository battery of performance statistics|
|US20050086246 *||Sep 3, 2004||Apr 21, 2005||Oracle International Corporation||Database performance baselines|
|US20050182589 *||Feb 10, 2005||Aug 18, 2005||Itzhak Smocha||Software system and methods for analyzing the performance of a server|
|US20050289171 *||Sep 2, 2005||Dec 29, 2005||Microsoft Corporation||System and method for managing database files in a client management tool|
|US20060031458 *||Oct 4, 2002||Feb 9, 2006||Platinum Technology, Inc||Transaction recognition and prediction using regular expressions|
|US20090089038 *||Sep 28, 2007||Apr 2, 2009||Sun Microsystems, Inc.||Mechanism for realistic application/network modeling using a workload description|
|US20090240977 *||Mar 19, 2008||Sep 24, 2009||International Business Machines Corporation||Method, system and computer program product for hard error detection|
|US20100100401 *||Oct 16, 2008||Apr 22, 2010||Jerome Rolia||System And Method For Sizing Enterprise Application Systems|
|US20120084433 *||Apr 5, 2012||Microsoft Corporation||Web test generation|
|US20140089741 *||Sep 25, 2013||Mar 27, 2014||Nec Corporation||Data transition tracing apparatus, data transition tracing method and storage medium storing data transition tracing program|
|EP0784276A1 *||Dec 20, 1996||Jul 16, 1997||Pure Atria Corporation||Load test system and method|
|EP1405190A1 *||Jul 8, 2002||Apr 7, 2004||Computer Associates Think, Inc.||Method and system for providing a virtual user interface|
|WO1996041284A1 *||Jun 7, 1996||Dec 19, 1996||David M Geshwind||Improved end-user interactive access to the world-wide web via the internet|
|WO1997006494A1 *||Jul 19, 1996||Feb 20, 1997||Advanced Sys Tech Inc||Response time measurement apparatus and method|
|WO1997031320A1 *||Feb 21, 1997||Aug 28, 1997||Cullen Egan Dell Limited||Strategic management system|
|WO2003005202A1 *||Jul 8, 2002||Jan 16, 2003||Computer Ass Think Inc||Method and system for providing a virtual user interface|
|U.S. Classification||702/186, 714/54, 714/E11.194, 703/26|
|Jun 8, 1992||AS||Assignment|
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, A COR
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNORS:AMALFITANO, EUGENIE A.;MC KNIGHT, GREGORY J.;REEL/FRAME:006171/0007
Effective date: 19920529
|Apr 12, 1998||LAPS||Lapse for failure to pay maintenance fees|
|Sep 15, 1998||FP||Expired due to failure to pay maintenance fee|
Effective date: 19980412