CN103279445A - 运算任务的计算方法及超算系统 - Google Patents

运算任务的计算方法及超算系统 Download PDF

Info

Publication number
CN103279445A
CN103279445A CN2012103655523A CN201210365552A CN103279445A CN 103279445 A CN103279445 A CN 103279445A CN 2012103655523 A CN2012103655523 A CN 2012103655523A CN 201210365552 A CN201210365552 A CN 201210365552A CN 103279445 A CN103279445 A CN 103279445A
Authority
CN
China
Prior art keywords
gpu
cpu
calculation
cpu module
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012103655523A
Other languages
English (en)
Inventor
伊露
宋应文
范志刚
张嘉璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Advanced Research Institute of CAS
Original Assignee
Shanghai Advanced Research Institute of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Advanced Research Institute of CAS filed Critical Shanghai Advanced Research Institute of CAS
Priority to CN2012103655523A priority Critical patent/CN103279445A/zh
Publication of CN103279445A publication Critical patent/CN103279445A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明公开了一种运算任务的计算方法,所述计算由一超算系统来执行,所述超算系统的操作系统根据CPU的空闲情况确定运行运算任务的本地CPU模块,所述本地CPU模块将所述运算任务按照预设的规则分割成多个计算任务并分配到多个CPU模块中,所述每个CPU模块将所述每个计算任务按预设的规则进行本地分割,并分配到该CPU模块对应的本地多个GPU模块进行并行计算,后将所述本地多个GPU模块计算结果进行合并操作;最后,由本地CPU模块再将所述每个CPU模块的计算结果进行合并操作,完成运算任务。本发明的方法,实现了CPU和GPU的协作,更快的完成运算任务。

Description

