- Terminal Server Stress Test Tool Test
- Terminal Server Stress Test Tool Kit
- Server Stress Tester
- Server Stress Test
Method and system for simulating multiple concurrent clients on a network server to stress test the server. Each of one or more processors has one executable software thread, the send data thread. Download Server Benchmark for free. Server benchmark and burn in software. Server Benchmark s.b allows server engineers and administrators to quickly complete the 'burn in' phase of your server and VDI provisioning process. The software also allows users to benchmark processing and memory utilization by dynamically adding threads and building arrays to test memory capacity.
In the situation involving networks where numerous client terminals are connected to a test server, it is desirable to obtain information as to the actual execution times for accessing programs, and also for example, accessing information about the time required for executing different parts of available programs.
Thus, a performance and measurement system for defining and measuring user-relevant response times to remote client stations which are serviced by a terminal server, is of great importance to evaluate the status of a network of users and terminal servers.
Performance data produced by the interaction of the client-users and the terminal server is collected and subsequently logged. Once the data is logged, the data may then be accessed and collected by an Administrator in order to evaluate the system responses involved in the network.
Performance tools are used to measure the performance of the test server in regard to its availability of servicing the various and multiple clients. A resultant state of the system may be accomplished in order to evaluate the total resource utilization of the system. Such a determination may eventually discover which resources cause slowdowns or bottlenecks in system performance, and once identified, these resources can be upgraded to improve system performance.
Another useful purpose for evaluating computer performance may be for what is called “application tuning” in order to focus on particular user applications or situations in order to determine how to improve system performance regarding a particular application.
Terminal Server Stress Test Tool Test
Another use for performance tools is for the purpose of troubleshooting and to help determine why system performance may be degrading without any immediately apparent reason.
In many situations, so-called performance tools have generated too much information making it difficult for an operator-user to fully comprehend the nature of what is happening. If a system gathers and logs huge amounts of information, this requires large memory sources for data logging and is often very difficult to analyze, in addition to taking a lot of processing power to generate this information and then to try to present this data into a form that is useful to a user.
It is always a problem to identify when the performance of a system has been degraded beyond acceptable limitations. Many of the earlier attempts for such analysis provided only indirect information regarding the end-user's performance expectations in addition to requiring extraordinary administration and management efforts in the system to develop the required information. Many of the earlier systems were influenced by the test environment characteristics and did not provide feedback for the actual client sessions under test. As a result, this necessitated the opening of additional terminal server connections which were administratively time-consuming and caused significant additional CPU overhead.
The presently described system and method will be seen to measure and collect the response times for any variety of designated actions initiated by terminal server scripts. The method will be seen to call a timer utility before and after each designated action, such as logging on, opening applications, and typing of characters.
Then, by noting the response times involved during a sequence of different operating conditions (small number of concurrent client-users over to a large number of concurrent client-users) it is then possible to determine what are the acceptable and non-acceptable operating limits for the entire system.
In a system where multiple client-users are connected via hubs and switches to a back-end server, there is provided a method whereby a program is provided to measure, collect, and analyze the response times for any variety of designated actions initiated by terminal server scripts, and whereby the calling of a timer utility, before and after designated actions, will provide information on the resulting response times.
Because the timing components are added to existing client scripts, rather than adding new scripts, the timing components are minimally intrusive to the load on the server under test. The timing component provides data for all the sessions involved in any given test and the timer is integrated into sessions that are already part of the test environment.
Actions can be designated for measurement such that the resulting data can be analyzed and is directly relevant to the end-user's real world performance expectations. The resulting data is minimally influenced by any test environment characteristics. To achieve this, the administrator modifies existing scripts by adding commands that execute strictly on the Remote Client PC.
The accumulated response times are saved to the Client PC-User terminals.
ACTION LABEL: An action label is a descriptive name that an administrator assigns to an action that he/she has decided to measure using the Terminal Server Simulated Client Performance Measurement Tool. On Table III of co-pending U.S. Ser. No. 09/661,101, there are six action labels for discreet actions that were designated within the TS Scripts for measurement. These action labels are: Connect, Excel, Outlook, Cmd Prompt, Explorer, and word.
BACK END SERVERS: Servers that form the infrastructure for the test environment. Various applications and user functionality is supported by these servers with the intent of modeling a real world environment. These include the Internet Information Server (IIS), the Primary Domain Controller (PDC), the Exchange Server, and File and Printer Server, plus a Monitor, Control and Test Server.
CLIENT SCRIPT: A looping list keyboard input that is fed from the TS (Terminal Server) Client Software to the Test Server in order to mimic real user input. The script sends the appropriate keyboard sequence to log into a Windows session, to open Excel, Outlook, Internet Explorer, Word, and perform common real world actions within each application (i.e., creating graphs, printing, sending email, browsing web pages). StartTimer and StopTimer calls before and after designated activities are inserted into these scripts.
CONTROL: Control Server station (CONTROL) controls the creation, distribution, and execution of the scripts. It also manages the remote Client PCs as they execute the scripts, and timer functions.
EXCHANGE: A server that hosts and allows email services.
GRAPHICAL UPDATE: When a user/or simulated user delivers some form of input (pressing the letter “k” on the keyboard) to a Terminal Server Client Session, the “k” input is first sent to the Terminal Server over the network. The Terminal Server decides what should happen when this “k” is input. If this “k” input changes what should be displayed on the screen of the Terminal Server Client Session, then the Terminal Server sends that graphical update over the network to the Client Session. If a text editor such as Microsoft Word was open when the “k” was submitted then the corresponding graphical update would add the letter “k” to the appropriate location on the Terminal Server Client window.
IIS: Internet Information Server. Hosts the internet sites that are browsed in the course of the Client Script loop.
LOG FILE: Synonymous with Timer Log File.
MONITOR: The monitor server station (MONITOR) captures all the Performance Monitor data from the test server, and stores the associated logs. This monitoring is done remotely in order to minimize the performance impact on the server under test.
PDC: Primary Domain Controller. This is the system that authenticates user logons for the entire testing domain including the TS Clients who attempt to gain access to the test server.
REMOTE CLIENT PC: A variety of desktop PCs can be used as a remote Client PC. This remote system runs the terminal server client (TS Client). These systems host the client component of the TS connection, the SM Client, and the log files.
SM CLIENT: (Simulated Client) The application which takes a client script and feeds it to the TS (Terminal Server) Client. This process occurs strictly on the remote client PC and therefore does not contribute to the load/stress on the test server.
TERMINAL SERVER CLIENT: A Terminal Server Client is an application that runs on a remote client PC. It receives desktop graphics from the test server and sends user initiated mouse movements and keyboard strokes to the test server.
TERMINAL SERVER EDITION: A special version of NT4 Microsoft Operating system that incorporates a multi-user kernel and allows numerous simultaneous client sessions. The Windows 2000 equivalent does not require a special edition of the operating system, but instead requires an additional “Terminal Services” component to be installed.
TERMINAL SERVICES: Although the process is virtually transparent to the user, terminal services gives remote users the capability to run the Windows desktop and applications from a central server. A small application, Terminal Server Client, is installed on the Remote Client PC. The Terminal Server Client sends mouse movements and keystrokes and receives the corresponding graphical updates from a central test server.
TEST SERVER: This server is the focus of the testing environment. It runs the Terminal Services enabling operating system (NT4 Server Terminal Server Edition, or Windows 2000 Server with Terminal Services component enabled). The test server receives mouse movements and keyboard input over the network sent from the TS (Terminal Server) Clients which are executing on the remote Client PC. The test server hosts the client desktops and applications, sending the resulting graphical updates to the TS Client. The test server is commonly referred to as a central server because it “centralizes” the execution of Windows desktops and applications similar to the way a mainframe works.
TIMER: A unit providing clock time in milliseconds with a resolution equal to the machine cycle speed.
TIMER DYNAMIC LIBRARY: A dynamic linked library piece of the WTS Timer Utility containing multiple programmatic procedures that can be called/initiated from another file. The Client Scripts are modified with calls to this library.
TIMER LIBRARY: Synonymous with Timer Dynamic Library.
TIMER LOG FILE: A file created during the execution of a timer modified Client script. This file details the results of the timing actions, with the name of the action measured, the time in milliseconds the action took to execute, and the time/date of the entry to the log file.
USER ID: Each TS (Terminal Server) Client has a unique identifier.
As seen in
The Terminal Server client software in
As will be seen in
It is important to know the performance and load capabilities for the Terminal Services Operating System, which is installed on test servers, shown as item
The test server
In
The control station in
Now, additionally connected to the 100 megabit switch
BENCHMARK PROCEDURES: Experimental operations indicated that “simulated” Office 2000 user scripts would take approximately thirty minutes to loop through Outlook, Word, Access, Excel, and Internet Explorer 5 at a typing speed of forty-eight words per minute. These scripts are designed to match the typical work patterns of real-world users. Tests were made to stress the server under test
The number of concurrent clients was gradually increased while the scripts were cycled through the various applications. Thus multiple test runs were conducted and additional sets of Performance Monitor (PERFMON) log files were produced to verify reproducibility.
BENCHMARK MEASUREMENTS: Using the Microsoft Performance Monitor, performance counters were collected on all the available objects and counters. The counters for Processor Usage, Active Sessions, and Processor Queue Length are activated and a recording is made for percent of total processor usage for each period related to the number of active session Client-users. The performance data thus reflects the stress on the server
To evaluate end-user performance, timer components are inserted into the test scripts before and after a designated action. For example, timed actions can include (i) log-on time “Connect”; (ii) time to open applications and (iii) character delay while typing.
DEFINING OPTIMAL PERFORMANCE: Optimal performance is the point at which a server is loaded with the maximum number of clients possible without user performance degrading beyond a predetermined limitation. During testing, timer logs are created to measure the delays for completing certain actions from the user's point of view. Ideally, the limitations on delays are determined with the intent of providing a transparent solution to the user, that is to say so that the user could not distinguish that the applications are running on a centralized server, such as server
Table I below is a table showing one possible configuration for a test server undergoing tests. (this is just one possible server configuration) (Test Server
TABLE I | |||||
Table I Server Test Configuration | |||||
System | Processor | Cache | Memory | Disk | Network |
Col. 1 | Col. 2 | Col. 3 | Col. 4 | Col. 5 | Col. 6 |
ES2045 | Four Intel | L2 Cache: | 2 GB | External | One Network |
Xeon | 2 MB per | Memory | disk array | Interface Card | |
processors | processor | with 100 MB | |||
at 550 | access | ||||
Mhz |
The first column shows the system designation while the second column shows the processors involved as four Intel XEON processors. Column 3 indicates the cache as a L2 Cache, having two megabytes per processor. Column 4 shows the memory utilized as being 2 gigabytes of memory. Column 5 shows the disk as being an external disk array, while column 6 shows the network as involving one network interface card with one hundred megabytes of access.
In order to determine the optimal performance of a terminal server solution, it is required that Test Server
The Office 2000 user simulation script was developed for measuring the performance of Office 2000 in a Terminal Server environment. By modifying the scripts to time record the desired actions, the Terminal Server Client Measurement Tool measures and saves data regarding the delays involved in executing these actions.
Likewise, another Personal Computer designated as another typical Client PC-Y is another typical PC residing in the overall farm of 120 PCs. This client is designated
As will be further seen in
Connected from the Client-PC
Likewise, in the other typical Client PC-Y, designated
A flowchart for the simulated client execution operations is shown in FIG.
At step A
Then, at step A
At step A
Step A
At step A
As the commands are fed from the Simulated Client to Terminal Server Client, the TS Client (
Simultaneously at step A
After the graphical update has been completed, there is initiated at Step A
At step A
The script commands will continue to be read until an “End Test” command is encountered and the program will exit at step A
Now referring to
At step B
Then continuing on with
As was indicated in
In the present enhanced performance tool, it is now possible to view the test server
Thus, the present system captures log-on time, time to access an application and other specific details regarding each client-user that was previously not available in such graphs as that shown in FIG.
The timer Log information in the present application can be printed out and also displayed in graphical format as is illustrated in the co-pending application, U.S. Ser. No. 09/661,101 entitled “Terminal Server Data File Extraction and Analysis Application”. The Y axis or ordinate of
Observation of
The graph line shown as R—R is an illustration of the percentage of total processor utilization that is occurring at each quantity of concurrent users. Thus, for example, when there are 112 Users, then it will be seen that the percentage utilization is 40%. Likewise, when there are 136 Users, then the percentage utilization is approximately 50%. The vertical markings on the graph R—R show that a reading has occurred at 15 second intervals, thus a period of 15 seconds has transpired through each of the vertical markers. This interval period of course, can be either increased or decreased, as necessary.
Thus, by observing this graph of
In the presently described enhanced performance tool, upon the completion of a test run, an Administrator can peruse the timer logs to determine the point at which the Test Server
The method for performance test monitoring and analysis is seen to basically involve a series of steps which were shown in the attached drawings of
Thus there has been shown the process of measuring response times for a variety of actions on a multiple number and expanding numbers of simulated clients. This process is designed to occur for each simulated client that connects to a Terminal Server using a test script modified with the Timer component functions.
Described herein has been a performance measuring method for enabling one to observe the overall operation of a terminal server solution which services multiple Client-Users. A simulated script is run on each Client-User and overall observations are made as to response time during different periods of operating conditions with variable numbers of concurrent Client-Users. From this observation, a designer or Administrator can configure the solution so that the system will only operate during optimal conditions and will not degrade into a non-allowable or non-acceptable operating situation.
While other embodiments of such performance methods may be implemented, the invention will be seen to be defined by the attached claims.
If you’re having problems with your computer and it isn’t behaving correctly in certain situations, then it could be a cause for concern. One of these situations could be when you are performing resource intensive tasks and the system becomes unstable or crashes while being put under stress. This could be a problem such as the CPU overheating and shutting itself down, or even the graphics card running into similar trouble. Or maybe the power supply simply cannot cope anymore with all hardware components running at full intensity…
Whether you’re someone who wants to test their PC components because they suspect a possible fault, or have bought / built your own PC and want to make sure it runs stably and reliably at maximum load, you need a program to be able to put the system under the desired levels of stress for periods of time to monitor the situation. Here are 10 tools (9 of them free) to do just that and put your system under huge amounts of stress to check for faults or problems.
1. HeavyLoadHeavyLoad is a utility that aims to stress the main component areas of a PC, namely processor, memory, hard drive and graphics. It can also run these tests individually or altogether which is obviously the time maximum stress will be placed of the system hardware and also the power supply. The Disk space and Free memory tests are not really there to put undue stress on those components, but rather continually writes a large file to the drive and allocates / deallocates memory to the system simulating heavy load when all major components are utilized.
There is an option though to add more stress to the hard drive by using Jam software’s other popular included tool Treesize Free to simulate more heavy disc access. HeavyLoad is available as portable and installer versions and is a very useful overall system stability tester to keep in the USB toolkit. Works on Windows XP to Windows 8 32-bit and 64-bit.
Download HeavyLoad
2. FurMark
Furmark is a stability and stress testing tool designed especially for graphics cards and runs a very intensive “Fur” rendering algorithm which is very good at pushing the GPU to its absolute limits. There are a few settings that can be changed such as resolution, full screen mode and anti aliasing, and a few presets are available such as running in the HD resolutions of 720 / 1080, or running a burn-in test for 15 minutes. The benchmark’s default run time and an alarm for the maximum allowable temperature for the graphics card is found via the Settings window.
Benchmark scores can be compared or viewed online. FurMark is compatible with Windows XP and above.
Download FurMark
3. StressMyPC
This is a simple, tiny and portable utility of around 20KB that can run a stability test on your single, multi core or multi threaded processor. In addition it can also perform a couple of other tests such as a simple GPU graphics test and also one for the hard drive. The “Paint-Stress” GPU test is enabled by default and the “HD-test” and a more aggressive CPU test which will push your processor towards 100% (the standard test used about 60% of a dual core CPU during testing) can be enabled by the buttons at the top of the window. StressMyPC works on all versions of Windows 2000 and above, including 64-bit.
Download StressMyPC
4. System Stability Tester
System Stability Tester works by simply using the well known and famous method of telling the computer to calculate the value of Pi up to 128 million digits. This will completely consume your processor for as long as the test runs and can also be used as a basic benchmarking tool to see how long it takes your CPU to calculate the specified number of digits. The range can be between 128 thousand up to 128 million and can be run continuously up to 50 times using up to 32 threads. There are 2 methods to choose from, Borwein and Gauss-Legendre which is also used by the classic SuperPi tool.
Works on Windows XP and above, portable and installer versions are available.
Download System Stability Tester
5. IntelBurnTest
Despite the name, IntelBurnTest actually works fine for testing on AMD processors as well, and is called as such because it makes use of the Intel Linpack libraries which Intel themselves use to stress test CPU’s. Usage is easy and all you have to do is set the number of times to run the test, the number of threads to use and the test stress level. This can be Standard, High, Very High or Maximum and if your available RAM is less than what the test requires, choose Custom and set the amount of memory to use accordingly.
The program is portable and runs on Windows XP and above.
Download IntelBurnTest
12Next › View All You might also like:
11 Tools to Find out Information About Your Computer’s Hardware5 Free Tools to Check and Test USB Flash Drives6 Free Programs to Check Your Video Card Memory For Errors8 Free Tools to Test Read and Write Speed of USB Flash Drives2 Ways to Test and Determine If Your BitTorrent Speed is Limited or Throttled 15 Comments - Write a Comment
A nice collection of stress tests, but I am currently searching for DOS-based software. Will keep looking, but perhaps you could add something in this vein the next time you update the article?
ReplyBurninTest software is good for testing, but unfortunately it’s not free
Replyany commandline tools, i need them in my automation
Reply3d mark is good for higher end graphics cards
ReplyAida64 is also good program. It is almost head-to-head with BurnIn Test made by PassMark
ReplyI generally run Orthos and MemTest. For the hard disk, when I get a new one, I copy tons of files big and small to it and then try using these files. Last drive showed problems immediately after this.
I also always do a Nero Recode and x264 encodes since these are heavy CPU programs.
ReplyUseful tool and have noted contributors very helpful warnings.
ReplyLooks like a decent benchmarking software. Thanks Ray!
ReplyMy suggestion regarding this type of program:
Run it well BEFORE your warranty expires. Make sure you didn’t get a system with faulty components. Don’t experiment on an older system (with gigs of files & programs at risk). If something is “marginal”, these programs WILL find them – often destructively!
Second this – it is actually possible for stress testing software to fry your PC. E.g. normal use of a video card will not come close to the temperature and power consumption of running a 100% stress test like FurMark, and this could cause an otherwise working component to fail. It does mean the component is running out of spec, so it could even be recommended to run this just before your warranty expires, but not after.
ReplyAn example of how testing software can be destructive if it does not change or write anything new or over existing files, code or registry? If a tool writes its own fix without showing you changes before they happen then don’t use it.
Terminal Server Stress Test Tool Kit
ReplyThanks again for a useful tool Raymond
ReplyThank you Raymond.
Nice tool.
ReplyA very good and large hardware store here uses Everest for stability testing
ReplyThanks for the info Raymond!