写点什么

在 GPU 上运行 Hadoop 任务?ParallelX 或许将带来更多帮助

  • 2013-12-31
  • 本文字数:1843 字

    阅读完需:约 6 分钟

在面对大规模计算密集型算法时, MapReduce 范式的表现并不总是很理想。为了解决其瓶颈,一支小型创业团队构建了名为 ParallelX 的产品——它将通过利用 GPU 的运算能力,为 Hadoop 任务带来显著的提升。

ParallelX 的联合创始人 Tony Diepenbrock 表示,这是一个“GPU 编译器,它能够把用户使用 Java 编写的代码转化为 OpenCL,并在亚马逊 AWS GPU 云上运行”。它的最终产品是一项与亚马逊 Elastic MapReduce 类似的服务,只不过不同之处在于它将利用 EC2 GPU 实例类型

毫无疑问,亚马逊并不是唯一一家提供 GPU 服务器的云服务提供商,其他诸如 IBM/Softlayer Nimbix 等公司也提供使用 NVidia GPU 的服务器。然而,当被问起 ParallelX 是否将会支持亚马逊之外的其他不同云服务提供商时,Tony 的答复是“暂时还没有,不过我们将拥有一套 SDK,供使用内部 Hadoop 集群的客户使用。大部分 GPU 云服务提供商在 HPC 云中提供 GPU,但我们希望能够以比较低廉的价格使用云服务中的 GPU。毕竟,这正是 Hadoop 的设计初衷——便宜的商用硬件。”

在更好地理解 ParallelX 编译器能够做哪些事情之前,我们需要了解现在有不同类型的 GPU,它们配备了不同的并行计算平台,例如 CUDA OpenCL 。Tony 提到,ParallelX 所适用的工作场景是“编译器将把 JVM 字节码转换为 OpenCL 1.2 的代码,从而能够通过 OpenCL 编译器编译为 Shader 汇编,以便在 GPU 上运行。现在同样也有一些 FPGA 硬件能够运行 OpenCL 代码,但是要想获得对于广义并行硬件的支持,可能还需要等到未来的某一天。”尽管 ParallelX 并不支持 Java 源代码中的反射或原生调用,它的目标依旧是确保开发者只须要对其 MapReduce 任务的代码进行必要的调整——越少越好。

随着 ParallelX 团队开始研究 I/O-Bound 任务的吞吐量增长,Tony 发现他们的产品“也能够支持实时处理、以 Pig 和 Hive 代码表示的查询,以及针对 I/O Bound 任务的大数据集流。在我们测试中,使用我们的流水线框架,I/O 吞吐几乎能够达到 GPU 计算吞吐能力的水平。”

虽然 ParallelX 团队目前正在专注于针对亚马逊的Hadoop 版本分支的努力,但他们也在规划为其他流行的Hadoop 版本分支(例如 Cloudera’s CDH )进行开发, 而且毫无疑问,在 ParallelX 的环境中,利用这些商业分支对 Hive Pig 进行的诸多改进,将是一件非常有益的事情。

ParallelX 拥有独一无二的演进故事,Tony 在一篇文章中介绍了这个已经持续了2.5 年的史诗般项目的历程:首先起于为某社团开发的一个社交网络,随后是用于Facebook 的Widget 插件,接下来则是一个识别剽窃代码的工具。这些项目拥有一些共性:图解分析与基于GPU 的算法——几乎,ParallelX 的理念便由此自然而然地浮现出来了。

ParallelX 适合许多种不同的工作负载,不过它主要聚焦在像机器学习这样的高性能计算和图形处理这样的繁重分析方面。ParallelX 团队举了一个例子来说明其能力:它能够在一秒内,将一个大型社团联谊网络在单一 GPU 上进行集群——在过去,这需要并行利用六台计算机,耗时一小时才能完成。而且在实践中并无限制,任何针对 MapReduce 编写的程序都可以使用 ParallelX 编译为 GPU 可运行的代码。

ParallelX 团队正在规划在未来发布它的数据和白皮书,以展示这个“从 Hadoop 到 GPU”的编译器在面对现实世界中的工作负载时的性能。对于这个话题,社区的反响中存在一些轻微的不同声音。一些人正在等着阅读这份白皮书,而后再决定是否转型到ParallelX。当这一消息在 Hacker News 上发布后,我们可以在评论中找到类似的言论:“非凡的声明需要非凡的佐证。”

