Buy custom Multiprocessing essay
Multiprocessing refers to process by which a single computer has two or more central processing units to execute tasks allocated to it at the same time. This paper seeks to explore the issue of multiprocessing. The main focus is on two types of multiprocessors including the MSMP and the SMP. The differences and similarities of these two processors are compared and contrasted. Further, hyper threading is as well explored. Hyper threading refers to execution of two or more threads at the same time (Bulpin, 2005). The possibility of either of the processors working with the hyper threading is as well of keen interest. The paper eventually reaches a conclusion by determining the suitability of different applications that support either of the processors.
In Symmetrical Multiprocessing a multiprocessor computer with two or more similar processors share one main memory. The processors also are able to fully access all the input and output devices. Mostly the processors are driven by a single operating system and all the processors are in turn treated equally without any preference of any over others (Gephardt 1996). Master slave processor is an asymmetric processor that has a single processing unit with additional slave processors of which is managed by a primary master processor. In master slave multi-processing the program tasks or threads are strictly divided by type between processors and typically, each processor has its own memory address space. These features make these multiprocessing difficult implement.
In terms of memory accessibility, the symmetrical multiprocessors share a common main memory under one operating system. Normally each of the processors has cache memories that help speed up data accessibility and reduce system traffic jam. Usually, the two processors share the memory device over one unifying high speed bus and are typically connected to each and every peripheral device through a high speed bus interface. For instance, if one processor does not function, the others may still function. A reboot is of the essence as a matter of fact the makeup of an SMP configuration has every other component shared, including memory. Usually, if a processor fails then it will by high chance leave the memory in a very unpredictable state, which could cause more havoc for the remaining central processing units (Gephardt et al, 1996). The master slave multiprocessor also shares a common main memory under one operating system though the master side executes its instructions on the larger segment of memory and the slave does.
Input output Resource Access
In symmetrical multiprocessors, the processors are able to get full access of the input output devices. It is also through a comon input output interface that the processors share peripheral devices through an interface bus. Each and every central processing unit has equal access to resources. Each central processing unit plans it own work, within the requisite parameters, constraints, and priorities set by the operating system. In master slave multiprocessing, the operating system mostly runs on a single fixed CPU. As a result, this necessitates all the operating systems tables, queues, buffers present to be manipulated on a single central processing unit. The user applications, however, run on the other central processing units. All system calls are passed to the first central processing unit for processing purposes. In the master slave processors, if the processors are different in relatively small ways as their input-output interfaces, then there is no requirement for modification of the peripheral software. However, if the processors are more fundamentally different, recompilation and re-linking could be required, as might some modification of source code in situations such as different word lengths or different endless. The RTOS service calls do not really need any changes. For example, a control algorithm that had earlier been written to work on a DSP could dynamically be loaded and activated on a higher-level control processor and instead run there , also given that the DSP’s signal processing strength is likely to be extremely weighty at times.
Instruction Execution Throughput
In Symmetrical multiprocessors, every instruction is executed on a different set of data by separate processors. In Master multiprocessors, the executions of tasks are carried out on the based on the stipulated time of execution. The processes that have high expected time of execution are always chosen to be executed by the slave processor while those with low execution time as expected are done by the master processor (Haghighi et al 2002). Usually, the slave processor keep the record of the time spent in execution for every given time a segment of the process is successfully done then the process has to go back to the master. On the other hand, the master utilizes the recorded time to foresee the most likely average time to execute any other upcoming segment that occurs within the very process.
The relationship between the symmetric and asymmetric multi processors is the master slave relationship. Each of the central processing unit in the symmetric multi-processing runs similar copy of the operating system while in asymmetric multi-processing; they split responsibilities making each specialize in different software and roles.
It refers to execution of two or more threads simultaneously. Hyper threading is possible in the Symmetrical Multi processors. The solle aim of hyper threading is to decrease the number of command on the chain. Hyper threading is possible with the Symmetrical multi processors; this is because the logical processors appear separately as standard processors (Bulpin, 2005). There is also a possibility of optimizing the behavior of the operating system on multi-processor hyper threading systems.
Furthermore, SMP supported applications employ the use of hyper threading. This, in turn, confirms the ability of SMP integration with the hyper threading. Some of these applications include the 3D rendering programs, the heavy duty audio or video Trans coding applications, and scientific applications built for maximum multi-threaded performance (Haghighi et al 2002). Performance boost is also enjoyed when encoding audio files in iTunes, playing 3D games and zipping or unzipping folders. The boost in performance can be up to 30 per cent, although there will also be situations where hyper threading provides no boost at all. On the other hand, master slave multiprocessing does not easily integrate with hyper threading virtually because; reliability is no higher than for a single processor system because if master processor fails, entire system fails. The master slave multi-processor can as well lead to poor use of resources because if a slave processor becomes free while the master is busy, slave must wait until the master assigns more work to it. There is also an increase in number of interrupts because all slaves must interrupt master every time they need OS intervention. With such attributes, it is clear that the master slave multi-processor is not supported by hyper threading (Bulpin, 2005).
Applications MSMP is best suited for
Master Slave multiprocessors architecture is used in the replication of database. When carrying out duplication or rather copying of compact disks, such systems employ the use of Master Slave multiprocessors. There are quite a number of specialized computing applications for which the master slave multi processors architecture is particularly well suited. These applications bore characters such as the need for a master control program, strong support by repetitive or continuous, computation and data-intensive, time critical tasks.
Applications SMP is best suited for
SMP is used in multithreaded parallel applications. This is mainly because there has always been the need to reuse instructions that remain in the processor’s cache from a previous dispatch of the thread (Haghighi et al 2002). SMP can be applied and used in servers systems as well as Time sharing systems. This is because these systems often run several processes in parallel and simultaneously. MP can also be used in personal computers that have modified applications.
Buy custom Multiprocessing essay