Free Essay

Multiprocessing

In: Computers and Technology

Submitted By shaynalyn1
Words 916
Pages 4
Assignment 2: Multiprocessing

MSMP and SMP Master-slave multiprocessing, or MSMP, is when one CPU (the master) controls the system, all resources and scheduling. Only this master can execute the operating system. The other CPU’s are slaves that perform all of the work assigned by the master (Englander, 2009). This configuration is not widely used anymore. Conversely, Symmetrical multiprocessing, or SMP, is where each CPU has the same access to the operating system, all resources, and memory. In this set-up, each CPU is identical (Englander, 2009). In a master-slave configuration, the master holds the memory and is the one who allocates the needed memory to the other CPU’s. The problem with this is that the master CPU becomes bottlenecked. A solution of this could be to enable direct access memory (DMA). DMA is an operation in which data is copied from one resource to another resource in a computer system without the involvement of the CPU (TechTerms, 2013). An example would be data being sent directly from an attached device, like a flash drive, directly to the memory. The microprocessor does not have to do anything, and therefore speeds up the overall computer operation.
In SMP configuration, memory access could present a problem. All the memory access is posted to the same memory bus. If there are only a handful of CPU’s, this is fine. However, when there are larger numbers of CPU’s competing for access (anything over about 12), this could bottleneck and present a real problem. The solution to this is NUMA, which stands for Non-Uniform Memory Access. NUMA alleviates the bottlenecks by limiting the number of CPU’s on one memory bus. The CPU’s are set up into smaller systems called nodes. Each node has its own processors and memory, and is connected to the larger system through a high speed interconnector (Microsoft, 2013).
Regarding inputs and outputs (I/O), CPU’s in a symmetrical multiprocessing configuration have full access to all I/O devices. In the master-slave configuration, the master CPU will allow which CPU’s can have access to I/O devices, and when they can perform I/O operations.
Regarding instruction execution, the master-slave configuration has a master cache, two smaller direct mapped slave caches, and a slave instruction cache for supplying and executing instructions. In SMP, instructions sets are included on additional registers.
Hyperthreading
When work is assigned from among the available programs to be executed, the independent segments of those programs are called threads. Hyperthreading is when a CPU performs a parallel execution of two or more threads simultaneously, also referred to as simultaneous thread multiprocessing (STM) (Englander, 2009). Hyperthreading would not be able to be used in a master-slave configuration. This is because each slave has to wait until the master is free to get a new work assignment, and cannot be assigned more than one assignment. Conversely, hyperthreading is managed in a way that it very similar to symmetrical multiprocessing. Since there is not a dedicated processor for master tasks, and each CPU is independent, hyperthreading (STM) and SMP can be used together. The operating system in a SMP can schedule two processes at the same time, each on a different CPU. Therefore, less time is spent waiting as in the MSMP and more time working efficiently and executing the processes (Lui & Schmider, 2011). The best benefit of hyperthreading is that it allows the scheduling maximum flexibility to fill execution slots, thereby making the most efficient use of available resources. The system that uses hyperthreading uses a fraction of the resources and therefore limits the amount of resource waste (Stokes, 2002).
Applications
Even though the master-slave configuration is not the most widely used anymore, there are still some application for which MSMP is still best suited for. Some of these include: game controllers, finance applications, biology and physics applications. This is because reactions and responses are made to every event that occurs. Any application that is based on simulation and modeling would be best suited for the master-slave configuration. Symmetric multiprocessing configurations are used in a wide variety, and is the most commonly used. The most widely used is mobile technology. The Android devices are built around SMP technology, with multiple CPU’s that do different things. For example, the newest smartphones are Quad Core. One CPU may be used to run applications, while others are used to run various hardware. The programs running cannot use the main memory to communicate with each other (Android, 2013). Some of the benefits that users partake of with SMD on the mobile devices include: * Faster web page load times; * Lower power consumption and higher performance per watt; * Higher quality game play experience; * Highly responsive; * Faster multitasking.

References
Android (2013). SMP primer for Android. Retrieved from http://developer.android.com/training/articles/smp.html.
Englander, I. (2009). The Architecture of computer hardware, systems software & networking. John Wiley & Sons: Hoboken, NJ.
Lui, G. & Schmider, H. (2011). The double-layer master-slave model: A hybrid approach to parallel programming for multicore clusters. High Performance Computing Virtual Laboratory, Queen’s University. Retrieved from http://www.hpcvl.org/sites/default/files/dmsm/DMSMmanual.pdf.
Microsoft (2013). NUMA support. Retrieved from http://msdn.microsoft.com/en-us/library/windows/desktop/aa363804%28v=vs.85%29.aspx.
Stokes, J. (2002). Introduction to multithreading, superthreading, and hyperthreading. ArsTechnica. Retrieved from http://arstechnica.com/features/2002/10/hyperthreading/1/.
TechTerms (2013). DMA. Retrieved from http://www.techterms.com/definition/dma.

