丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
人工智能 正文
發(fā)私信給叢末
發(fā)送

0

阿里開源首款自研科學(xué)計算引擎 Mars :基于張量的統(tǒng)一分布式計算框架

本文作者: 叢末 2019-01-18 15:21
導(dǎo)語:將分布式技術(shù)引入科學(xué)計算、數(shù)值計算領(lǐng)域~

雷鋒網(wǎng) AI 科技評論按:日前,阿里巴巴正式開源分布式科學(xué)計算引擎 Mars。Mars 是由阿里巴巴統(tǒng)一大數(shù)據(jù)計算平臺 MaxCompute 研發(fā)團隊歷經(jīng)一年多研發(fā)的基于張量的統(tǒng)一分布式計算框架,用其進行科學(xué)計算時,不僅使得完成大規(guī)??茖W(xué)計算任務(wù)從 MapReduce 實現(xiàn)上千行代碼降低到 Mars 數(shù)行代碼,還能大幅度地提升科學(xué)計算性能。

對于科學(xué)計算領(lǐng)域來說,Mars 意義重大,其突破了現(xiàn)有大數(shù)據(jù)計算引擎的關(guān)系代數(shù)為主的計算模型,并將分布式技術(shù)引入科學(xué)計算、數(shù)值計算領(lǐng)域,極大地擴展了科學(xué)計算的計算規(guī)模和效率。目前,該引擎在阿里巴巴及其云上客戶的業(yè)務(wù)和生產(chǎn)場景中都的得到了應(yīng)用。

作為新一代超大規(guī)??茖W(xué)計算引擎,Mars 主要具備三項核心能力:

  • 符合使用習(xí)慣的接口:Mars 通過 tensor 模塊提供兼容 Numpy 的接口,用戶可以只需將已有的基于 Numpy 編寫的代碼進行 import 替換,就可將代碼邏輯移植到 Mars,并直接獲得比原來大數(shù)萬倍規(guī)模,同時處理能力提高數(shù)十倍的能力。目前,Mars 實現(xiàn)了大約 70% 的常見 Numpy 接口。

  • 可充分利用 GPU 加速:Mars 還擴展了 Numpy,充分利用了 GPU 在科學(xué)計算領(lǐng)域的已有成果——創(chuàng)建張量時,通過指定 gpu=True 就可以讓后續(xù)計算在 GPU 上執(zhí)行。

  • 支持二維稀疏矩陣:創(chuàng)建稀疏矩陣的時候,通過指定 sparse=True 即可。以 eye 接口為例,它創(chuàng)建了一個單位對角矩陣,這個矩陣只有對角線上有值,其他位置上都是 0,所以,用戶可以用稀疏的方式存儲。

在系統(tǒng)設(shè)計方面,Mars 則具備以下四大特點:

第一,對科學(xué)計算任務(wù)采用分而治之的方式。

給定一個張量,Mars 會自動將其在各個維度上切分成小的 Chunk 來分別處理。對于 Mars 實現(xiàn)的所有的算子,都支持自動切分任務(wù)并行,這一自動切分過程在 Mars 這里被稱做 tile。

第二,采用延遲執(zhí)行機制和 Fusion 優(yōu)化。

目前,基于 Mars 的延遲執(zhí)行機制,Mars 編寫的代碼需要顯式調(diào)用 execute 觸發(fā),不過用戶在寫中間代碼時,并不會需要任何的實際數(shù)據(jù)計算。這樣的好處是可以對中間過程做更多優(yōu)化,讓整個任務(wù)的執(zhí)行更優(yōu)。在優(yōu)化方面,Mars 目前主要使用了 fusion 優(yōu)化,即把多個操作合并成一個執(zhí)行。

第三,支持多線程模式、單機集群模式以及分布式等多種調(diào)度方式

  • 多線程模式:Mars 可以使用多線程在本地調(diào)度執(zhí)行 Chunk 級別的圖。對于 Numpy 來說,大部分算子都是使用單線程執(zhí)行,僅使用這種調(diào)度方式,也可使 Mars 在單機即可獲得 tile 化的執(zhí)行圖的能力,突破 Numpy 的單機內(nèi)存限制,同時充分利用單機所有 CPU/GPU 資源,獲得比 Numpy 快數(shù)倍的性能。

  • 單機集群模式: Mars 可以在單機啟動整個分布式運行時,利用多進程來加速任務(wù)的執(zhí)行。這種模式適合模擬面向分布式環(huán)境的開發(fā)調(diào)試。

  • 分布式 : Mars 可以啟動一個或者多個 scheduler以及多個 worker,而 scheduler 會調(diào)度 Chunk 級別的算子到各個 worker 去執(zhí)行。

第四,支持代碼向內(nèi)和向外伸縮:Mars 靈活的 tile 化執(zhí)行圖配合多種調(diào)度模式,可以使得相同的 Mars 編寫的代碼隨意向內(nèi)(scale in)和向外(scale out)伸縮:

  • 向內(nèi)伸縮到單機,可以利用多核來并行執(zhí)行科學(xué)計算任務(wù);

  • 向外伸縮到分布式集群,可以支持到上千臺 worker 規(guī)模來完成單機無論如何都難以完成的任務(wù)。

目前,Mars 實現(xiàn)了 tensor 的部分—— numpy 分布式化,實現(xiàn)了 70% 常見的 numpy 接口。而后續(xù)的 Mars 0.2 的版本,也正在嘗試將 pandas 分布式化,即將提供完全兼容 pandas 的接口,以構(gòu)建整個生態(tài)。

Github 開源地址:

https://github.com/mars-project/mars

資料來源:阿里技術(shù),https://mp.weixin.qq.com/s/CmAzifMBgkaytd17xknjig  雷鋒網(wǎng)雷鋒網(wǎng)

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

阿里開源首款自研科學(xué)計算引擎 Mars :基于張量的統(tǒng)一分布式計算框架

分享:
相關(guān)文章
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說