NetworkX和Graphscope哪个运算速度更快

NetworkX和Graphscope哪个运算速度更快,第1张

近年来,全球大数据进入加速发展时期,数据量呈现指数级爆发式增长,而这些大量数据中不同个体间交互产生的数据以图的形式表现,如何高效地处理这些图数据成为了业界及其关心的问题。很过用普通关系数据无法跑出来的结果,用图数据进行关联分析会显得异常高效。

提到处理图数据,我们首先想到NetworkX,这是网络计算上常用的Python包,可提供灵活的图构建、分析功能。但是我们使用NetworkX跑大规模图数据时,不仅经常碰到内存不足的问题,而且分析速度很慢,究其原因,是NetworkX只支持单机运行。通过网上搜索,新发现了一个名为GraphScope的系统不仅号称兼容NetworkX的API,而且支持分布式部署运行,性能更优。针对GraphScope和NetworkX的处理能力,我们参考图计算中常用的测试框架LDBC,通过一组实验来对比下二者的性能。

一、实验介绍

为了比较两者的计算效率,先用阿里云拉起了配置为8核CPU,32GB内存的四台ECS,设计了三组比较实验,分别是NetworkX单机下的计算性能,GraphScope单机多worker的计算性能以及GraphScope分布式多机多worer的计算性能。

数据上,我们选取了SNAP开源的图数据集twitter,来自 LDBC数据集的datagen-7_5-fb,datagen-7_7-zf和datagen-8_0-fb作为实验数据,以下是数据集的基本信息:

· Twitter: 81,307个顶点,1,768,135条边

· Datagen-7_5-fb: 633,432个顶点,34,185,747条边,稠密图

· Datagen-7_7-zf: 13,180,508个顶点,32,791,267条边,稀疏图

· Datagen-8_0-fb: 1,706,561个顶点,107,507,376条边,这个数据集主要测试两个系统可处理的图规模能力

实验设计上我选择常用的SSSP、BFS、PageRank、WCC算法,以及较高复杂度的All Pair shortest Path length算法,以载图时间,内存占用和计算时间这三个指标为依据,对两个系统进行计算性能的比较。

NetworkX是一个单机系统,在实验中只考虑NetworkX在单机环境下的运行时间;GraphScope支持分布式运行,故进行两个配置,一个是单机4worker,另外一个配置是4台机器,每台机器4个worker。

二、实验结果

首先,GraphScope的载图速度比NetworkX显著提升。

在前三个图数据集中,无论是GraphScope的单机多worker模式,还是GraphScope的分布式模式,载图速度都比NetworkX快:

GraphScope单机模式载图速度平均比NetworkX快5倍,最高纪录——在datagen-7_5-fb上比NetworkX快了6倍。

分布式模式下GraphScope的载图时间比NetworkX平均快了27倍,最高纪录——在datagen-7_7-zf数据集上比NetworkX快了63倍。

在datagen-8_0-fb数据集上,NetworkX因内存溢出无法载图,GraphScope单机多worker和GraphScope分布式载图时间分别为142秒和136秒。

表一:载图时间对比

载图时间

NetworkX

GraphScope单机

GraphScope分布式

twitter

112

31

18

datagen-7_5-fb

256

456

366

datagen-7_7-zf

316

713

50

datagen-8_0-fb

OOM

142

136

其次,GraphScope的内存使用效率比NetworkX显著提升。

在datagen-8_0-fb数据集上,NetworkX在32G的内存上无法载完图,而GraphScope仅需要24G的内存即可载入在datagen-8_0-fb数据集。

表二:内存占用对比

内存占用

NetworkX

GraphScope

datagen-7_5-fb

14G

6G

datagen-7_7-zf

28G

18G

datagen-8_0-fb

OOM

24G

再次,GraphScope的计算速度比NetworkX显著提升。

SSSP算法上,GraphScope单机多worker模式平均要比NetworkX快22倍,最快在datagen-7_7-zf数据集上快了32倍。GraphScope分布式模式下平均要比NetworkX快103倍,最快datagen-7_5-fb数据集上快了182倍。