现在,开发者已经能够使用 Aparapi ,来体验一下在 Hadoop 上运用 GPU 能力的感觉。Aparapi 是一套 Java API,通过将 Java 字节码转化为 OpenCL,支持开发者在 GPU 上运行特定的代码段,而且这些代码段能够嵌入到任何用 Java 编写的 MapReduce 任务中。

在面向对复杂算法的需求越来越旺盛的研究人群,推广 Hadoop 的过程中,ParallelX 可能会成为意义深远的一步。例如,通过使用由 Apache Hama 推广的整体同步并行计算模型,图解分析算法能够获得非常好的性能表现,而如果ParallelX 能够与诸如 Apache Giraph ——它能够将图解分析算法作为 MapReduce 任务运行——这样的项目相结合,将为任何数据科学家的图解分析工具箱增添一件有价值的工具。

读者现在可以使用电子邮件地址,在线注册ParallelX 的Beta 版本。ParallelX 拟将支持一套免费增值计划(freemium plan),允许访问强大的GPU,并使用有限的存储空间。

查看英文原文: Hadoop Jobs on GPU with ParallelX

2013-12-31 04:212720
用户头像

发布了 256 篇内容, 共 72.3 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

SpringBoot 中操作 Redis 及工具类的封装

做梦都在改BUG

Java redis spring Spring Boot

SpringBoot集成ElasticSearch

做梦都在改BUG

Java elasticsearch Spring Boot

共创,共建,共赢,共荣!国云向新,翼起创未来!

天翼云开发者社区

IP 地址是如何被创建和管理的?

海拥(haiyong.site)

三周年连更

看华为云Serverless 4大特性如何让软件架构更丝滑

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

2023全栈开发人员职业路线图

码语者

全栈开发

九科信息参加长三角智慧港口论坛,分享港口企业超级自动化实践

九科Ninetech

大企业必读!五大纳税申报难题解析

用友BIP

数智化转型再加速,低代码开发助力企业转型

加入高科技仿生人

低代码 数智化 数字转型 数智转型

阿里巴巴最新SpringCloudAlibaba学习笔记,全程通俗易懂,一套搞懂!

采菊东篱下

编程 微服务

统一门户为什么能让企业数字化高效办公?

WorkPlus

如何计算真实的数据库成本

天翼云开发者社区

一文详解如何在 ChengYing 中通过产品线部署一键提升效率

袋鼠云数栈

开源

顶象uni-app版设备指纹上线,满足企业多平台服务需求

Geek_2d6073

SQL 解析在 CloudQuery 中的应用

BinTools图尔兹

数据库 SQL解析

揭秘镭速传输点对点传输技术,NAT+Raysync强强组合

镭速

惊艳!阿里自爆用480页讲清楚了44种微服务架构设计模式

做梦都在改BUG

Java 架构 微服务 设计模式

CNBPA 新成员展示 | 启明信息技术股份有限公司

云原生技术社区

云原生 云原生技术实践联盟 CNBPA

玩转云端| 解密!业内首款存储资源盘活系统如何炼成?

天翼云开发者社区

什么是人工智能领域模型的 temperature 参数?

汪子熙

人工智能 机器学习 深度学习 三周年连更

聚能量赢未来,OpenHarmony开发者大会开发工具分论坛圆满落幕

最新动态

字节Java程序性能优化宝典开源,原来这才叫性能优化

做梦都在改BUG

Java 性能优化 性能调优

面对“失业焦虑”我们可以做些什么| 社区征文

峥岳

三周年征文

Tapdata 的 ∞ 实践:中小企业如何轻量、高效地搭建起一个灵活易用的数字化平台

tapdata

数据库

iOS MachineLearning 系列(11)—— 自然语言之词句相似性分析

珲少

IPP SWAP孵化器LP算力系统开发技术

薇電13242772558

区块链

安全第一,私有化部署IM让组织沟通更放心

WorkPlus

喜讯!天翼云斩获NLP国际顶会比赛两项荣誉

天翼云开发者社区

ChatGPT+私有数据=智能知识库+个性化AI

WorkPlus

加快推进数智化转型,引领盐行业高质量发展

用友BIP

在GPU上运行Hadoop任务?ParallelX或许将带来更多帮助_亚马逊云科技_Charles Menguy_InfoQ精选文章