論文の概要: CHERI Performance Enhancement for the MicroPython Interpreter
- arxiv url: http://arxiv.org/abs/2308.05076v1
- Date: Wed, 9 Aug 2023 17:12:23 GMT
- ステータス: 処理完了
- システム内更新日: 2023-08-10 12:41:57.668318
- Title: CHERI Performance Enhancement for the MicroPython Interpreter
- Title(参考訳): CHERIによるマイクロPythonインタプリタの性能向上
- Authors: Duncan Lowther, Dejice Jacob, Jeremy Singer
- Abstract要約: 本稿では,Pythonベンチマークの標準セットに対する問題の原因,修正,およびそれに対応するパフォーマンス改善を特徴付ける,これらのパフォーマンス問題について詳細に検討する。
ネイティブポインタに対するアーキテクチャ機能の大きさが大きいため,ある種のソフトウェアが引き起こすランタイムオーバーヘッドを排除できることが示される。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: During our port of the MicroPython bytecode interpreter to the CHERI-based
Arm Morello platform, we encountered a number of serious performance
degradations. This paper explores several of these of these performance issues
in detail, in each case characterizing the cause of the problem, the fix, and
the corresponding performance improvement over a set of standard Python
benchmarks.
While we recognize that Morello is a prototypical physical instantiation of
the CHERI concept, we show that it is possible to eliminate certain kinds of
software-induced runtime overhead that occur due to the larger size of
architectural capabilities relative to native pointers. In our case, we reduce
a geometric mean benchmark slowdown from 5x (before optimization) to 2x (after
optimization) relative to AArch64 execution. The worst-case slowdowns are
greatly improved, from 100x (before optimization) to 2x (after optimization).
The key insight is that pointer size assumptions pervade systems code;
whereas previous CHERI porting projects highlighted compile-time and
execution-time errors exposed by pointer size assumptions, we instead focus on
the performance implications of such assumptions.
- Abstract(参考訳): マイクロPythonバイトコードインタプリタをCHERIベースのArm Morelloプラットフォームに移植した際、多くの重大なパフォーマンス劣化が発生しました。
本稿では、これらのパフォーマンス問題のいくつかを詳細に検討し、それぞれのケースにおいて、問題の原因、修正、および一連の標準pythonベンチマークに対するパフォーマンス改善を特徴付ける。
我々は,MorelloがCHERIの概念の原型的物理インスタンス化であることを認めているが,ネイティブポインタに対するアーキテクチャ機能の大きさが大きいため,ある種のソフトウェアが引き起こすランタイムオーバーヘッドを排除できることを示す。
今回のケースでは、AArch64の実行に対して、5x(最適化前)から2x(最適化後)までの幾何平均ベンチマークのスローダウンを削減します。
最悪のケースのスローダウンは100倍(最適化前)から2倍(最適化後)まで大幅に改善されている。
従来のCHERI移植プロジェクトでは、コンパイル時と実行時のエラーがポインタサイズの仮定によって露呈されるのに対して、そのような仮定のパフォーマンスへの影響に焦点を当てています。
関連論文リスト
- Accurate Coverage Metrics for Compiler-Generated Debugging Information [0.0]
多くのツールは、プログラム状態のソース言語ビューを示すために、コンパイラが生成したメタデータに依存している。
局所変数のカバー範囲を測定するための現在のアプローチは粗末な仮定に基づいている。
我々は,デバッグ品質を改善するための言語実装のモチベーションとして,ツールによって計算可能な,いくつかの新しいメトリクスを提案する。
論文 参考訳(メタデータ) (2024-02-07T13:01:28Z) - PACE: A Program Analysis Framework for Continuous Performance Prediction [0.0]
PACEはプログラム分析フレームワークで、保留中のコード更新のパフォーマンスへの影響を継続的にフィードバックする。
コード更新によって機能テストケースの実行時間をマッピングすることで,パフォーマンスのマイクロベンチマークを設計する。
我々の実験は、コード性能の予測において、ニューラル表現されたコードスタイメトリーの特徴において、現在の最先端を75%上回る性能を達成した。
論文 参考訳(メタデータ) (2023-12-01T20:43:34Z) - BTR: Binary Token Representations for Efficient Retrieval Augmented Language Models [77.0501668780182]
Retrieval augmentationは、大規模言語モデルにおける多くの重要な問題に対処する。
検索拡張言語モデル(LM)の実行は遅く、大量の検索されたテキストを処理するため、スケールが困難である。
1ビットベクトルを用いて各トークンを前処理するバイナリトークン表現(BTR)を導入する。
論文 参考訳(メタデータ) (2023-10-02T16:48:47Z) - HDCC: A Hyperdimensional Computing compiler for classification on
embedded systems and high-performance computing [58.720142291102135]
この研究は、HDC分類メソッドの高レベルな記述を最適化されたCコードに変換する最初のオープンソースコンパイラである、ネームコンパイラを紹介している。
nameは現代のコンパイラのように設計されており、直感的で記述的な入力言語、中間表現(IR)、再ターゲット可能なバックエンドを備えている。
これらの主張を裏付けるために,HDC文献で最もよく使われているデータセットについて,HDCCを用いて実験を行った。
論文 参考訳(メタデータ) (2023-04-24T19:16:03Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - Learning Performance-Improving Code Edits [107.21538852090208]
本稿では,大規模言語モデル(LLM)を高レベルプログラム最適化に適用するためのフレームワークを提案する。
まず、競争力のある77,000以上のC++プログラミングサブミッションペアによる、人間のプログラマによるパフォーマンス改善編集のデータセットをキュレートする。
提案手法は,検索をベースとした少数ショットプロンプトとチェーン・オブ・シンクレットを提案し,その微調整には,自己再生に基づく性能条件付き生成と合成データ拡張が含まれる。
論文 参考訳(メタデータ) (2023-02-15T18:59:21Z) - CryptOpt: Verified Compilation with Randomized Program Search for
Cryptographic Primitives (full version) [12.790826917588575]
暗号は例外であり、多くのパフォーマンスクリティカルなルーチンがアセンブリで直接書かれてきた。
CryptOptは、GCCやClangが生成するものよりもはるかに高速なアセンブリコードに高レベルの暗号関数プログラムを専門とする、最初のコンパイルパイプラインである。
形式検証の面では、FiatOptフレームワーク(関数型プログラムをCライクなIRコードに変換する)に接続し、新たに公式に認証されたプログラム等価チェッカーで拡張する。
論文 参考訳(メタデータ) (2022-11-19T11:07:39Z) - POSET-RL: Phase ordering for Optimizing Size and Execution Time using
Reinforcement Learning [0.0]
位相順序付け問題に対する強化学習に基づく解法を提案する。
Oz Dependence Graph (ODG) と呼ばれるグラフを手動順序付けでモデル化する2つの手法を提案する。
論文 参考訳(メタデータ) (2022-07-27T08:32:23Z) - Learning to Superoptimize Real-world Programs [79.4140991035247]
本稿では,ニューラルシークエンス・ツー・シーケンス・モデルを用いて,実世界のプログラムを最適化するフレームワークを提案する。
我々は、x86-64アセンブリでオープンソースプロジェクトから抽出された25万以上の実世界の関数からなるデータセットであるBig Assemblyベンチマークを紹介した。
論文 参考訳(メタデータ) (2021-09-28T05:33:21Z) - Enabling Fast Differentially Private SGD via Just-in-Time Compilation
and Vectorization [8.404254529115835]
差分プライベート機械学習における共通の問題点は、差分プライベートグラディエントDescent(DPSGD)の実行時に発生する重要なランタイムオーバーヘッドである。
我々は、強力な言語プリミティブを利用することで、これらのオーバーヘッドを劇的に削減できることを示した。
論文 参考訳(メタデータ) (2020-10-18T18:45:04Z) - Real-Time Execution of Large-scale Language Models on Mobile [49.32610509282623]
BERTの最良のモデル構造は,特定のデバイスに適合する計算サイズである。
我々のフレームワークは、モバイルデバイスのリソース仕様とリアルタイム仕様の両方を満たすための特定モデルを保証することができる。
具体的には、当社のモデルはCPUでは5.2倍、GPUでは4.1倍、BERTベースでは0.5-2%の精度損失がある。
論文 参考訳(メタデータ) (2020-09-15T01:59:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。