多线程和片上处理器 MULTITHREADING AND CHIP MULTIPROCESSORS

COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION

The most important measure of performance for a processor is the rate at which it
executes instructions. This can be expressed as
MIPS rate = f
*
IPC
where f is the processor clock frequency, in MHz, and IPC (instructions per cycle)
is the average number of instructions executed per cycle. Accordingly, designers
have pursued the goal of increased performance on two fronts: increasing clock fre-
quency and increasing the number of instructions executed or, more properly, the
number of instructions that complete during a processor cycle. As we have seen in
earlier chapters, designers have increased IPC by using an instruction pipeline and
then by using multiple parallel instruction pipelines in a superscalar architecture.
With pipelined and multiple-pipeline designs, the principal problem is to maximize
the utilization of each pipeline stage. To improve throughput, designers have cre-
ated ever more complex mechanisms, such as executing some instructions in a dif-
ferent order from the way they occur in the instruction stream and beginning execu-
tion of instructions that may never be needed. But as was discussed in Section 2.2,
this approach may be reaching a limit due to complexity and power consumption
concerns.
An alternative approach, which allows for a high degree of instruction-level
parallelism without increasing circuit complexity or power consumption, is called
multithreading. In essence, the instruction stream is divided into several smaller
streams, known as threads, such that the threads can be executed in parallel.
The variety of specific multithreading designs, realized in both commercial
systems and experimental systems, is vast. In this section, we give a brief survey of
the major concepts.

时间: 2024-10-29 19:09:55

多线程和片上处理器 MULTITHREADING AND CHIP MULTIPROCESSORS的相关文章

Implicit and Explicit Multithreading MULTITHREADING AND CHIP MULTIPROCESSORS

COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION The concept of thread used in discussing multithreaded processors may or may not be the same as the concept of software threads in a multiprogrammed operating system. It w

OS X 和iOS 中的多线程技术(上)

OS X 和iOS 中的多线程技术(上) 本文梳理了OS X 和iOS 系统中提供的多线程技术.并且对这些技术的使用给出了一些实用的建议. 多线程的目的:通过并发执行提高 CPU 的使用效率,进而提供程序运行效率. 1.线程和进程 进程 什么是进程 进程是指在计算机系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行中其专用且受保护的内存空间内 比如同时打开 Xcode .Safari ,系统就会分别启动两个进程 通过活动监视器可以查看Mac系统中所开启的进程 线程 什么是线程 一

Linux高性能服务器编程——多线程编程(上)

多线程编程 Linux线程概述 线程模型 线程是程序中完成一个独立任务的完整执行序列,即一个可调度的实体.根据运行环境和调度者的身份,线程可分为内核线程和用户线程.内核线程,在有的系统上也称为LWP(Light Weigth Process,轻量级进程),运行在内核空间,由内核来调度:用户线程运行在用户空间,由线程库来调度.当进程的一个内核线程获得CPU的使用权时,它就加载并运行一个用户线程.可见,内核线程相当于用于线程运行的容器.一个进程可以拥有M个内核线程和N个用户线程,其中M≤N.并且在一

多线程文件分片上传

文件上传方法 /// <summary> /// 上传公共类 /// </summary> public class UploadFile { #region 变量 /// <summary> /// 起始位置 /// </summary> long Begin; /// <summary> /// 结束位置 /// </summary> long End; /// <summary> /// 每次上传的容量 /// &l

ios 多线程文件下载与上传, post数据

一.文件下载 获取资源文件大小有两张方式 1. [objc] view plaincopy HTTP HEAD方法 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:0 timeoutInterval:kTimeout]; request.HTTPMethod = @"HEAD"; [NSURLConnection sendAsynchronousRequest:requ

多线程下载服务器上的资源

1.代码实现 using UnityEngine;using System.Collections;using System;using System.Text;using System.Net;using System.IO; internal class WebReqState{ public byte[] Buffer; public FileStream fs; public const int BufferSize = 1024; public Stream OrginalStream

c#中跨线程调用windows窗体控件 .我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。

首先来看传统方法: public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { Thread thread = new Thread(ThreadFuntion); thread.IsBackground = true; thread.Start(); } private void Thread

单线程和多线程在pc上执行花费时间测试

1 package Thread; 2 3 import junit.framework.Assert; 4 import org.junit.Test; 5 6 import java.util.concurrent.CountDownLatch; 7 import java.util.concurrent.Executor; 8 import java.util.concurrent.Executors; 9 10 /** 11 * Created by csophys on 15/7/11

FTP多线程,断点续传上传下载

1 package com.hirain.ftp.thread; 2 3 import java.io.File; 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6 import java.io.InputStream; 7 import java.io.OutputStream; 8 import java.io.RandomAccessFile; 9 10 import org.apache.commons.