Fundamental Computing Resources

A sound understanding of these is essential in designing a software solution. A solution which uses available resources judiciously and efficiently. A solution which can scale to millions of users and yet consume only what is absolutely required - a true CLOUD COMPUTING solution.

 

  • CPU
  • Memory
  • Network
  • Storage

 

A Measure of System Performance

System, in this case Cloud Solution, performance is a general term. It means, how the system (hardware, software or both) is doing under specified conditions. Or how best can the system perform under real load conditions. An appropriate measure for performance should be chosen based on the most valuable aspect given any situation. There isn’t a single common parameter that fits all situations.

One of the most commonly used parameters for measuring performance is the number of transactions the system performs in one second or, ‘transactions/sec’. This simply counts the number of operations a system can do in one second. This parameter is all right if it is required that the system deliver maximum number of transactions.

Another frequently used parameter is – how long does a specified operation take to complete. This is the opposite of the previous parameter. Here the interest is in the average time (say in milliseconds) taken to complete a single transaction. This may be of interest if one wants a measure of how FAST the system serves users.

There are other performance parameters as well. For example, how efficient the code is (especially, code which does computation). Looking at the number of cpu cycles spent in doing transactions every second or, ‘transactions/sec/cpu’ gives an idea of code efficiency. Efficient code will deliver greater transactions per second while using less cpu.

If the interest is in the measure of raw data performance – written or read from the disk then the appropriate parameter is the number of blocks written/read form the disk. If one is studying the performance of data-base then one may want to look at how many SQL operations (or scripts) are executed per second.

The measure of performance should capture the quality that is being sought in the system. The performance numbers or claims may prove misleading simply because one is not using the correct measure of performance. It is thus very important to choose the correct measure of system performance.