Similar Documents

Premium Essay

1. (2 Points) Compare the Processors’ Access to Printers and Others I/O Devices for the Master/Slave and the Symmetric Multiprocessing Configurations. Give a Real-Life Example Where the Master/Slave Configuration Might

...1. (2 points) Compare the processors’ access to printers and others I/O devices for the master/slave and the symmetric multiprocessing configurations. Give a real-life example where the master/slave configuration might be preferred. 2. (2 points) Describe the programmer’s role when implementing implicit parallelism. 3. (2 points) Give an example from real life of busy waiting 4. (2 points) Describe the purpose of a buffer and give an example from your own experience where its use clearly benefits system response. 5. (2 points) Compare and contrast the critical region and working set. 1. The master/slave multiprocessing configuration the slave processors access the main memory directly but the master processor speak to the printer and other I/O , whereas the symmetric configuration use homogeneous processors which all communicate with the main memory and the printer and other I/O devices in a synchronized manner 2. Implicit parallelism is the automatic detection by the compiler of instructions that can be performed in parallel is called. Creating knowing when to implement the algorithm for the complier is the role of the programmer 3. Busy waiting: a method by which processes, waiting for an event to occur, continuously test to see if the condition has changed and remain in unproductive, resource consuming wait loops. Real life example would be cars waiting at a stop light waiting for light to turn......

Words: 330 - Pages: 2

Free Essay

Computer

...pare the processors’ access to printers and other I/O devices for the master/slave and the symmetric multiprocessing configurations. Give a real-life example where the master/slave configuration might be preferred. 2. Compare the processors’ access to main memory for the loosely coupled configuration and the symmetric multiprocessing configurations. Give a real-life example where the symmetric configuration might be preferred. 3. Describe the programmer’s role when implementing explicit parallelism. 4. Describe the programmer’s role when implementing implicit parallelism. 5. What steps does a well-designed multiprocessing system follow when it detects that a processor is failing? What is the central goal of most multiprocessing systems? 6. Give an example from real life of busy waiting. 7. In the last chapter, we discussed deadlocks. Describe in your own words why mutual exclusion is necessary for multiprogramming systems. 8. Compare and contrast multiprocessing and concurrent processing. Describe the role of process synchronization for both systems. 9. Describe the purpose of a buffer and give an example from your own experience where its use clearly benefits system response. 10. Consider this formula: G = (A + C2) * (E1)3 / D + B a. Show the order that a processor would follow to calculate G. To do so, break down the equation into the correct order of operations with one calculation per step. Show the formula for each step. b. Find the value of G: if...

Words: 324 - Pages: 2

Free Essay

Computer Science

...Exercises 1. Compare the processors’ access to printers and other I/O devices for the master/slave and the symmetric multiprocessing configurations. Give a real-life example where the master/slave configuration might be preferred. 2. Compare the processors’ access to main memory for the loosely coupled configuration and the symmetric multiprocessing configurations. Give a real-life example where the symmetric configuration might be preferred. 3. Describe the programmer’s role when implementing explicit parallelism. 4. Describe the programmer’s role when implementing implicit parallelism. 5. What steps does a well-designed multiprocessing system follow when it detects that a processor is failing? What is the central goal of most multiprocessing systems? 6. Give an example from real life of busy waiting. 7. In the last chapter, we discussed deadlocks. Describe in your own words why mutual exclusion is necessary for multiprogramming systems. 8. Compare and contrast multiprocessing and concurrent processing. Describe the role of process synchronization for both systems. 9. Describe the purpose of a buffer and give an example from your own experience where its use clearly benefits system response. 10. Consider this formula: G = (A + C2) * (E1)3 / D + B a. Show the order that a processor would follow to calculate G. To do so, break down the equation into the correct order of operations with one calculation per step. Show the formula for each step. b. Find......

Words: 557 - Pages: 3

Premium Essay

Linux

