TransPimLib: A Library for Efficient Transcendental Functions on Processing-in-Memory Systems

要約

Processing-in-Memory (PIM) は、最新のコンピューティング システムにおけるデータ移動のボトルネックを軽減することを約束します。
ただし、現在の現実世界の PIM システムには、メモリの近くまたは内部に処理要素を構築する難しさとコストのため、ハードウェアが従来のプロセッサ (CPU、GPU) よりも制約されるという固有の欠点があります。
その結果、汎用 PIM アーキテクチャはかなり限られた命令セットをサポートし、超越関数やその他の計算が難しい演算 (平方根など) などの複雑な演算を実行するのに苦労しています。
これらの操作は、機械学習アプリケーションのアクティベーション関数など、一部の最新のワークロードにとって特に重要です。
汎用 PIM システムで超越関数 (およびその他の計算が難しい) 関数のサポートを提供するために、三角関数、双曲線関数に対する CORDIC ベースおよび LUT ベースのメソッドを提供するライブラリ \emph{TransPimLib} を紹介します。
私たちは UPMEM PIM アーキテクチャ用の TransPimLib の実装を開発し、マイクロベンチマークと 3 つの完全なワークロード (Blackscholes、Sigmoid、Softmax) を使用して、パフォーマンスと精度の観点から TransPimLib のメソッドの徹底的な評価を実行します。
すべてのコードとデータセットは ~\url{https://github.com/CMU-SAFARI/transpimlib} でオープンソース化されています。

要約(オリジナル)

Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing systems. However, current real-world PIM systems have the inherent disadvantage that their hardware is more constrained than in conventional processors (CPU, GPU), due to the difficulty and cost of building processing elements near or inside the memory. As a result, general-purpose PIM architectures support fairly limited instruction sets and struggle to execute complex operations such as transcendental functions and other hard-to-calculate operations (e.g., square root). These operations are particularly important for some modern workloads, e.g., activation functions in machine learning applications. In order to provide support for transcendental (and other hard-to-calculate) functions in general-purpose PIM systems, we present \emph{TransPimLib}, a library that provides CORDIC-based and LUT-based methods for trigonometric functions, hyperbolic functions, exponentiation, logarithm, square root, etc. We develop an implementation of TransPimLib for the UPMEM PIM architecture and perform a thorough evaluation of TransPimLib’s methods in terms of performance and accuracy, using microbenchmarks and three full workloads (Blackscholes, Sigmoid, Softmax). We open-source all our code and datasets at~\url{https://github.com/CMU-SAFARI/transpimlib}.

arxiv情報

著者 Maurus Item,Juan Gómez-Luna,Yuxin Guo,Geraldo F. Oliveira,Mohammad Sadrosadati,Onur Mutlu
発行日 2023-05-19 15:16:57+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AR, cs.DC, cs.LG, cs.MS パーマリンク