精华内容
下载资源
问答
  • 计算密集型和数据密集型
    千次阅读
    2019-04-23 19:19:27
    什么是计算密集型

    计算密集型就是计算、逻辑判断量非常大而且集中的类型,因为主要占用cpu资源所以又叫cpu密集型,而且当计算任务数等于cpu核心数的时候,是cpu运行效率最高的时候。
    特点:消耗cpu

    什么是IO密集型

    IO密集型就是磁盘的读取数据和输出数据非常大的时候就是属于IO密集型
    由于IO操作的运行时间远远大于cpu、内存运行时间,所以任务的大部分时间都是在等待IO操作完成,IO的特点是cpu消耗小,所以,IO任务越多,cpu效率越高,当然不是越多越好,有一个极限值。

    IO密集型任务执行期间,99%的时间都花在IO上,花在CPU上的时间很少,因此,用运行速度极快的C语言替换用Python这样运行速度极低的脚本语言,完全无法提升运行效率。对于IO密集型任务,最合适的语言就是开发效率最高(代码量最少)的语言,脚本语言是首选,C语言最差。

    cpu核心数

    cpu核心数是指一个cpu由几个核心组成,核心数越多,cpu运行速度越快,比如处理同一份数据,单核是指一个人处理,双核是指两个人处理,所以核心数越多,cpu性能越好。

    更多相关内容
  • 计算密集型、IO密集型、数据密集型

    万次阅读 2018-12-10 22:11:48
    计算密集型(CPU-Intensive) 1、特点:要进行大量的计算,消耗CPU资源。比如计算圆周率、对视频进行高清解码等等,全靠CPU的运算能力。 2、计算密集型任务虽然也可以用多任务完成,但是任务越多,花在任务切换的...

    计算密集型(CPU-Intensive)

    1、特点:要进行大量的计算,消耗CPU资源。比如计算圆周率、对视频进行高清解码等等,全靠CPU的运算能力。

    2、计算密集型任务虽然也可以用多任务完成,但是任务越多,花在任务切换的时间就越多,CPU执行任务的效率就越低,所以,要最高效地利用CPU,计算密集型任务同时进行的数量应当等于CPU的核心数。

    3、计算密集型任务由于主要消耗CPU资源,因此,代码运行效率至关重要。Python这样的脚本语言运行效率很低,完全不适合计算密集型任务。对于计算密集型任务,最好用C语言编写。

    IO密集型(IO-Intensive)

    1、涉及到网络、磁盘IO的任务都是IO密集型任务。

    2、特点:CPU消耗很少,任务的大部分时间都在等待IO操作完成(因为IO的速度远远低于CPU和内存的速度)。

    3、对于IO密集型任务,任务越多,CPU效率越高,但也有一个限度。常见的大部分任务都是IO密集型任务,比如Web应用。

    4、IO密集型任务执行期间,99%的时间都花在IO上,花在CPU上的时间很少,因此,用运行速度极快的C语言替换用Python这样运行速度极低的脚本语言,完全无法提升运行效率。对于IO密集型任务,最合适的语言就是开发效率最高(代码量最少)的语言,脚本语言是首选,C语言最差。

     

     

    数据密集(Data-Intensive)

       在2011年,"大数据"的概念已经赚足了人气,调研机构IDC数字宇宙在2011年6月的报告显示,全球数据量在2011年已达到1.8ZB,在过去5年里增加了5倍,而到2015年将达到近8ZB.进入2012年,大数据丝毫不会放慢增长的步伐,全球制造业、政府、零售商、金融等众多机构已经陷入"数据爆炸"的困境。随着数据量的急剧增长,以及对数据在线处理能力的要求不断提高,海量数据的处理问题越来越受到关注。在金融、电信等领域,都需要通过对大量的用户数据进行分析,才能做出相应的决策。对互联网数据进行存储和处理的海量数据处理系统也开始向数据密集型计算系统发展。

       数据密集型应用与计算密集型应用是存在区别的,传统的计算密集型应用往往通过并行计算方式在紧耦合的超级计算机上运行少量计算作业,即一个计算作业同时占用大量计算机节点;而数据密集型应用的特点主要是:

    • 大量独立的数据分析处理作业可以分布在松耦合的计算机集群系统的不同节点上运行;
    • 高度密集的海量数据I/O吞吐需求;
    • 大部分数据密集型应用都有个数据流驱动的流程。

    数据密集型计算指能推动前沿技术发展的对海量和高速变化的数据的获取、管理、分析和理解。这包含了三层含义:

    ●    它所处理的对象是数据,是围绕着数据而展开的计算。它需要处理的数据量非常巨大,且快速变化,它们往往是分布的、异构的。因此,传统的数据库管理系统不能满足其需要。

    ●    "计算"包括了从数据获取到管理再到分析、理解的整个过程。因此它既不同于数据检索和数据库查询,也不同于传统的科学计算和高性能计算。它是高性能计算与数据分析和挖掘的结合。

    ●    它的目的是推动技术前沿发展,要想推动的工作是那些依赖传统的单一数据源、准静态数据库所无法实现的应用。

     

    数据型密集计算的典型应用可概括为以下三类:

    1)Web应用:无论是传统的搜索引擎还是新兴的Web 2.0应用,它们都是以海量数据为基础,以数据处理为核心的互联网服务系统。为支持这些应用,系统需要存储、索引、备份海量异构的Web页面、用户访问日志以及用户信息(Profile),并且还要保证对这些数据快速准确的访问 。显然,这需要数据密集型计算系统的支持,因而WEB应用成为数据密集型计算发源地。

    2)软件即服务(Software as a Service, SaaS)应用:SaaS通过提供公开的软件服务接口,使得用户能够在公共的平台上得到定制的软件功能,从而为用户节省了软硬件平台的购买和维护费用,也为应用和服务整合提供了可能。由于用户的各类应用所涉及的数据具有海量、异构、动态等特性,有效地管理和整合这些数据,并在保证数据安全和隐私的前提下提供数据融合和互操作功能需要数据密集型计算系统的支持。

    3)大型企业的商务智能应用:大型企业往往在地理上是跨区域分布的,互联网提供了统一管理和全局决策的平台。实现企业商务智能需要整合生产、销售、供应、服务、人事、财务等一系列子系统。数据是整合的对象之一,更是实现商务智能的基础。由于这些系统中的数据包括产品设计、生产过程以及计划、客户、订单、售前后服务等数据,除类型多样,数量巨大外,结构也是复杂、异构的。数据密集型计算系统是实现跨区域企业商务智能的支撑技术。

    展开全文
  • 云计算-数据密集型计算环境下数据分类算法研究.pdf
  • 计算机研究 -数据密集型计算环境下聚类算法的研究.pdf
  • 计算密集型 计算密集型应用领域的软件系统是指CPU资源消耗多, 计算量大...数据密集型系统应用领域的软件系统复杂性高于计算密集型,这样的系统处理大量的数据业务规则,例如电子商务系统。 特点: 1.大量独...

    计算密集型

    计算密集型应用领域的软件系统是指CPU资源消耗多, 计算量大的系统,主要以追求计算速度为主要指标。例如超级计算机

    特点:

    传统的计算密集型应用往往通过并行计算方式在紧耦合的超级计算机上运行少量计算作业,即一个计算作业同时占用大量计算机节点

    数据密集型

    数据密集型系统应用领域的软件系统复杂性高于计算密集型,这样的系统处理大量的数据和业务规则,例如电子商务系统

    特点:

    1.大量独立的数据分析处理作业可以分布在松耦合的计算机集群系统的不同节点上运行;
    2.高度密集的海量数据I/O吞吐需求;
    3.大部分数据密集型应用都有个数据流驱动的流程。

    I/O密集型

    I/O密集型系统应用领域的软件系统CPU效能高、占用率低,大部分时间都用于等待I/O操作,例如web应用

    特点:

    I/O bound 指的是系统的CPU效能相对硬盘/内存的效能要好很多,此时,系统运作,大部分的状况是 CPU 在等 I/O (硬盘/内存) 的读/写,此时 CPU Loading 不高。

    展开全文
  • 与公有云计算相比,针对数据与计算双重密集型任务的私有云计算系统对计算效率系统管理效率提出了更高的要求,目前的公有云计算系统显得过于复杂繁琐,因此需要一种简便易用的能够适应数据计算密集型任务的私有...
  • 云计算-数据密集型计算中副本优化机制研究.pdf
  • 云计算-数据密集型计算并行编程关键技术研究.pdf
  • 云计算-数据密集型计算环境下离群点挖掘算法的研究.pdf
  • 云计算-面向数据密集型计算的船舶应急响应系统设计与实现.pdf
  • 互联网数据处理、科学计算、商业智能等领域都存在着海量数据处理需求,存在大量数据密集型应用[1]。Google提出了MapReduce[2]编程模型,开发人员只需要编写单个节点的处理任务,由计算平台来提供任务的并行处理及...
  • 数据密集型应用

    2019-01-29 14:00:04
    数据密集型应用(data-intensive applications)正在通过使用这些技术...一个应用被称为数据密集型的,如果数据是其主要挑战(数据量,数据复杂度或数据变化速度)—— 与之相对的是计算密集型,即处理器速度是其瓶颈。
  • 计算型与IO密集型这个概念,在面试的时候可能会被问到,主要是在多线程环境中,如何设置线程数,让CPU合理利用,跑出最高效率。 计算密集型

        计算密集型与IO密集型这个概念,在面试的时候可能会被问到,主要是在多线程环境中,如何设置线程数,让CPU充分利用,跑出最高效率。

        计算密集型:这一类主要是在线程中,按照数学公式,大量求和、求平均、求平方等等操作,这样的任务,大部分需要依赖CPU的计算能力来处理,我们设置线程数一般是:计算机核数n+1。

        IO密集型:这一类任务,大部分操作耗时在网络传输、磁盘读写上面,而CPU并未跑满,这类应用比如web服务器,不管是同步阻塞,还是异步非阻塞,他对CPU的利用非常低,耗时操作在IO。为了合理利用CPU,设置线程数一般是:计算机核数n*2。

        在设置线程数上,一个是n+1,一个是2n。

        netty这个框架是java语言开发的一个非常优秀的异步框架,他利用多线程的时候,设置默认线程数,就是遵循的2n。

        默认情况下,如果我们不设置线程数,那么就是默认的2n。

        

    展开全文
  • 设计数据密集型应用

    2018-12-27 18:30:45
    第一部分,主要讨论有关增强数据密集型应用系统所需的若干基本原则。首先开篇第1章即瞄准目标:可靠性、可扩展性与可维护性,如何认识这些问题以及如何达成目标。第2章我们比较了多种不同的数据模型查询语言,讨论...
  • 今天在看文件索引和数据库索引的相关知识点的文章,文中比较了二叉查找树和B树在查找中的区别,其中提到了IO密集型任务的概念,想起以前学习计算机组成原理的时候也遇到计算密集型和IO密集型的相关概念,记录下这俩...
  • #资源达人分享计划#
  • 一种面向数据密集型计算环境的聚类算法.pdf
  • 计算密集型和IO密集型的区别 IO 密集型:系统运作,大部分的状况是CPU 在等I/O (硬盘/内存)的读/写。 CPU 密集型:大部份时间用来做计算、逻辑判断等CPU 动作的程序称之CPU 密集型。 (CPU密集型)计算密集型任务的...
  • 与公有云计算相比,针对数据计算双重密集型任务的私有云计算系统对计算效率系统管理效率提 出了更高的要求,目前的公有云计算系统显得过于复杂繁琐,因此需要一种简便易用的能够适应数据计算 密集型任务的私有...
  • 日益增长的数据量对数据处理的要求越来越高,于是出现了数据密集...为了评估该算法的适用性收敛性,使用遗传算法模拟退火算法与其对比,结果显示,提出的算法在这种数据密集型服务组件的部署问题中表现得更为出色。
  • 行业分类-设备装置-一种云计算平台下数据计算密集型处理系统.zip
  • 面向新型处理器的数据密集型计算.pdf
  • 数据密集型计算和模型》第三章的有关内容。主要有内存计算的概念、内存计算的硬件结构、内存计算的系统软件、内存数据库等相关内容。 文章目录一、内存计算的概念1. 为什么需要内存计算?2. 内存计算的概念二、...
  • #资源达人分享计划#
  • 判断一个程序属于IO密集型还是计算密集型有利于后续对程序进行并行优化,尤其是Cpython解释器下的python程序(GIL锁)。本文将先介绍判断方法,再结合一个实际案例进行分析。 上下文切换 上下文切换一般指用户态...
  • 1、io密集型计算主要是网络,磁盘读写,数据库,web应用等操作,io密集型计算时cpu使用率不高。 2、cpu密集型计算主要是数学数字计算,例如:计算圆周率,判断素数,视频解码等,cpu密集型计算会耗费大量cpu资源...
  • 然而数据密集型实时应用程序并不是只有I/O密集型任务,当碰到CPU密集型任务时,比如要对数据加解密(node.bcrypt.js),数据压缩解压(node-tar),或者要根据用户的身份对图片做些个性化处理,在这些场景下,主线...
  • 云计算在工业界学术界的火热升温,一方 面体现出人们对大规模数据处理日益...这就带来了一个研究方向——数据密集型计 算。据IDC(互联网数据中心)统计,2008年全球 产生的数据量约为270000PB(拍字节,1015B)[1]。
  • CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 84,777
精华内容 33,910
热门标签
关键字:

计算密集型和数据密集型