...1. What is free software? List three characteristics of free software. 1- Distribution 2- Development 3- Collaboration. 2. Why is Linux popular? Why is it popular in academia? Because of it portability and it is free as Free Expression easy to manipulate and transport. Because of its portability and easy to manipulate. 3. What are multiuser systems? Why are they successful? Multi-user are the several individual user that can access one system that being physical machine or VM. They are popular because it help to centralize resources and energies and minimize security concerns. 4. What is the Free Software Foundation/GNU? What is Linux? Which parts of the Linux operating system did each provide? Who else has helped build and refine this operating system? The Free Software Foundation (www.fsf.org) is the principal organizational sponsor of the GNU Project. GNU developed many of the tools, including the C compiler, that are part of the NU/Linux Operating System. Linux is the name of an operating system kernel developed by Linus Torvalds and expanded and improved by thousands of people on the Internet. Torvalds’s kernel and GNU’s tools work Together as the GNU/Linux Operating System. 5. In which language is Linux written? What does the language have to do with the success of Linux? Linux was written in C language. C can be used to write machine-independent programs. A programmer who designs a program to be portable can easily......

Words: 699 - Pages: 3

Free Essay

Video Summary

...the internal cache. An ALU is responsible for complex calculations. Communication between the controller and the ALUs uses a 32-bit internal bus. The bus system that supports the communication between the cache and the ALUs controller is the backside bus. The CPU speed is measured in GHz. There are several ways of measuring speed. The speeds differ inside and outside the processor. System bus speed is measure in MHz . The system bus speed is the actual factor that will control the speed of your computer. The ratio between processor and system bus is known as the multiplier. In older setting you may have to configure the multiplier in the CMOS setting. Multiprocessing is the ability to perform multiple functions simultaneously. True Multiprocessing requires multiple processors. Dual Core processors is another way of multiprocessing. Cache uses SRAM while the rest of the system uses DRAM. Three types of cache is L1 cache,L2 cache, and L3 cache. Two most common sockets are LGA 775 (Intel) and Socket 754 (AMD). ZIF (Zero Insertion Force) is a lever used to lock CPU into socket without damaging it. Check system temperature in CMOS setting. Use a thermal compound, a heat sink, or a CPU fan to control...

Words: 317 - Pages: 2

Premium Essay

Chapter 1

...that is frequently related to the operating system. 7. What is a shell? How does it work with the kernel? With the user? A shell is a type of command prompt, it sends commands from the user to the kernel 8. How can you use utility programs and a shell to create your own applications? You can write a shell script, also called a shell program. Make the file executable and give the name of the file as a command. The shell then executes the commands in the file as though you had typed each command individually. 9. Why is the Linux file system referred to as hierarchical? Because the file system formats files in the shape of trees 10. What is the difference between a multiprocessor and a multiprocessing system? Multiprocessor refers to a system with two or more processors or CPUs. Multiprocessing refers to a system that can process one or more tasks at a time...

Words: 406 - Pages: 2

Free Essay

Case Study

...Class Name and Section:                 ISEM-501-50 Student Name                                    Kushal Kelshikar Date                                                    03-Nov-2015 Assignment                                        Module 1 –Case Study 1   Chapter 3, Case 1: Advance America Implements Grid Computing   Critical Thinking Questions 1. Why is the new grid computing system at Advance America much easier to install, manage, and maintain than its old system? In the older system of Advance America each of the centers had their own software and hardware installed in their premises, and every night all the centers around the country you to send their data to the main hub. Because of the growing numbers of the data and the centers around the country there was not enough time for all the data to be transferred to the main system plus the maintenance cost of the older system was much higher. In the new system Advance America switched to grid computing. “Grid computing is the collection of computer resources from multiple locations to reach a common goal.”{1} They installed a Client machine in every center which connects to the Web from a fault-tolerant server running Oracle database software. In this process may computers are working together to reduce the workload over the server which in turn helps in identifying and solving the problems much quicker even in real-time. {1} https://en.wikipedia.org/wiki/Grid_computing 2. How might Advance......

Words: 961 - Pages: 4

Free Essay

Nt1110 Video Summary

...data path. In the CPU you have a controller including one or more ALU’s and the internal cache. * ALU – Arithmetic Logic Unit *responsible for performing complex calculations* Having multiple ALUs in a single processor is what gave the earlier Pentiums their processing capabilities. Communication between the ALU and the controller uses a 32bit wide data bus. The Bus connecting the CPUs cache to the ALU & the controller is referred to as the Backside bus. CPU Speed * Processor – Usually measured in GHz. * System Bus – Usually measured in MHz *limiting factor of 800MHz* * Multiplier – Ratio between processor and system bus. *system bus speed x multiplier = processor speed. Multiprocessing – The ability to perform multiple functions simultaneously. *True multiprocessing requires multiple processors.* * SRAM – Static RAM *faster but more expensive, holds memory w/o being “refreshed”.* * DRAM – Dynamic RAM *memory must be “refreshed” Cache * L1 Cache – Located on the CPU chip * L2 Cache – Located inside the processor housing, but not on the chip * L3 Cache – Located inside the processor housing also, but further away from the Processor chip. Sockets * LGA 775 – (Intel) Pentium 4 & Celeron * Socket 754 (AMD) Athlon, Sempron, Opteron Zero Insertion Force ZIF – Term for the placement of the CPU in which the lever seen on a motherboard is used to lock the CPU in place without damaging it, or the pins it connects......