表三: SSSP计算时间对比(单位:秒)

SSSP

NetworkX

GraphScope单机

GraphScope分布式

twitter

245

132

028

datagen-7_5-fb

379

121

031

datagen-7_7-zf

584

018

003

datagen-8_0-fb

OOM

276

082

BFS算法上,GraphScope单机多worker模式平均要比NetworkX快13倍,最快datagen-7_5-fb数据集上快了22倍。GraphScope分布式模式下平均要比NetworkX快16倍,最快在datagen-7_5-fb数据集上快了28倍。

表四: BFS计算时间对比(单位:秒)

BFS

NetworkX

GraphScope单机

GraphScope分布式

twitter

153

016

017

datagen-7_5-fb

4468

252

156

datagen-7_7-zf

798

075

072

datagen-8_0-fb

OOM

1102

573

PageRank算法上,GraphScope单机多worker模式平均要比NetworkX快62倍,最快twitter数据集上快了80倍。GraphScope分布式模式下平均要比NetworkX快65倍,最快在twitter数据集上快了71倍。

另外,PageRank计算过程中,NetworkX在datagen-7_7-zf上内存溢出,没有完成计算,GraphScope单机多worker模式和分布式模式计算时间分别为25秒和22秒;

表五:PageRank计算时间对比(单位:秒)

PageRank

NetworkX

GraphScope单机

GraphScope分布式

twitter

2401

037

033

datagen-7_5-fb

300

673

517

datagen-7_7-zf

OOM

1931

779

datagen-8_0-fb

OOM

2496

2188

WCC算法上,GraphScope单机多worker模式平均要比NetworkX快44倍,最快在datagen-7_7-zf数据集上快了104倍。GraphScope分布式模式下平均要比NetworkX快76倍,最快datagen-7_5-fb数据集上快了194倍。

表六: WCC计算时间对比(单位:秒)

WCC

NetworkX

GraphScope单机

GraphScope分布式

twitter

06392

00296

00233

datagen-7_5-fb

2603

025

013

datagen-7_7-zf

8319

1457

1298

datagen-8_0-fb

OOM

034

04991

在复杂度极高的All pair shortest path length算法上,NetworkX在twitter图上即内存溢出,无法计算。GraphScope在分布式模式下完成了twitter图的All pair shortest path length计算,耗时76分钟。

表七: All Pair Shortest Path Length(单位:秒)

APSP

NetworkX

GraphScope单机

GraphScope分布式

twitter

OOM

OOM

457587

三、总结

从实验结果可以看到,在同等条件下,无论在载图时间、内存占用和计算时间上,GraphScope都要大大优于NetworkX,性能优化可以达到几十倍甚至上百倍。

6979阿强

关注

0

0

0

@网络算法工具 networkX igraph 的性能问题

alston_ethannical的博客

24

@网络算法工具 networkX igraph 的性能问题 问题的提出 当我用 50万数据去跑 networkX 开发出来的算法时,遇到了一个计算性能的问题,这个问题时很慢。 寻找答案 发现 networkX再性能方面比较差。当节点上万,边上十万的时候,新能慢的问题就会显现出来 为了解决图算法问题,该怎么办呢 遇到问题,首先定义问题的边界。也就是 先找到限制问题的条件。然后缩小问题范围。我要解决的问题是:在解决图算法相关的问题时,如何能够快速计算出结果。但是目前的算法时用networks实现的。问题的根源是

开源!一文了解阿里一站式图计算平台GraphScope

阿里云开发者

2767

简介:随着大数据的爆发,图数据的应用规模不断增长,现有的图计算系统仍然存在一定的局限。阿里巴巴拥有全球最大的商品知识图谱,在丰富的图场景和真实应用的驱动下,阿里巴巴达摩院智能计算实验室研发并开源了全球首个一站式超大规模分布式图计算平台GraphScope,并入选中国科学技术协会“科创中国”平台。本文详解图计算的原理和应用及GraphScope的架构设计。一 什么是图计算图数据对一组对象(顶点)及其关系(边)进行建模,可以直观、自然地表示现实世界中各种实体对象以及它们之间的关系。在大数据场景下,社交网络、交