运算任务的计算方法及超算系统
技术领域
本发明涉及一运算任务的计算方法。本发明还涉及一种超算系统。
背景技术
GPU模块(简称GPU)利用图形处理单元,运行应用程序的并行部分,从而达到比标准CPU模块(简称CPU)速度快很多倍的先进功能。因为GPU能提供给高性能计算程序更快的运行,如生物学,物理学,地震数据处理,金融和其他学科等领域的计算问题,GPU加速已经获得了在高性能计算数据中心的大量应用。
图形处理器通用计算技术GPGPU(General-purpose computing ongraphics processing units),是一种利用处理图形任务的图形处理器来计算原本由中央处理器处理的通用计算任务。这些通用计算常常与图形处理没有任何关系。由于现代图形处理器强大的并行处理能力和可编程流水线,令流处理器可以处理非图形数据。特别在面对单指令流多数据流(SIMD),且数据处理的运算量远大于数据调度和传输的需要时,通用图形处理器在性能上大大超越了传统的中央处理器应用程序。
HPCWire网站在2008年12月刊登了一篇关于开发者工具的文章《Heterogeneous Compilers Ready for Takeoff》,主要讲GPGPU平台上开发工具的第二次浪潮,代表是PGI和CAPS的工具,可以让C和Fortran程序员简单的利用GPU加速。
有很多并行化处理应用(比如视频处理,信号处理,石油勘探软件等),GPU+CPU的异构编程比CPU呈现更好的性能和可扩展性,但是GPU编程并不容易。比如NVIDIA Tesla M2090包含512个CUDA核心,如何让开发者更好的利用这么多处理器进行并行编程是个难题。NVIDIA设计了CUDA模型来简化GPU编程,提高生产力,但是开发者仍然要熟悉GPU硬件的线程模型以及底层设备的管理。OpenCL是苹果公司在2008年提出的用于在异构平台上进行并行编程的开放标准,NVIDIA和AMD公司的GPU产品都提供了符合OpenCL标准的API。但是这些编程接口仍然比较底层,目前一些新的语言对CUDA和OpenCL进行了高层抽象,以隐藏硬件底层细节。
为了让程序员能够更轻松地利用并行计算,英伟达、Cray、PortlandGroup(PGI)以及CAPS等企业2011年11月发布了一个全新的并行编程标准OpenACC。OpenACC最初由PGI、Cray以及英伟达共同开发并得到了CAPS的支持,它是一种全新的并行编程标准,旨在让科学和技术编程人员能够轻松利用CPU/GPU异构计算系统革命性的强大能力。OpenACC让并行编程人员能够向编译器提供简单的提示,这种提示被称作“指令”,其用途是识别需要加速的代码,同时不需要编程人员修改或改编底层代码本身。通过向编译器展示并行机制,指令让编译器能够将计算任务映射到加速器上、执行这方面的详细工作。OpenACC预计将让诸多领域中的各种程序员从中受益,其中包括化学、生物学、物理学、数据分析、天气与气候以及情报等领域。Cray、PGI以及CAPS现有的编译器预计将从2012年第一季度开始提供针对OpenACC标准的初始支持。OpenACC标准完全兼容英伟达(NVIDIA)CUDA并行编程架构并能够与之互操作,该架构让程序员能够控制加速器的各个细节,以便实现最大限度的性能调整。
2011年,在AMD Fusion开发者峰会上,微软拿出了自己的异构计算编程语言:“C++AMP(accelerated massive parallelism)”。C++AMP是微软Visual Studio和C++编程语言的新扩展包,用于辅助开发人员充分适应现在和未来的高度并行和异构计算环境。它使用C++语言的句法,将捆绑在下个版本的Visual Studio 11中发布。为了与OpenCL相抗衡,微软宣布C++AMP标准将是一种开放的规范,允许其它编译器集成和支持。这无疑是对OpenCL的最直接挑战。
在硬件方面,各厂商也已经在异构GPU平台取得一些成就。NVIDIA在2011正式发布了面向企业、个人工作站的新整体解决方案:Maximus。Maximus将成为继GeForce/Verde之后,NVIDIA Quadro和Tesla专业显卡/加速卡驱动及解决方案的统一名称。从硬件层面上来说,Maximus可采用任意Quadro专业显卡+Tesla系列加速卡组成,类似于笔记本电脑中Intel HD Graphics显卡与NVIDIA GeForce独显组成的Optimus解决方案。软件层面也与Optimus类似:Maximus也会在驱动中智能分配任务负载,能采用CUDA加速的代码全部分配给Tesla处理,其余OpenGL或DirectX代码仍由Quadro负责。当然,高端Quadro显卡在这两点上都可以轻松应对,但不能同时进行两项工作。目前已经有多种专业应用软件支持Maximus技术,包括Adobe Premiere Pro,Autodesk 3DS Max,Matlab等,用户可自由选择或交由驱动分配负载。
APU(Accelerated Processing Unit)中文名字叫加速处理器,是AMD融聚理念的产品,它第一次将处理器和独显核心做在一个晶片上,它同时具有高性能处理器和最新独立显卡的处理性能,支持DX11游戏和最新应用的“加速运算”,大幅提升电脑运行效率,实现了CPU与GPU真正的融合。2011年1月,AMD推出一款革命性的产品AMD APU,是AMD Fusion技术的首款产品。2011年6月面向主流市场的Llano APU正式发布。说到底,APU将通用运算x86架构CPU核心和可编程矢量处理引擎相融合,把CPU擅长的精密标量运算与传统上只有GPU才具备的大规模并行矢量运算结合起来。AMD APU设计综合了CPU和GPU的优势,为软件开发者带来前所未有的灵活性,能够任意采用最适合的方式开发新的应用。AMD APU通过一个高性能总线,在单个硅片上把一个可编程x86CPU和一个GPU的矢量处理架构连为一体,双方都能直接读取高速内存。AMD APU中还包含其他一些系统成分,比如内存控制器、I/O控制器、专用视频解码器、显示输出和总线接口等。AMD APU的魅力在于它们内含由标量和矢量硬件构成的全部处理能力。
此外,多核处理器中有一类混合架构处理器,即同一块芯片上集成了中央处理单元和图形处理单元,如英特尔的Sandy Bridge和AMD的Llano系列处理器。然而在这些混合处理器中,CPU核心和GPU核心都执行各自的功能,在运行程序时很少有协作,因此效率不高。
发明内容
本发明要解决的技术问题是提供一种CPU和GPU协作的方法,以达到快算运算的目的。
为解决上述技术问题,本发明的运算任务的计算方法,其由一超算系统来执行,所述超算系统包括多个网络连接的超算装置,所述每个超算装置包括多个CPU模块和多个GPU模块,所述超算系统的操作系统根据所述CPU的空闲情况确定运行运算任务的本地CPU模块,所述本地CPU模块将所述运算任务按照预设的规则分割成多个计算任务并分配到多个CPU模块中;所述每个CPU模块将所述每个计算任务按预设的规则进行本地分割,并分配到该CPU模块对应的本地多个GPU模块进行并行计算,后将所述本地多个GPU模块计算结果进行合并操作;最后,所述本地CPU模块再将所述每个CPU模块的计算结果进行合并操作,完成所述运算任务。
本发明还提供一种超算系统,其包括多个网络连接的超算装置,所述每个超算装置包括多个相互通讯的CPU模块和多个GPU模块,所述超算系统的操作系统根据所述CPU的空闲情况确定运行运算任务的本地CPU模块;所述每个CPU模块将所述每个计算认为按预设规则进行本地分割,并分配到该CPU模块对应的本地多个GPU模块进行并行计算,后将所述本地多个GPU模块的计算结果进行合并操作;最后,所述本地CPU模块再将所述每个CPU模块的计算结果进行合并操作,完成所述运算任务。
本发明的计算方法,通过每个CPU模块对欲计算任务进行本地分割并分配到本地多个GPU来并行计算,最后合并结果的方式,使多CPU和GPU共同完成同一运算任务,该架构可以充分利用GPU众核的并行处理能力,实现大数据量的快速并行计算。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1为本发明超算系统的示意图;
图2为本发明超算系统的编译运行流程图;
图3为本发明的MGM库的调用示意图;
图4为采用本发明的超算系统计算运行任务的一个实例。
具体实施方式
本发明提供一种CPU与GPU混合的超算系统,所述超算系统(图1)包括多个超算装置,这些超算装置之间通过网络组成一个集群,每个装置内是有多个CPU与多个GPU的主板,装置内CPU与GPU一般经北桥,通过AGP或者PCI-E总线连接,各自有独立的外部存储器,分别是内存和显存。任务分割是将一个任务按负载平衡的方式分配给各线程互相配合完成。CPU除了负责操作系统、系统软件和通用应用程序等通用处理任务外,还负责调度分割每个全系统的并行计算作业,以及负责调度分割每个本地(即任务运行所在的CPU)所对应的GPU并行计算作业;而GPU负责分配给自己的大规模数据的并行计算处理,多个GPU模块之间共享同一内存(即图1中所示的GPU存储器,统一虚拟寻址),CPU与GPU两者共同协同完成同一大规模并行计算应用。
超算装置之间可以通过网络互相通信,超算装置内的多CPU间通过总线通信并进行计算,超算装置内的多GPU间通过统一的共享内存交换数据并进行计算;由高速串行总线连接GPU与CPU,通过CPU的内存和GPU的共享内存交换计算数据,该架构可以充分利用GPU众核的并行处理能力,实现大数据量的快速并行计算。
其次,基于上述硬件上,本发明涉及一种GPU中并行数据处理的方法以及使用。具体来说,是个在超算装置负责管理的节点和超算装置负责计算的节点之间的框架。
本发明自主开发了一个MGM库,该MGM库能支持多GPU程序的调度和单GPU程序的直接执行,它分配任务到不同GPU加速设备上。本发明的编译运行流程见图2。MGM库的并行执行使用fork-join模型:任何运算任务以单进程的方式启动,直到发现一个并行区域,在这个时候,本地线程先按参数(即GPU模块个数,自定义的共同线程组名字)创建一个线程组,并成为线程组的父线程,之后线程组中除父线程外的每个线程继续执行(即对应的GPU开始并行执行程序),具体为:实现对应GPU的初始化上下文,为下面的计算做好初始化准备;GPU并行执行程序具体为:先分配需要的内存,用户自己的程序分割自己的数据,MGM把对应的数据传到对应的GPU中(此时完成了本地的作业分割),GPU再根据用户自己的程序开始对这些数据进行对应的计算;直到所有线程的并行区域结束,此时MGM按参数(即GPU模块个数,自定义的共同线程组名字,以及合并操作类型)做合并操作,具体实现为:把各个GPU算出的结果从GPU内存回传到主机内存,并根据合并操作类型,对结果进行合并,最后清除上下文和相关的GPU内存。在计算前,运算任务这个程序需要做少量修改,以适应MGM运行的需要,具体修改如下:
1.首先要有MGM相对于C实现的头文件mgm.h
2.定义程序中所需要的与MGM有关的变量,如记录某一个并行执行进程的标识和所有参加计算的进程的个数等。
3.MGM程序的开始和结束必须是MGM_Init和MGM_Finalize,2个要配对出现,分别完成MGM程序的初始化和结束工作。其中MGM_Init完成MGM程序的初始化,就是用已知的CUDA技术初始化GPU的上下文。
4.MGM程序的程序体包括各种MGM过程调用语句,和一般的C程序不同的是这些程序体中的执行语句是并行执行的,每一个进程都要执行。这部分的主要工作就是对欲在本地多GPU执行的计算本地分割。
在执行运算任务的过程中:
1.MGM包括一个自己开发的工具,该工具封装mpirun(为MPI自带的小工具)的提交作业方式(见图3),即在mpirun的其他参数基础上增加GPU个数参数(或从环境变量取得GPU个数);
2.在超算装置的运行平台上,用该自己的工具提交可执行程序至超算装置,并由用户自定义参加预算任务的CPU模块和GPU模块的个数;
3.按MPI的构架,本地CPU对于要进行并行计算的地方先按预设的规则进行分割,并分配多个计算节点,即分配到多个CPU上;
4.在每个CPU上,对于该CPU上预并行计算的任务,用MGM库再次进行本地分割,并进行预调度,分配到该CPU对应的本地多GPU上,再进行必要的初始化,即:对欲进行操作GPU的函数调用,分配可用的多机GPU,并创建多机GPU的上下文,以及可能的初始化工作;
5.GPU计算中,视需要,用MGM库函数进行同步等操作;
6.GPU计算后,视需要,用MGM库函数进行必要的合并操作;
7.运算完成后,卸载MGM库,及运行MGM_Finalize语句,并释放占用的GPU;
8.其他MPI相关操作;
9.直至运算任务完成,程序结束。
参见图4,以“1+2+3+…+10000”的运算任务为例说明本发明的计算方法,
步骤1:用户通过自定义窗口输入参与运算的CPU个数为2个和GPU个数为4个。操作系统按空闲状态确定本地CPU,本地CPU通过参数判断,决定调用CPU个数和每个CPU对应的GPU个数。
步骤2:利用现有的MPI工具,本地CPU将上述运算任务按照预设规则(可以是均分,也可以是其他任何适合的规则)分割成“1+2++…+5000”和“5001+5002+…+10000”两个计算任务,并分配到CPU0和CPU1执行。
步骤3:CPU0和CPU1在接到运算任务后,分别通过MGM库将计算任务按预设规则进行分割和分配。CPU0将计算任务分割成“1+2++…+5000”和“2501+2502++…+5000”,并分配给GPU0和GPU1;CPU1将计算任务分割成“5001+5002++…+7500”和“7501+7502++…+10000”,并分配给GPU2和GPU3。
步骤3:GPU0和GPU1在接到运算任务并初始化后,进行并行运算,并在运算结束后,输出运算结果到CPU0,由其进行合并操作,得到“1+2++…+5000”的计算结果。同样,GPU2和GPU3并行运算,并输出运算结果到CPU1,由其合并操作,得到“5001+5002+…+10000”的计算结果。
步骤4:最后将CPU0和CPU1的计算结果合并操作,得到“1+2+3+…+10000”的计算结果。卸载MGM库,并释放占用的CPU和GPU。