Words: 357 - Pages: 2

Free Essay

It332

...We will take a brief in depth tour of the CPU, memory, processing, registers, bus and data moving to the bus. I will touch on these concepts and processes throughout the paper in hopes to clearly detail out how each works and their importance. CPU The first thing we will discuss is the function of the CPU (Central Processing Unit) and its components. There are three primary components that make up the CPU, these are the ALU or the arithmetic/logic unit, the control unit (CU) and memory. The two components that collectively make up the CPU are the ALU and CU. Let’s take a look at the diagram above and I will explain what it all means. The logic and arithmetic unit is where all the data is stored and calculations are performed. The control unit basically interprets and controls all executions and processes instructions that it is given by other input types. In a typical CPU there is a I/O (input-output) interface which handles the input and output of data when it passes through the CPU to other devices that handle input/output data. The CPU architecture is defined by the major features it has, this is also known as ISA or instruction set architecture. It is these basics that include the number and types of registers, methods and how it addresses memory and basic design. With the typical technology advances that occur today, there have been several CPU architectures over the last few decades but only a small handful that last a long time. It is the evolution and the......

Words: 1127 - Pages: 5

Free Essay

Cpu Analysis

...• CPU Organization • Speed • Advances in Processing Speed • Cache • ZIF • Heat • Real Life Problems • A+ Expectations This video clip explains everything you need to know about the CPU and troubleshooting heat problems. Also included is a review of what knowledge is expected to pass the A+ Exam. VIDEO 1.05 TERMS AND DEFINITIONS CPU ORGANIZATION • Two major CPUS 1. Intel 2. AMD • System Bus • Frontside Bus • Controller • ALU • Internal Bus • Cache • Backside Bus SPEED • Processor 1. Usually measured in GHz • System Bus 1. Usually measured in MHz • Multiplier 1. Ratio between processor and system bus 2. System bus speed x multiplier = processor speed Advances in Processing Speed • Multiprocessing 1. The ability to perform multiple functions simultaneously. • Multiple Processors • Dual Core Processors CACHE • SRAM 1. Static RAM 2. Faster, but more expensive 3. Holds memory without being “refreshed” • DRAM 1. Dynamic RAM 2. Memory must be “refreshed” • L1 Cache 1. On the processor chip • L2 Cache 2. Inside the processor housing 3. Not on the processor chip • L3 Cache 1. Inside the processor housing 2. Further away from the processor chip SOCKETS • LGA 775 1. Intel Pentium 4 and Celron • Socket 754 1. AMD- Athlon, Sempron, Opteron ZIF • Zero Insertion Force 1. Lever used to gently lock CPU into socket without damaging it. HEAT • Optimal Temperature 1. 90-110 F 2. 32-43 C • Check system temperature in CMOS • Thermal......

Words: 398 - Pages: 2

Premium Essay

Fadora and Red Had Enterprise Linux: Chapter 1 Exercise Answers

...Chapter 1 Questions What is free software? List three characteristics of free software.Free software is code that is available for free to everyone, but it is also free in the sense that it can be used and altered freely to the user's desires. It is free to be studied, redistributed, and modified. Why is Linux popular? Why is it popular in academia?Due to the operating system's distribution among universities, students were able to become used to it's sophisticated developing environment which helped these graduates succeed in the industry as UNIX was being spread throughout the world. What are multiuser systems? Why are they successful?Multiuser is a term that defines an operating system or application software that allows access by multiple users of a computer. They are so successful because they allow for collaborative projects to be conducted with much more ease and efficiency. What is the Free Software Foundation/GNU? What is Linux? Which parts of the Linux operating system did each provide? Who else has helped build and refine this operating system?The GNU is a completely free (in the freedom sense) operating system built by Richard Stallman and many of its components, except for the kernel, were completed in the early '90s. Linus Torvalds wrote the kernel for Linux, which was also intended to be a free operating system, in the early '90s. The two systems then were combined together to finish Linux, with it's original kernel and added features......

Words: 663 - Pages: 3

Premium Essay

Nt1430 Chapter 1 Questions

