Knowledge-based modeling approach for performance measurement of parallel systems

Parallel systems are important computing platforms because they offer tremendous potential to solve inherently parallel and computation intensive applications. Performance is always a key consideration in determining the success of such systems. Evaluating and analyzing parallel system is difficult due to the complex interaction between application characteristics and architectural features. Traditional performance methodologies like experimental measurement, theoretical/analytical modeling and simulation naturally apply to the performance evaluation of parallel systems. Experimental measurement uses real or synthetic workloads, usually known as benchmarks, to evaluate and analyze their performance on actual hardware. Theoretical/analytical models try to abstract details of a parallel system. Simulation and other performance monitoring/visualization tools are extremely popular because they can capture the dynamic nature of the interaction between applications and architectures. Each of them has several types. For example, experimental measurement has software, hardware, and hybrid. Theoretical/analytical modeling has queueing network, petri net, etc. and simulation has discrete event, trace/execution driven, Monte Carlo. All of them have their own advantages and disadvantages. The first part of this paper will concentrate on identifying parameters for carrying out a comparative survey on these techniques and second part will justify the need for some kind of modelling approach which combines the advantages of all the three performance evaluation techniques and lastly paper will be focusing on an integrated model combining all the three techniques and using knowledge-based systems to evaluate the performance of parallel systems. This paper also discusses certain issues like selecting an appropriate metric for evaluating parallel systems; need to select proper workload and workload characterization.