Page 75 - DCAP103_Principle of operating system
P. 75

Principles of Operating Systems



                   Notes         manage the user interface and perform other tasks. Multi-processor hardware is not necessary
                                 for such a program. In contrast, if you are using threads to speed up a numerical computation,
                                 you will require actual MP hardware to see any benefit. On a uniprocessor, this program will
                                 work harder (MT code adds overhead) and will take essentially the same amount of time to
                                 complete as a single-threaded version. Common sense suggests that threading does not make
                                 a uniprocessor able to compute any faster.
                                 3.3.2 Multi-threading to IDL

                                 Simply put, ITT-VIS has implemented multi-threading in IDL in order to allow users to harness
                                 additional CPUs to do more work in less time. Scientific data sets continue to grow in size faster
                                 than computers can process them. Multi-processors offer one way to handle larger problems.
                                 Multi-processor hardware and Symmetric Multi-Processing (SMP) have become cheap and easily
                                 available. There are some powerful trends driving this change:
                                    1.  As transistor densities on processor chips increase with each generation, there is room for
                                      replicated processing units.
                                    2.  At any given point in time, the cost of the second most powerful CPU in production is
                                      much lower than the most powerful CPU. It makes sense that if you can harness multiple
                                      cheap, but only slightly less powerful, CPUs, you can do more work for less money.

                                    3.  There are physical limits that govern how fast a single CPU can possibly go, and we expect
                                      to hit those limits within a few (10-20, max) years. Once we hit this limit, the only way to
                                      increase computing power may be to add CPUs.
                                 The  development  of  SMP  systems  has  been  driven  not  by  the  need  to  run  multi-threaded
                                 programs, but by a need to increase throughput on servers that run multiple single-threaded
                                 programs  simultaneously  (e.g.,  to  serve  files,  mail  and  printing).  Economies  of  scale  allow
                                 computer vendors to apply this technology to desktop machines. It is becoming common for
                                 individuals to have such machines, and it appears that this trend will continue.

                                 3.3.3 Modeling Multi-threaded Processors
                                 Symmetric  multi-processing  (SMP)  has  been  employed  by  computer  makers  for  some  time.
                                 Multiple processors are connected to a common memory pool and a combination of hardware
                                 and operating system functions permit work to be balanced across the entire unit. Each processor
                                 had a single “thread” that processed programming instructions.
                                 Recently chip manufacturers added additional threads to the processors  to further increase
                                 efficiency of the chips. The added capacity of multi-threaded processors is welcomed but they
                                 provide some challenges for the capacity planner. As work is added to a system, multi-threaded
                                 CPU cores perform differently from multiple single-threaded CPU cores in a symmetric multi-
                                 processing (SMP) environment. The meaning of per-process CPU time measurements depend
                                 upon chip technology, therefore, measurement results and expected future performance may
                                 not be intuitively obvious any more.
                                 This paper explains a conceptual architecture developed for modeling multi-threaded processors
                                 and the new functionality provided in Team Quest Model to support multi-threaded processors.
                                 A modeling example using Linux on Intel chips will be provided to aid your understanding.

                                 3.3.4 Single-threaded versus Multi-threaded Symmetric Multiprocessing
                                 Let’s begin by comparing older single-threaded SMP technology with newer multi-threaded
                                 technologies. In both cases, the CPU chip is the hardware component that provides the instruction
                                 processing  capability.  Within  each  chip  there  may  be  multiple  CPU  cores,  and  each  core




        68                                LOVELY PROFESSIONAL UNIVERSITY
   70   71   72   73   74   75   76   77   78   79   80