...1. What is free software? List three characteristics of free software. -Free software is software that users have the freedom to distribute and change. The three main characteristics of free software are: The source code has to be distributed with the program, you cannot restrict people from redistributing/modifying/using the software, and users must be allowed to redistribute modified versions under the same terms/licensing. 2. Why is Linux popular? Why is it popular in academia? -Linux is popular for a number of different reasons. Its free software that is portable because it’s written in C, has an amazing range of supported "peripherals", has a lot of software available, and has standardization (POSIX). It’s generally popular in academia because it’s a free, open-source, portable, sophisticated programming environment that computer science students could use as a learning platform. 3. What are multiuser systems? Why are they successful? -A multiuser system is an operating system that allows multiple users to access a single computer's resources. It’s successful because it’s hard for a single user to use 100% of a modern computer’s resources, and allows for greater efficiency. 4. What is the Free Software Foundation/GNU? What is Linux? Which parts of the Linux operating system did each provide? Who else has helped build and refine this operating system? -GNU stands for "GNU'S Not Unix", and it was designed to be a UNIX-like operating system developed......

Words: 750 - Pages: 3

Free Essay

Fuck

...Multiuser systems allow users to use all of the system at the same time. The cost of resources can be maximized and cost per user can be minimized. What is the Free Software Foundation/GNU? A project which Richard Stallman created a complete Unix-compatible system where everyone can use it. What is Linux? A set of tools that allow users to connect and use these utilities to build systems and applications. What is a shell? How does it work with the kernel? With the user? Shell is a software that provides an interface for users. Shell provides access to the services of a kernal. Shell makes the user's job faster and easier. What is the difference between a multiprocessor and a multiprocessing system? a multiprocessor is a small chip insisde a computer system and a multiprocessing system is a computer that is able to have multiple people running processes on a computer at the same time without affecting other users. What is an installer? A software component used for the installation, maintenance, and removal of software. Would you set up a GUI on a server system? Why or why not? Yes, for easier access to programs What are RAM disks? How are they used during installation? Ram disks allows the installation process to run through the specification and design phases without writing to the hard disk and enables you to opt out of the installation at any point before the last step of installation. The RAM disks also allow a live session to leave......

Words: 426 - Pages: 2

Premium Essay

Cyber Law

...Introduction to ICT and Cyberspace UNIT 2 Structure 2.1 2.2 2.3 2.4 2.5 Introduction Objectives COMPUTER HARDWARE, SOFTWARE AND PACKAGES Evolution and Development of Computing Hardware Components of Computers What is Software? 2.5.1 Difference between System Software and Application Software 2.6 System Software: Functional Categories 2.6.1 2.6.2 System Control Programs System Support Programs 2.7 2.8 2.9 Software Crisis Application Software or Packages Summary 2.10 Terminal Questions 2.11 Answers and Hints 2.12 References and Suggested Readings 2.1 INTRODUCTION Modern computers are equipped with powerful hardware facilities driven by extensive software packages. Today computing speed is very high and it is capable of doing huge amount of work within seconds with proper accuracy. Nowadays computing and telecommunication both controls the whole universe with multiple manners. To access the state of art of computing, it is always better to review the historical milestones in the developments of computers. Nowadays the computer system plays such a vital role that no corporate or individual can survive without it by any means. Starting from the country’s national security to any common issue, the use of the computer system is enormous. In general, the computer accepts inputs, then processes it, and gives the output. 2.2 OBJECTIVES After studying this unit, you will be able to: • • • 18 describe the evolution and development of computing;......

Words: 4670 - Pages: 19

Free Essay

Video Summary 3

...include one or more ALUs and the internal cache. An ALU (arithmetic Logic Unit) is responsible for performing complex calculations. Having multiple ALUs inside a single processor is what gave the early Pentiums their multiprocessing capabilities. Communication between the controller and the ALUs uses a 32-bit wide internal data bus. The bus system that supports communication between the cache system, the ALUs and controller is referred to as the backside bus. CPU Speed The most important thing you need to know about a processor is the speed at which it processes information. Unfortunately, there are several ways of measuring speed and they are frequently misleading. First, you should understand that speeds differ inside the processor and outside the processor. Internally, the processor may work up to 3.2GHz, but the system bus may only run at 800 MHz. Consequently, when you buy a new computer the CPU may be rated at 3.2GHz, but the question you really need to ask is what is the system bus speed, because that speed is the limiting factor that controls the actual functioning speed of your computer. Advances in Processing Speed CPU manufacturers have come up with more ways of doing more work faster. We said earlier that using multiple ALUs allowed for multiprocessing. This is the ability to simultaneously perform multiple functions. This is a misnomer. True multiple...

Words: 627 - Pages: 3