AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

在 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:212998
用户头像

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

关注

评论

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

《面试1v1》java注解

JavaPub

Java 面试 注解

数智革命下的开发利器:探索云原生技术与低代码的超强结合!

加入高科技仿生人

云原生 低代码

PostgreSQL技术内幕(九)libpq通信协议

酷克数据HashData

直播 | SDS 容灾方案,让制品数据更安全

CODING DevOps

面向Web开发人员的Linux实用入门

互联网工科生

Linux 运维 Web

数智时代加速!云存储与低代码开发:超强联盟引领技术革新

不在线第一只蜗牛

低代码 云存储

社区新手小伙伴测评第二弹 | 使用 ChatGPT 可以帮助完成 IoTDB 的写入和查询吗?

Apache IoTDB

时序数据库 IoTDB Apache IoTDB ChatGPT

机器学习之PyTorch和Scikit-Learn第2章 为分类训练简单机器学习算法

Alan

人工智能 机器学习 PyTorch scikit-learn 多层感知机

华为开发者大会:软件开发小白的华为云云上初体验

YG科技

2023全球数字经济大会召开,天翼云携手产业链共建开放共赢云生态

天翼云开发者社区

云计算

玩转云端| 天翼云边缘安全加速平台AccessOne实用窍门之多款产品管理难?一站式平台管理全hold住!

天翼云开发者社区

云计算 云平台 边缘安全

敏捷开发流程及项目实战分享

谐云

高效运营新纪元:智能化华为云Astro低代码重塑组装式交付

云计算 软件开发 华为云 华为开发者大会2023

适配各类大模型应用!手把手教你选择 Zilliz Cloud 实例类型

Zilliz

Milvus Zilliz 向量数据库 zillzicloud

华为云出品《IDEA-Plugin-开发手册》电子书——学完即会场景设计

开发者 华为云 编程学习 华为开发者大会2023

《深入浅出Java虚拟机 — JVM原理与实战》带你攻克技术盲区,夯实底层基础 —— 吃透class字节码文件技术基底和实现原理(核心结构剖析)

码界西柚

Java JVM 深入理解JVM 挖掘底层原理

汽车ECU软件开发之应用层软件与底层软件

DevOps和数字孪生

汽车ECU 仿真建模

详解:为什么瓴羊QuickBI被誉为国内口碑最好的BI工具

巷子

机器学习之PyTorch和Scikit-Learn第一章 赋予计算机学习数据的能力

Alan

人工智能 机器学习 PyTorch scikit-learn

2023-07-13:如果你熟悉 Shell 编程,那么一定了解过花括号展开,它可以用来生成任意字符串。 花括号展开的表达式可以看作一个由 花括号、逗号 和 小写英文字母 组成的字符串 定义下面几条语

福大大架构师每日一题

福大大架构师每日一题

CDN与前端技术

天翼云开发者社区

前端 CDN

Cilium 流量治理功能与部署实践

谐云

用ChatGPT搞定12 种编程语言:看看它的表现如何

互联网工科生

人工智能 编程语言 ChatGPT

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