云计算之GPUs共享
发布时间:2022-10-28 12:49:15 所属栏目:系统 来源:
导读: 前言
云计算(Cloud Computing)是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强
云计算(Cloud Computing)是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强
|
前言 云计算(Cloud Computing)是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸、预测气候变化和市场发展趋势。 一、云计算的原理与应用 1、云计算的简介 背景 云计算(Cloud Computing)是分布式计算、并行计算、效用计算、 网络存储、虚拟化、负载均衡、热备份冗余等传统计算机和网络技术发展融合的产物。 概念 云计算(cloudcomputing)是基于互联网相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。 特点 超大规模、虚拟化、高可靠性、通用性、高可扩展性、按需服务、极其廉价。 2、云计算服务模式 SaaS 【software as a service】 软件即服务 – 用户通过网络租用基于Web的软件使用。(虚拟桌面,在线游戏等) Paas 【platform as a service】 平台即服务 – 指将软件研发的平台作为一种服务。(数据库,开发工具,web服务器,软件运行环境等) IaaS 【infrastructure as a service】 基础架构即服务 – 用户通过网络直接访问底层的计算、存储和网络资源。(虚拟机,服务器,存储空间,网络带宽等) 3、云计算类型 公有云 通常指第三方提供商为用户提供的能够使用的云,公有云的核心属性是共享资源服务。例如:阿里云、腾讯云、百度云等等。 私有云 是为一个客户单独使用而构建的,对数据、安全性和服务质量提供最有效控制。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所,私有云的核心属性是专有资源。 混合云 融合了公有云和私有云的优点。出于安全考虑,企业更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源,,混合云达到了既省钱又安全的目的。 4、云计算与虚拟化 云计算与虚拟化的区别与联系 虚拟化是一种技术,云计算是一种使用模式。 虚拟化是指将物理的实体,通过软件模式,形成若干虚拟存在的系统,其实真是运作还是在实体上,只是划分了若干区域或者时域划分。 云计算的基础是虚拟化,但虚拟化只是云计算的一部分,云计算其实就是在虚拟化出若干资源池以后的应用云系统架构KVM,但虚拟化并不是只对应云计算的。 5、云计算的通用架构 SaaS,软件即服务。简单地说,就是一种通过互联网提供软件服务的软件应用模式。 PaaS,中文名为平台即服务。如果以传统计算机架构中“硬件+操作系统/开发工具+应用软件”的观点来看待,那么云计算的平台层应该提供类似操作系统和开发工具的功能。 IaaS主要包括计算机服务器、通信设备、存储设备等,能够按需向用户提供的计算能力、存储能力或网络能力等IT基础设施类服务,也就是能在基础设施层面提供的服务。 二、GPU加速原理 1、GPU的功能及原理 何为GPU? 显卡的处理器称为图形处理器(GPU),它是显卡的“心脏”,与CPU类似,只不过GPU是专为执行复杂的数学和几何计算而设计的。 GPU计算能力? 现在主流的i7处理器的浮点计算能力是主流的英伟达GPU处理器浮点计算能力的1/12。 GPU在逻辑架构上与CPU的不同 其中Control是控制器、ALU算术逻辑单元、Cache是CPU内部缓存、DRAM就是内存。可以看到GPU设计者将更多的晶体管用作执行单元,而不是像CPU那样用作复杂的控制单元和缓存。从实际来看,CPU芯片空间的5%是ALU,而GPU空间的40%是ALU。这也是导致GPU计算能力超强的原因。 GPU在计算处理上与CPU的不同 CPU需要同时很好的支持并行和串行操作,需要很强的通用性来处理各种不同的数据类型,同时又要支持复杂通用的逻辑判断,这样会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂,计算单元的比重被降低了。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。因此GPU的芯片比CPU芯片简单很多。 2、GPU编程与开发 GPU的编程库 GPU计算能力这么强,被广泛使用!比如挖矿(比特币)、图形图像处理、数值模拟、机器学习算法训练等等,那我们怎么发挥GPU超强的计算能力呢?---编程! Nvidia、AMD、Intel都推出了自己的GPU,其中最为流行的就是Nvidia的GPU,其还推出了CUDA并行编程库。苹果公司推出了标准OpenCL,说各个生产商都支持其标准,只要有一套OpenCL的编程库就能对各类型的GPU芯片适用。 从编程语言角度看,CUDA和OpenCL都是原生支持C/C++的,其它语言想要访问还有些麻烦,比如Java,需要通过JNI来访问CUDA或者OpenCL。基于JNI,现今有各种Java版本的GPU编程库,比如JCUDA等。另一种思路就是语言还是由java来编写,通过一种工具将java转换成C。 3、GPU的加速原理 GPU采用流式并行计算模式,可对每个数据进行独立的并行计算,所谓“对数据进行独立计算”,即,流内任意元素的计算不依赖于其它同类型数据,例如,计算一个顶点的世界位置坐标,不依赖于其他顶点的位置。而所谓“并行计算”是指“多个数据可以同时被使用,多个数据并行运算的时间和1个数据单独执行的时间是一样的”。 三、云计算的虚拟化架构及应用 1、云计算的核心技术全解读 云计算的核心技术 虚拟化技术 虚拟化是云计算最重要的核心技术之一,它为云计算服务提供基础架构层面的支撑,是ICT服务快速走向云计算的最主要驱动力。虚拟化的最大好处是增强系统的弹性和灵活性,降低成本、改进服务、提高资源利用效率。 分布式数据存储技术 为了保证数据的高可靠性,云计算通常会采用分布式存储技术,将数据存储在不同的物理设备中。这种模式不仅摆脱了硬件设备的限制,同时扩展性更好,能够快速响应用户需求的变化。 编程模式 从本质上讲,云计算是一个多用户、多任务、支持并发处理的系统。在分布式并行编程模式中,后台复杂的任务处理和资源调度对于用户来说是透明的,这样用户体验能够大大提升。MapReduce是当前云计算主流并行编程模式之一。 大规模数据管理 云计算不仅要保证数据的存储和访问,还要能够对海量数据进行特定的检索和分析。由于云计算需要对海量的分布式数据进行处理、分析,因此,数据管理技术必需能够高效的管理大量的数据。 分布式资源管理 云计算采用了分布式存储技术存储数据,那么自然要引入分布式资源管理技术。在多节点的并发执行环境中,各个节点的状态需要同步,并且在单个节点出现故障时,系统需要有效的机制保证其它节点不受影响。而分布式资源管理系统恰是这样的技术,它是保证系统状态的关键。 信息安全 现在,不管是软件安全厂商还是硬件安全厂商都在积极研发云计算安全产品和方案。包括传统杀毒软件厂商、软硬防火墙厂商、IDS/IPS厂商在内的各个层面的安全供应商都已加入到云安全领域。 云计算平台管理 云计算系统的平台管理技术,需要具有高效调配大量服务器资源,使其更好协同工作的能力。其中,方便地部署和开通新业务、快速发现并且恢复系统故障、通过自动化、智能化手段实现大规模系统可靠的运营是云计算平台管理技术的关键。 绿色节能技术 节能环保是全球整个时代的大主题。云计算也以低成本、高效率着称。云计算具有巨大的规模经济效益,在提高资源利用效率的同时,节省了大量能源。绿色节能技术已经成为云计算必不可少的技术,未来越来越多的节能技术还会被引入云计算中来。 2、Hypervisor虚拟技术 Hypervisor直接在安装在宿主机的逻辑上: Hypervisor安装在宿主机的操作系统上: 3、KVM的架构 KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是一个 Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor。KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件的开源的 Linux 原生的全虚拟化解决方案。KVM 中,虚拟机被实现为常规的 Linux 进程,由标准 Linux 调度程序进行调度;虚机的每个虚拟 CPU 被实现为一个常规的 Linux 进程。这使得 KMV 能够使用 Linux 内核的已有功能。 但是,KVM 本身不执行任何硬件模拟,需要客户空间程序通过 /dev/kvm 接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的 I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序是 QEMU。 4、KVM的优势 嵌入到Linux的Kernel中 (提高兼容性) 代码级资源调用(提高性能) 虚拟机就是一个进程 直接支持MUMA技术 备注:直接支持MUMA技术(NUMA(Non Uniform Memory Access Architecture)技术可以使众多服务器像单一系统那样运转,同时保留小系统便于编程和管理的优点。) 总结 通过虚拟化技术的应用,可以很好的将GPU进行虚拟化实现,并完成GPU资源共享,解决大多数部署方案中资源冗余和分配不合理的情况。 (编辑:百客网 - 域百科网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