一文了解阿里一站式图计算平台GraphScope_阿里云云栖号

10-2

GraphScope 提供了各类常用的分析算法,包括连通性计算类、社区发现类和 PageRank、中心度等数值计算类的算法,后续会不断扩展算法包,在超大规模图上提供与 NetworkX 算法库兼容的分析能力。此外也提供了丰富的图学习算法包,内置支持 Graph

5大典型模型测试单机训练速度超对标框架,飞桨如何做到

10-28

导读:飞桨(PaddlePaddle)致力于让深度学习技术的创新与应用更简单。在单机训练速度方面,通过高并行、低开销的异步执行策略和高效率的核心算子,优化静态图训练性能,在Paddle Fluid v150的基准测试中,在7个典型模型上进行了测试(图像领域

强化学习经典算法笔记(六):深度Q值网络 Deep Q Network

hhy_csdn的博客

9093

前期回顾 强化学习经典算法笔记(零):贝尔曼方程的推导 强化学习经典算法笔记(一):价值迭代算法Value Iteration 强化学习经典算法笔记(二):策略迭代算法Policy Iteration 强化学习经典算法笔记(三):蒙特卡罗方法Monte Calo Method 强化学习经典算法笔记(四):时间差分算法Temporal Difference(Q-Learning算法) 强化学习经典算

GraphX和GraphFrame connectedComponent计算性能对比

高臭臭的博客

3046

测试文件:用Graph rmatGraph 1000000 2000000 去重后 494587个点,1997743个边 运行环境:三台服务器,246 GB,core 71 测试三个运行例子1:Graph connectedComponents 2:GraphFrame connectedComponents 3:GraphFrame connectedComponents setAlgor

network、伪代码、算法理解、代码实现、tensorboard

11-3

定义一个q_network函数来构建Q network,输入游戏状态Q network并得到对所有动作的Q值。 网络构成给为三个带有池化的卷积层和一个全连接层。 tfreset_default_graph()defq_network(X,name_scope):# Initialize layersinitializer=tf

读书笔记机器学习实战第十一章:训练深度神经网络

MJ_Lee的博客

612

阅读书籍为《Hands-On Machine Learning with Scikit-Learn & TensorFlow》王静源等翻译的中文译版《机器学习实战,基于 Scikit-Learn 和 TensorFlow》,本文中所有均来自于书籍相关部分截图。 本章介绍了DNN训练过程中三个常见问题,并依次给出解决方案。 章节的最后还给出当不知道如何DNN训练时一些属性可以选的比较好的

Networkx 计算网络效率

tengqingyong的博客

5860

本人在计算网络效率的时候遇到了一个问题 networkx 提供了最短路径函数shortest_path及shorest_path_length 我在计算网络效率构造了一个无向图,但是我在计算点与点之间的最短路径长度时总是提示我说点不存在图中, 我在上面使用nxaverage_shortest_path_length(UG)的时候可以得到网络平均最短路径长度;这个说明我的点都

Pandas/networkx图分析简单入门

weixin_34306676的博客

516

对于图论而言,大家或多或少有些了解,数学专业或计算机相关专业的读者可能对其更加清楚。图论中的图像是由若干给定的点及连接两点的线所构成的图形,这样的图像通常用来描述某些事物之间的某种特定关系,用点代表事物,用两点之间的连接线表示二者具有的某种关系,在互联网与通信行业中应用广泛。图论分析(Graph analysis)并不是数据科学领域中的新分

networkx--四种网络模型

weixin_30764883的博客

380

NetworkX提供了4种常见网络的建模方法,分别是:规则图,ER随机图,WS小世界网络和BA无标度网络。 一 规则图 规则图差不多是最没有复杂性的一类图,random_graphsrandom_regular_graph(d, n)方法可以生成一个含有n个节点,每个节点有d个邻居节点的规则图。 下面一段示例代码,生成了包含20个节点、每个节点有3个邻居的规则

igraph/networkx学习笔记之…

nuoline的专栏

1万+

原文地址:—— 数据结构">igraph/networkx学习笔记之一 —— 数据结构作者:zhengw789 首先,基本上所有的graph library都有其局限性,不同的数据结构有优点的同时必然有缺点,图算法对数据结构的依赖性构成另一个原因。所以如果是想用一个工具包解决所有的问题显然是一种奢望,很多时候甚至必须要从头写自己的代码。但是阅读igraph和networkx这样成型了的函数库对熟悉

python下的复杂网络编程包networkx的使用(摘抄)

weixin_30631587的博客

2335

原文:>

2、字长:指计算机的运算部件能同时处理的二进制数据的位数,它与计算机的功能和用途有很大的关系。

3、内核数:指CPU 内执行指令的运算器和控制器的数量。

4、内存容量:指内存储器中能存储信息的总字节数。一般来说,内存容量越大,计算机的处理速度越快

5、运算速度:单位时间内执行的计算机指令数。单位有MIPS(Million Instructions Per Second,每秒106 条指令;BIPS(Billion Instructions Per Second,每秒109 条指令)。

6、其它性能指标:机器的兼容性、系统的可靠性、系统的可维护性等,另外,性能价格比也是一项综合性的评价计算机性能的指标。

扩展资料

计算机按其性能、结构、技术特点等可分为:

1、单片机:将微处理器(CPU)、一定容量的存储器以及 I/O 接口电路等集成在一个芯片上,就构成了单片机。

2、单板机:将微处理器、存储器、I/O 接口电路安装在一块印刷电路板上,就成为单板机。

3、PC(Personal Computer,个人计算机):供单个用户使用的微机一般称为 PC,是目前使用最多的一种微机。

4、便携式微机:便携式微机大体包括笔记本计算机和个人数字助理。

参考资料来源:百度百科-性能指标

1、信息管理

信息管理是以数据库管理系统为基础,辅助管理者提高决策水平,改善运营策略的计算机技术。信息处理具体包括数据的采集、存储、加工、分类、排序、检索和发布等一系列工作。信息处理已成为当代计算机的主要任务。

2、过程控制

过程控制是利用计算机实时采集数据、分析数据,按最优值迅速地对控制对象进行自动调节或自动控制。采用计算机进行过程控制,不仅可以大大提高控制的自动化水平,而且可以提高控制的时效性和准确性,从而改善劳动条件、提高产量及合格率。因此,计算机过程控制已在机械、冶金、石油、化工、电力等部门得到广泛的应用。

3、辅助技术

计算机辅助设计是利用计算机系统辅助设计人员进行工程或产品设计,以实现最佳设计效果的一种技术。CAD技术已应用于飞机设计、船舶设计、建筑设计、机械设计、大规模集成电路设计等。采用计算机辅助设计,可缩短设计时间,提高工作效率,节省人力、物力和财力,更重要的是提高了设计质量。

4、翻译

1947年,美国数学家、工程师沃伦·韦弗与英国物理学家、工程师安德鲁·布思提出了以计算机进行翻译(简称“机译”)的设想,机译从此步入历史舞台,并走过了一条曲折而漫长的发展道路。机译被列为21世纪世界十大科技难题。与此同时,机译技术也拥有巨大的应用需求。

5、多媒体应用

随着电子技术特别是通信和计算机技术的发展,人们已经有能力把文本、音频、视频、动画、图形和图像等各种媒体综合起来,构成一种全新的概念—“多媒体”(Multimedia)。在医疗、教育、商业、银行、保险、行政管理、军事、工业、广播、交流和出版等领域中,多媒体的应用发展很快。

6、计算机网络

计算机网络是由一些独立的和具备信息交换能力的计算机互联构成,以实现资源共享的系统。计算机在网络方面的应用使人类之间的交流跨越了时间和空间障碍。计算机网络已成为人类建立信息社会的物质基础,它给我们的工作带来极大的方便和快捷,如在全国范围内的银行xyk的使用,火车和飞机票系统的使用等。

扩展资料:

计算机的特点:

1、运算速度快:计算机内部电路组成,可以高速准确地完成各种算术运算。当今计算机系统的运算速度已达到每秒万亿次,微机也可达每秒亿次以上,使大量复杂的科学计算问题得以解决。

2、计算精确度高:科学技术的发展特别是尖端科学技术的发展,需要高度精确的计算。计算机控制的导d之所以能准确地击中预定的目标,是与计算机的精确计算分不开的。

3、逻辑运算能力强:计算机不仅能进行精确计算,还具有逻辑运算功能,能对信息进行比较和判断。计算机能把参加运算的数据、程序以及中间结果和最后结果保存起来,并能根据判断的结果自动执行下一条指令以供用户随时调用。

4、存储容量大:计算机内部的存储器具有记忆特性,可以存储大量的信息,这些信息,不仅包括各类数据信息,还包括加工这些数据的程序。

5、自动化程度高:由于计算机具有存储记忆能力和逻辑判断能力,所以人们可以将预先编好的程序组纳入计算机内存,在程序控制下,计算机可以连续、自动地工作,不需要人的干预。

参考资料来源:百度百科-计算机

运算速度是衡量计算机性能的一项重要指标。通常所说的计算机运算速度(平均运算速度),单字长定点指令平均执行速度MIPS(Million Instructions Per Second)的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。

计算机系统指用于数据库管理的计算机硬软件及网络系统。数据库系统需要大容量的主存以存放和运行 *** 作系统、数据库管理系统程序、应用程序以及数据库、目录、系统缓冲区等,而辅存则需要大容量的直接存取设备。

CPU相当于计算机的心脏,它会调配系统性能,主次关系

到了晶体管计算机时期(1959~1964),主存储器均采用磁心存储器,磁鼓和磁盘开始用作主要的辅助存储器。不仅科学计算用计算机继续发展,而且中、小型计算机,特别是廉价的小型数据处理用计算机开始大量生产。

1964年,在集成电路计算机发展的同时,计算机也进入了产品系列化的发展时期。半导体存储器逐步取代了磁心存储器的主存储器地位,磁盘成了不可缺少的辅助存储器,并且开始普遍采用虚拟存储技术。随着各种半导体只读存储器和可改写的只读存储器的迅速发展,以及微程序技术的发展和应用,计算机系统中开始出现固件子系统。

20世纪70年代以后,计算机用集成电路的集成度迅速从中小规模发展到大规模、超大规模的水平,微处理器和微型计算机应运而生,各类计算机的性能迅速提高。随着字长4位、8位、16位、32位和64位的微型计算机相继问世和广泛应用,对小型计算机、通用计算机和专用计算机的需求量也相应增长了。

微型计算机在社会上大量应用后,一座办公楼、一所学校、一个仓库常常拥有数十台以至数百台计算机。实现它们互连的局部网随即兴起,进一步推动了计算机应用系统从集中式系统向分布式系统的发展。

在电子管计算机时期,一些计算机配置了汇编语言和子程序库,科学计算用的高级语言FORTRAN初露头角。在晶体管计算机阶段,事务处理的COBOL语言、科学计算机用的ALGOL语言,和符号处理用的LISP等高级语言开始进入实用阶段。 *** 作系统初步成型,使计算机的使用方式由手工 *** 作改变为自动作业管理。

进入集成电路计算机发展时期以后,在计算机中形成了相当规模的软件子系统,高级语言种类进一步增加, *** 作系统日趋完善,具备批量处理、分时处理、实时处理等多种功能。数据库管理系统、通信处理程序、网络软件等也不断增添到软件子系统中。软件子系统的功能不断增强,明显地改变了计算机的使用属性,使用效率显著提高。

在现代计算机中,外围设备的价值一般已超过计算机硬件子系统的一半以上,其技术水平在很大程度上决定着计算机的技术面貌。外围设备技术的综合性很强,既依赖于电子学、机械学、光学、磁学等多门学科知识的综合,又取决于精密机械工艺、电气和电子加工工艺以及计量的技术和工艺水平等。

外围设备包括辅助存储器和输入输出设备两大类。辅助存储器包括磁盘、磁鼓、磁带、激光存储器、海量存储器和缩微存储器等;输入输出设备又分为输入、输出、转换、、模式信息处理设备和终端设备。在这些品种繁多的设备中,对计算机技术面貌影响最大的是磁盘、终端设备、模式信息处理设备和转换设备等。

新一代计算机是把信息采集存储处理、通信和人工智能结合在一起的智能计算机系统。它不仅能进行一般信息处理,而且能面向知识处理,具有形式化推理、联想、学习和解释的能力,将能帮助人类开拓未知的领域和获得新的知识。

计算技术在中国的发展 在人类文明发展的历史上中国曾经在早期计算工具的发明创造方面写过光辉的一页。远在商代,中国就创造了十进制记数方法,领先于世界千余年。到了周代,发明了当时最先进的计算工具——算筹。这是一种用竹、木或骨制成的颜色不同的小棍。计算每一个数学问题时,通常编出一套歌诀形式的算法,一边计算,一边不断地重新布棍。中国古代数学家祖冲之,就是用算筹计算出圆周率在31415926和31415927之间。这一结果比西方早一千年。

珠算盘是中国的又一独创,也是计算工具发展史上的第一项重大发明。这种轻巧灵活、携带方便、与人民生活关系密切的计算工具,最初大约出现于汉朝,到元朝时渐趋成熟。珠算盘不仅对中国经济的发展起过有益的作用,而且传到日本、朝鲜、东南亚等地区,经受了历史的考验,至今仍在使用。

中国发明创造指南车、水运浑象仪、记里鼓车、提花机等,不仅对自动控制机械的发展有卓越的贡献,而且对计算工具的演进产生了直接或间接的影响。例如,张衡制作的水运浑象仪,可以自动地与地球运转同步,后经唐、宋两代的改进,遂成为世界上最早的天文钟。

记里鼓车则是世界上最早的自动计数装置。提花机原理刘计算机程序控制的发展有过间接的影响。中国古代用阳、阴两爻构成八卦,也对计算技术的发展有过直接的影响。莱布尼兹写过研究八卦的论文,系统地提出了二进制算术运算法则。他认为,世界上最早的二进制表示法就是中国的八卦。

经过漫长的沉寂,新中国成立后,中国计算技术迈入了新的发展时期,先后建立了研究机构,在高等院校建立了计算技术与装置专业和计算数学专业,并且着手创建中国计算机制造业。

1958年和1959年,中国先后制成第一台小型和大型电子管计算机。60年代中期,中国研制成功一批晶体管计算机,并配制了ALGOL等语言的编译程序和其他系统软件。60年代后期,中国开始研究集成电路计算机。70年代,中国已批量生产小型集成电路计算机。80年代以后,中国开始重点研制微型计算机系统并推广应用;在大型计算机、特别是巨型计算机技术方面也取得了重要进展;建立了计算机服务业,逐步健全了计算机产业结构。

在计算机科学与技术的研究方面,中国在有限元计算方法、数学定理的机器证明、汉字信息处理、计算机系统结构和软件等方面都有所建树。在计算机应用方面,中国在科学计算与工程设计领域取得了显著成就。在有关经营管理和过程控制等方面,计算机应用研究和实践也日益活跃。

运算速度:是个综合性的指标,单位为MIPS(百万条指令/秒)。影响运算速度的因素,主要是主频和存取周期,字长和存储容量也有影响。 其他指标:机器的兼容性(包括数据和文件的兼容、程序兼容、系统兼容和设备兼容)、系统的可靠性(平均无故障工作时间MTBF)、系统的可维护性(平均修复时间MTTR)、机器允许配置的外部设备的最大数目、计算机系统的汉字处理能力、数据库管理系统及网络功能等。性能/价格比是一项综合性评价计算机性能的指标。

以上就是关于NetworkX和Graphscope哪个运算速度更快全部的内容,包括:NetworkX和Graphscope哪个运算速度更快、评价计算机的性能指标有哪些、计算机的应用领域分为哪六个方面等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9733214.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存