Claims (13)

1.一种运算任务的计算方法,所述计算由一超算系统来执行,所述超算系统包括多个网络连接的超算装置,所述每个超算装置包括多个CPU模块和多个GPU模块,所述超算系统的操作系统根据CPU的空闲情况确定运行运算任务的本地CPU模块,所述本地CPU模块将所述运算任务按照预设的规则分割成多个计算任务并分配到多个CPU模块中,其特征在于:
所述每个CPU模块将所述每个计算任务按预设的规则进行本地分割,并分配到该CPU模块对应的本地多个GPU模块进行并行计算,后将所述本地多个GPU模块计算结果进行合并操作;最后,所述本地CPU模块再将所述每个CPU模块的计算结果进行合并操作,完成所述运算任务。
2.如权利要求1所述的计算方法,其特征在于:参与运算任务的CPU模块的个数和GPU模块的个数由用户预自定义。
3.如权利要求1所述的计算方法,其特征在于:所述每个计算任务在被编译之前,需要增加头文件;并在程序中增加与GPU相关的变量,同时所述程序中有需要并行执行的语句。
4.如权利要求1至3中任一项所述的计算方法,其特征在于:所述本地CPU模块采用MPI工具进行所述运算任务的分割和分配。
5.如权利4所述的计算方法,其特征在于:所述每个CPU模块本地分割和分配具体为:先以单进程方式启动所述计算任务,直到发现并行区域时,所述每个CPU模块按所述GPU模块的个数创建一个线程组,接着所述线程组中的GPU模块将分配到的数据进行计算,直到所述线程组中的并行区域结束,所述每个CPU模块进行合并操作。
6.如权利要求5所述的计算方法,其特征在于:所述运算任务完成后,所述GPU模块占用的内存被释放。
7.如权利要求1至4中任一项所述的计算方法,其特征在于:所述本地多个GPU模块共享同一内存,并通过所共享的内容进行数据交换。
8.如权利要求6中任一项所述的计算方法,其特征在于:所述本地多个GPU模块共享同一内存,并通过所共享的内容进行数据交换。
9.如权利要求1至4中任一项所述的计算方法,其特征在于:所述多个CPU模块通过高速串行总线连接。
10.一种超算系统,其包括多个网络连接的超算装置,所述每个超算装置包括多个相互通讯的CPU模块和多个GPU模块,所述超算系统的操作系统根据所述CPU的空闲情况确定运行运算任务的本地CPU模块,其特征在于:
所述每个CPU模块将所述每个计算认为按预设规则进行本地分割,并分配到该CPU模块对应的本地多个GPU模块进行并行计算,后将所述本地多个GPU模块的计算结果进行合并操作;最后,所述本地CPU模块再将所述每个CPU模块的计算结果进行合并操作,完成所述运算任务。
11.如权利要求10所述的超算系统,其特征在于:参与运算任务的CPU模块的个数和GPU模块的个数由用户预自定义。
12.如权利要求10所述的超算系统,其特征在于:所述每个计算任务被编译之前,需要增加头文件;并在定义程序中增加与GPU相关的变量,同时所述程序中有需要并行执行的语句。
13.如权利要求10至12中任一项所述的超算系统,其特征在于:所述本地CPU模块采用MPI工具进行所述运算任务的分割和分配。
CN2012103655523A 2012-09-26 2012-09-26 运算任务的计算方法及超算系统 Pending CN103279445A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012103655523A CN103279445A (zh) 2012-09-26 2012-09-26 运算任务的计算方法及超算系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012103655523A CN103279445A (zh) 2012-09-26 2012-09-26 运算任务的计算方法及超算系统

