We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5
MICROPROCESSOR AND INTERFACING
ASSIGNMENT-02
NAME: V. Dharaneswar Reddy
REG.NO: 20BCE2351 SLOT: D1+TD1 TOPIC: Case Study of Multicore Processors SUBMITTED TO: Rajakumar K
Case Study of Multicore Processors
Multicore processor: A Multi-processor is an integrated circuit that has two or more processors linked to it for higher efficiency, consume less power, and faster simultaneous processing of multiple tasks. It typically has two or more processors that read and carry out programming instructions. A unique variety of multiprocessor is the multi-core processor. A computing machine with two or more separate cores is referred to as a multicore processor. It can be compared to an integrated circuit that has two or more separate processors (referred to as cores) attached to them. The cores may be put into many dies in a single chip package, or they may be placed onto a single integrated circuit die (a chip multiprocessor, or CMP). In homogeneous multi-core systems, every core is the same, however in heterogeneous multi-core systems, they are not. Multicore processors are MMID: each core runs a different thread that accesses a different location of memory (Multiple Data). All the cores in a multi-core CPU share the same memory. Different multi-core processor implementations are feasible, depending on the requirements of the application. It could be implemented using a set of homogeneous cores, a set of heterogeneous cores, or a mix of both. In a homogeneous core architecture, each CPU core is identical and employs a divide-and-conquer method to increase total processor performance by dividing applications with high computational needs into those with lower demands, which are then performed in parallel. Other significant benefits of using a homogenous multi-core CPU include reduced design complexity, reusability, reduced testing work, and hence an easier time to market requirement. Why multi-core processors are needed? ▪ It is challenging to increase single-core clock frequencies. ▪ Modern software is multithreaded aware. ▪ The current state of computer architecture (shift towards more parallelism). Parallel Programming: Parallel programmes are used when a major work can be broken down into smaller tasks that can be completed at the same time. The following things are involved in parallel programming: • Breaking down a data set into smaller jobs or components. • Interfering with these smaller jobs, which are then being carried out concurrently by several processors.
Parallel programming techniques:
The most typical are data parallel and message passing • Message Passing: To programme using message passing, libraries that control the data transfer between processors must be linked with and called. In essence, the user calls liberty to actively transfer data amongst processors. the MPI, or message passing interface. • Data Parallel: Writing a programme and compiling it using a data parallel compiler is data parallel programming. To disseminate the data to all processes, the compiler translates the programme into standard code and makes calls to a message-passing library. Architecture of multicore processor The architecture of a multi-core processor provides communication between each variable core, and it divides and distributes all processing responsibilities effectively. Two or more cores and a number of caches make up every multi-core processor. Once all processing activities have been completed, the processed data from each gateway. In terms of overall performance, this technique outperforms a single core CPU. Advantages: 1. Performance 2. Reliability 3. Software Interactions 4. Multitasking 5. Power consumption 6. Obsolescence Avoidance 7. Isolation Disadvantages: 1. Application speed 2. Jitter 3. Analysis 4. Resource sharing 5. Software Interference Multi-core processor is used for: 1. Virtualization 2. Databases 3. Analytics and HPC 4. Cloud 5. Visualization Homogeneous vs Heterogeneous Multicore processors: A multicore processor's cores could be homogenous or heterogeneous. For x86 computer architectures, mainstream multicore processors from Intel and AMD are homogeneous and offer identical cores. However, it is frequently inefficient to use a complicated equipment for a simple task or to achieve maximum efficiency. The market for heterogeneous multicore processors employs computers with various cores for various tasks. In embedded or arm processors that may combine microprocessor and microcontroller cores in the same device, heterogeneous cores are typically encountered. There are three general goals for heterogeneous multicore processors: 1. Optimized performance 2. Optimized power 3. Optimized security Examples of multicore processors are intel i9,i7,i5 or AMD zen 3 family, zen 2 family, zen+ family.
Evolution of Multi-core processor:
Performance and cost have always been taken into consideration while designing microprocessors. In order to fulfil this constantly increasing demand, Gordon Moore, the founder of Intel Corporation, predicted that the number of transistors on a chip would double once every 18 months. This prediction is known as Moore's Law in the semiconductor industry. One billion transistors have been integrated on a chip to increase integration density, which has been made possible by cutting- edge chip fabrication and integrated circuit processing technology. Pollack's rule, which specifies that performance gains are roughly equal to the square root of complexity increases, regulates microarchitecture. Therefore, a CPU core's performance would only grow by 40% when its logic was doubled. Modern chip fabrication methods have major limitations, one of which is power dissipation. According to studies, transistor leakage current increases as chips get smaller and smaller, significantly increasing static power dissipation. Increasing the frequency of operation, which allows for quicker programme execution, is another alternative strategy for enhancing performance. The frequency is currently limited to 4GHz, though, as any increase over this range results in an increase in power dissipation. Limits on system cost and battery life force the design team to consider power over performance in such a scenario. For typical air-cooled microprocessor server boxes, power consumption has gotten so high that purchasing refrigeration or liquid cooling equipment may be necessary. Designers were finally met with the power wall, or maximum amount of power a CPU could use. Major Challenges faced by multi-core processors: Although multi-core CPUs provide many advantages, the technology still has some major challenges to overcome. One of the biggest issues is that computer programs run slower on multi-core processors than single-core processors. As has been correctly stated, multi-core systems do not automatically become faster as the number of cores grows. Programmers must write software that makes use of the increasing number of processors in a multi-core machine without increasing the amount of time needed to develop a software. Many apps currently in use were designed to work on a single processor, failing to make use of the potential of multi- core systems. Similarly, heterogeneous cores use specialised, application-specific processor cores to solve the issue of running a variety of apps simultaneously on a computer. Examples include a remedial core that handles less computationally challenging applications, a complex core that handles computationally intensive applications, and a DSP core that handles multimedia applications requiring intensive mathematical computations. As an alternative, multi-core CPUs could be constructed with a mixture of homogeneous and heterogeneous cores to increase performance while utilising both techniques. The IBM CELL multi-core processor, which has eight comparably sized and power-efficient accelerators for a single general-purpose CPU and has demonstrated performance effectiveness, employs this method. The single-core implementations' power and frequency restrictions opened the door for multi-core technology, which will remain popular in the market. However, achieving the highest performance throughput requires resolving all the issues that multi-core processors are now facing. Numerous technological advancements are planned in this area of technology, including a new multi-core programming language and tools for converting current software to "multi-core aware" software. Despite being one of the most difficult technologies to adopt, there is a lot of research being done to maximise the potential of multi-core computers.