Publications (1)

Publication Number Publication Date
CN103279445A true CN103279445A (zh) 2013-09-04

Family

ID=49061970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012103655523A Pending CN103279445A (zh) 2012-09-26 2012-09-26 运算任务的计算方法及超算系统

Country Status (1)

Country Link
CN (1) CN103279445A (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617088A (zh) * 2013-11-29 2014-03-05 深圳中微电科技有限公司 在处理器不同类型线程中分配内核资源的方法、装置及其处理器
CN103714039A (zh) * 2013-12-25 2014-04-09 中国人民解放军国防科学技术大学 通用计算数字信号处理器
CN103904648A (zh) * 2014-03-28 2014-07-02 南方电网科学研究院有限责任公司 一种实现电力系统的n-1支路开断的模拟方法
CN104035781A (zh) * 2014-06-27 2014-09-10 北京航空航天大学 一种快速开发异构并行程序的方法
CN105227669A (zh) * 2015-10-15 2016-01-06 浪潮(北京)电子信息产业有限公司 一种面向深度学习的cpu与gpu混合的集群架构系统
CN105793839A (zh) * 2013-12-20 2016-07-20 英特尔公司 执行卸载
CN106295670A (zh) * 2015-06-11 2017-01-04 腾讯科技(深圳)有限公司 数据处理方法及数据处理装置
CN106489132A (zh) * 2014-09-19 2017-03-08 华为技术有限公司 读写数据的方法、装置、存储设备和计算机系统
CN106648900A (zh) * 2016-12-28 2017-05-10 深圳Tcl数字技术有限公司 基于智能电视的超算方法及系统
CN106686352A (zh) * 2016-12-23 2017-05-17 北京大学 多gpu平台的多路视频数据的实时处理方法
CN106980533A (zh) * 2016-01-18 2017-07-25 杭州海康威视数字技术股份有限公司 基于异构处理器的任务调度方法、装置及电子设备
CN108021436A (zh) * 2017-12-28 2018-05-11 辽宁科技大学 一种进程调度方法
CN108170526A (zh) * 2017-12-06 2018-06-15 北京像素软件科技股份有限公司 负载能力优化方法、装置、服务器及可读存储介质
CN108874518A (zh) * 2018-05-21 2018-11-23 福建省数字福建云计算运营有限公司 一种任务调度方法及终端
CN109522185A (zh) * 2018-11-19 2019-03-26 江苏镭博智能科技有限公司 一种模型分割提高运算速度的方法
CN109726626A (zh) * 2018-09-27 2019-05-07 合肥博焱智能科技有限公司 基于gpu的人脸识别系统
CN109922319A (zh) * 2019-03-26 2019-06-21 重庆英卡电子有限公司 基于多核cpu的rtsp协议多视频流并行预处理方法
CN109933429A (zh) * 2019-03-05 2019-06-25 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN112259168A (zh) * 2020-10-22 2021-01-22 深圳华大基因科技服务有限公司 基因测序数据处理方法和基因测序数据处理装置
WO2021063026A1 (zh) * 2019-09-30 2021-04-08 华为技术有限公司 一种推理服务网络化的方法及装置
JP7393439B2 (ja) 2020-10-22 2023-12-06 ビージーアイ ジェノミクス カンパニー リミテッド 遺伝子シークエンシングデータ処理方法及び遺伝子シークエンシングデータ処理装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526934A (zh) * 2009-04-21 2009-09-09 浪潮电子信息产业股份有限公司 一种gpu与cpu复合处理器的组建方法
US20100186017A1 (en) * 2009-01-21 2010-07-22 Raghavendra Eeratta System and method for medical image processing
US20110211036A1 (en) * 2010-02-26 2011-09-01 Bao Tran High definition personal computer (pc) cam

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100186017A1 (en) * 2009-01-21 2010-07-22 Raghavendra Eeratta System and method for medical image processing
CN101526934A (zh) * 2009-04-21 2009-09-09 浪潮电子信息产业股份有限公司 一种gpu与cpu复合处理器的组建方法
US20110211036A1 (en) * 2010-02-26 2011-09-01 Bao Tran High definition personal computer (pc) cam

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈维: "有限单元并行计算方法在地震波动模拟中的应用", 《中国优秀硕士学位论文全文数据库基础科学辑》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617088B (zh) * 2013-11-29 2018-07-24 深圳中微电科技有限公司 在不同类型线程中分配内核资源的方法、装置及其处理器
CN103617088A (zh) * 2013-11-29 2014-03-05 深圳中微电科技有限公司 在处理器不同类型线程中分配内核资源的方法、装置及其处理器
CN105793839B (zh) * 2013-12-20 2019-08-06 英特尔公司 执行卸载
CN105793839A (zh) * 2013-12-20 2016-07-20 英特尔公司 执行卸载
CN103714039A (zh) * 2013-12-25 2014-04-09 中国人民解放军国防科学技术大学 通用计算数字信号处理器
CN103904648A (zh) * 2014-03-28 2014-07-02 南方电网科学研究院有限责任公司 一种实现电力系统的n-1支路开断的模拟方法
CN104035781B (zh) * 2014-06-27 2017-06-23 北京航空航天大学 一种快速开发异构并行程序的方法
CN104035781A (zh) * 2014-06-27 2014-09-10 北京航空航天大学 一种快速开发异构并行程序的方法
CN106489132A (zh) * 2014-09-19 2017-03-08 华为技术有限公司 读写数据的方法、装置、存储设备和计算机系统
CN106489132B (zh) * 2014-09-19 2019-04-19 华为技术有限公司 读写数据的方法、装置、存储设备和计算机系统
US10303474B2 (en) 2014-09-19 2019-05-28 Huawei Technologies Co., Ltd. Data read/write method and apparatus, storage device, and computer system
CN106295670A (zh) * 2015-06-11 2017-01-04 腾讯科技(深圳)有限公司 数据处理方法及数据处理装置
CN106295670B (zh) * 2015-06-11 2020-03-17 腾讯科技(深圳)有限公司 数据处理方法及数据处理装置
CN105227669A (zh) * 2015-10-15 2016-01-06 浪潮(北京)电子信息产业有限公司 一种面向深度学习的cpu与gpu混合的集群架构系统
CN106980533A (zh) * 2016-01-18 2017-07-25 杭州海康威视数字技术股份有限公司 基于异构处理器的任务调度方法、装置及电子设备
CN106686352B (zh) * 2016-12-23 2019-06-07 北京大学 多gpu平台的多路视频数据的实时处理方法
CN106686352A (zh) * 2016-12-23 2017-05-17 北京大学 多gpu平台的多路视频数据的实时处理方法
CN106648900B (zh) * 2016-12-28 2020-12-08 深圳Tcl数字技术有限公司 基于智能电视的超算方法及系统
CN106648900A (zh) * 2016-12-28 2017-05-10 深圳Tcl数字技术有限公司 基于智能电视的超算方法及系统
CN108170526A (zh) * 2017-12-06 2018-06-15 北京像素软件科技股份有限公司 负载能力优化方法、装置、服务器及可读存储介质
CN108021436A (zh) * 2017-12-28 2018-05-11 辽宁科技大学 一种进程调度方法
CN108874518A (zh) * 2018-05-21 2018-11-23 福建省数字福建云计算运营有限公司 一种任务调度方法及终端
CN109726626A (zh) * 2018-09-27 2019-05-07 合肥博焱智能科技有限公司 基于gpu的人脸识别系统
CN109522185A (zh) * 2018-11-19 2019-03-26 江苏镭博智能科技有限公司 一种模型分割提高运算速度的方法
CN109933429A (zh) * 2019-03-05 2019-06-25 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN109922319A (zh) * 2019-03-26 2019-06-21 重庆英卡电子有限公司 基于多核cpu的rtsp协议多视频流并行预处理方法
WO2021063026A1 (zh) * 2019-09-30 2021-04-08 华为技术有限公司 一种推理服务网络化的方法及装置
CN112259168A (zh) * 2020-10-22 2021-01-22 深圳华大基因科技服务有限公司 基因测序数据处理方法和基因测序数据处理装置
JP7393439B2 (ja) 2020-10-22 2023-12-06 ビージーアイ ジェノミクス カンパニー リミテッド 遺伝子シークエンシングデータ処理方法及び遺伝子シークエンシングデータ処理装置

Similar Documents

Publication Publication Date Title
CN103279445A (zh) 运算任务的计算方法及超算系统
CN105487838B (zh) 一种动态可重构处理器的任务级并行调度方法与系统
JP6103647B2 (ja) プロセッサシステム及びアクセラレータ
Giorgi et al. A scalable thread scheduling co-processor based on data-flow principles
CN102147722A (zh) 实现中央处理器和图形处理器功能的多线程处理器及方法
CN102508712A (zh) 异构多核可重构混合系统中的中间件系统及任务执行方法
Koesterke et al. Early experiences with the intel many integrated cores accelerated computing technology
Tian et al. Concurrent execution of deferred OpenMP target tasks with hidden helper threads
Robson et al. Runtime coordinated heterogeneous tasks in Charm++
Sunitha et al. Performance improvement of CUDA applications by reducing CPU-GPU data transfer overhead
US20170371713A1 (en) Intelligent resource management system
Agathos et al. Deploying OpenMP on an embedded multicore accelerator
CN117136354A (zh) 多架构执行图
Tan et al. Optimizing the LINPACK algorithm for large-scale PCIe-based CPU-GPU heterogeneous systems
Nomizu et al. Implementation of xcalablemp device acceleration extention with opencl
Rubini et al. Scheduling analysis from architectural models of embedded multi-processor systems
CN116724292A (zh) 线程组的并行处理
DE102022132008A1 (de) Asynchrone speicherdeallokation
CN116257353A (zh) 用于互操作性的应用编程接口
CN116243921A (zh) 用于修改图代码的技术
Song Analysis on Heterogeneous Computing
Huang et al. Performance optimization of High-Performance LINPACK based on GPU-centric model on heterogeneous systems
Yang et al. The design and implementation of parallel algorithm accelerator based on CPU-GPU collaborative computing environment
Labarta et al. Hybrid Parallel Programming with MPI/StarSs
Ross et al. GPGPU computing for cloud auditing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SHANGHAI ADVANCED RESEARCH INSTITUTE, CHINESE ACAD

Free format text: FORMER OWNER: SHANGHAI ZHONGKE INSTITUTE FOR ADVANCED STUDY

Effective date: 20131111

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20131111

Address after: 201210 Shanghai city Pudong New Area Hartcourt Road No. 99

Applicant after: Shanghai Advanced Research Institute, Chinese Academy of Sciences

Address before: 201210 Shanghai city Pudong New Area Hartcourt Road No. 99

Applicant before: Shanghai Zhongke Institute for Advanced Study

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130904