タグ

pythonとgpuに関するsh19910711のブックマーク (11)

  • TensorRT-LLMでLLM推論高速化 - arutema47's blog

    TensorRT-LLMとは TensorRTをLLM用に多数の推論高速化技術を入れたNvidiaのオープンソースフレームワーク。 GPUメモリ使用率を半分に低減し、速度も1.5-2倍程度改善してくれる強力なフレームワーク。 www.alibabacloud.com TensorRT-LLMについてはこちらのAlibaba解説がわかりやすい。 特徴 量子化による省GPUメモリ 重み、Activation量子化を積極的に入れ込み、GPUメモリ使用量を半分以下に削減。 W8A8 SQ uses the SmoothQuant technique[2], which reduces the model weight and activation layer to the quantization precision of INT8 without reducing the accuracy of

    TensorRT-LLMでLLM推論高速化 - arutema47's blog
    sh19910711
    sh19910711 2025/05/14
    2024 / "LLM用に多数の推論高速化技術を入れたNvidiaのオープンソースフレームワーク / モデルコンパイル: MLPレイヤとNormalizeレイヤを一つのレイヤにまとめる + メモリ読み書きの回数を減らし高速化"
  • Automatic Mixed Precision (AMP) でニューラルネットワークのトレーニングを高速化 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? ※ 2021/01/04 NVIDIA Ampere アーキテクチャの A40、RTX A6000、GeForce RTX 30 シリーズを追記 ※ 2020/06/11 NVIDIA Ampere アーキテクチャの発表に伴い一部更新。 ※ 2020/02/24 Google さんのブログで混合精度演算が取り上げられたので、その記事への参照を追加するなどしました。 エヌビディアの佐々木です。 ニューラルネットワークのトレーニングに Volta アーキテクチャ以降の (つまりわりと新しい) GPU をご利用の方は、 Tensor コアによ

    Automatic Mixed Precision (AMP) でニューラルネットワークのトレーニングを高速化 - Qiita
    sh19910711
    sh19910711 2024/10/13
    "Mixed Precision Training という Baidu Research と NVIDIA による論文 / 半精度浮動小数点数 (FP16) を使っても、いくつかの工夫を加えることでモデルの正確度をほぼ落とすことなく、トレーニングを高速化できることが示され" '19
  • [RAPIDS]GPU版scikit-learnで機械学習を爆速にしよう

    RAPIDS RAPIDSとは、NVIDIA社が提供するオープンソースライブラリ群(と呼べばいいのか)で、極々簡単にいうならばPandasやScikit-learn、networkxなど日頃データサイエンスでよく使うPythonライブラリのGPU版です。元となっているライブラリの使用感をほぼそのままに、かつGPUの力を使って高速に処理できるようになります。 要はGPUの恩恵をもっと幅広く受けられるようにしようぜ、というものですね。今回、少しRAPIDSに触れる機会がありその凄さを感じ取ることができたのでその実装を含めて紹介します。 参考 ・・ここまで前回のコピペ 取り組んだこと GoogleColabでの実装を行います 今回は、scikit-learnとそのGPU版であるcumlの処理速度差を確認します 実装方法 こちらのページにあるGoogleColabのリンクを開き、notebookを

    [RAPIDS]GPU版scikit-learnで機械学習を爆速にしよう
    sh19910711
    sh19910711 2024/06/19
    "日頃データサイエンスでよく使うPythonライブラリのGPU版 / 元となっているライブラリの使用感をほぼそのままに、かつGPUの力を使って高速に処理できる" 2022
  • ChainerでTensor Coreを使ってみる - Qiita

    計算速度が一気に8倍速くなるらしいTensor Coreが使えるということで、昨年9月にTuring世代のGPUを買ってみたものの、Tensor Coreが簡単に使えて一気に早くなるわけでもなく、しばらくTensor Coreが使えているかどうかもよくわからない状態でした。今回一部修正もあって、Chainer v7.0.0a1でTensor Coreが使えることがほぼ確認できました。 また、Google ColaboratoryのGPUもTesla T4とTuring世代となり、Tensor Coreが使えそうなので試してみました。 環境 環境 GPU Cuda Core数 FP32 FP16

    ChainerでTensor Coreを使ってみる - Qiita
    sh19910711
    sh19910711 2024/06/07
    "Tensor Core: 計算速度が一気に8倍速くなるらしい / Chainerの対応などでTensor Coreを使うだけなら簡単に / Convolutionを使う場合はチャンネルの並び(NHWC)とかも考慮しないと遅くなることがある" 2019
  • Unified Memoryを使ってGPUメモリよりも大きなモデルをChainerで扱う - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Unified Memoryを使ってGPUメモリよりも大きなモデルをChainerで扱う - Qiita
    sh19910711
    sh19910711 2024/06/06
    "Unified Memory: Pascal以降のNVidia GPUから機能が拡張 / GPUメモリよりも大きなモデルをChainerで扱う方法 + パフォーマンス改善につながらないので、ミニバッチの大きさを大きくする目的では使わない" 2019
  • Jax・Brax・HaikuでGPU引きこもり学習

    sh19910711
    sh19910711 2024/05/19
    "XLA: Tensorflowのバックエンドとして開発された中間言語 / Brax: 物理シミュレーターもJaxで書いてしまえば勝手にGPU上で動いて速いんじゃない?というモチベーション + OpenAI gym風のEnv API" 2021
  • huggingfaceのaccelerateを使って訓練時のCUDA out of memoryを回避する - Qiita

    現在のバージョンはaccelerate==0.16.0でした。記事もこのバージョンで動作確認しているので、バージョンが更新されたら、記事のコードが動作しないかもしれませんが、ご了承ください。 pipでインストール後、まずはターミナル上でaccelerate configを実行して、対話形式でaccelerateの設定ファイルを作ります。(設定しなくてもacclerete実行時に引数で渡すこともできますが、設定しておいたほうが実行が楽で便利かと思います。) 対話形式の質問内容と回答例は以下のような感じでした。 In which compute environment are you running? Please select a choice using the arrow or number keys, and selecting with enter ➔ This machine

    huggingfaceのaccelerateを使って訓練時のCUDA out of memoryを回避する - Qiita
    sh19910711
    sh19910711 2024/05/10
    "Transformerベースのアーキテクチャーを使っている場合は、消費メモリが系列長に対して2乗のオーダー / accelerate: TPU、GPU、CPUでの実行を同じコードで記述できる / accelerate launch {スクリプト名}.pyのように実行" 2023
  • Python: LightGBM v4.0 の CUDA 実装を試す - CUBE SUGAR CONTAINER

    LightGBM のバージョン 4.0.0 が 2023-07-14 にリリースされた。 このリリースは久しぶりのメジャーアップデートで、様々な改良が含まれている。 詳細については、以下のリリースノートで確認できる。 github.com リリースの大きな目玉として CUDA を使った学習の実装が全面的に書き直されたことが挙げられる。 以前の LightGBM は、GPU を学習に使う場合でも、その計算リソースを利用できる範囲が限られていた。 それが、今回の全面的な刷新によって、利用の範囲が拡大されたとのこと。 ただし、PyPI で配布されている Linux 向け Wheel ファイルは CUDA での学習に対応していない。 対応しているのは CPU と、GPU でも OpenCL の API を使ったもの。 そのため、もし CUDA を使った学習を利用したい場合には自分で Wheel を

    Python: LightGBM v4.0 の CUDA 実装を試す - CUBE SUGAR CONTAINER
    sh19910711
    sh19910711 2024/04/30
    "CUDA を使った学習を利用したい場合には自分で Wheel をビルドする必要 / pip: --no-binary で PyPI の Wheel をインストールせず、ソースコード配布物を自身でビルド + キャッシュが効いてしまわないように --no-cache も指定" 2023
  • Python: PyTorch で Apple Silicon GPU を使ってみる - CUBE SUGAR CONTAINER

    PyTorch v1.12 以降では、macOS において Apple Silicon あるいは AMDGPU を使ったアクセラレーションが可能になっているらしい。 バックエンドの名称は Metal Performance Shaders (MPS) という。 意外と簡単に使えるようなので、今回は手元の Mac で試してみた。 使った環境は次のとおり。 GPU が 19 コアの Apple M2 Pro を積んだ Mac mini を使用している。 $ sw_vers ProductName: macOS ProductVersion: 14.4.1 BuildVersion: 23E224 $ sysctl machdep.cpu.brand_string machdep.cpu.brand_string: Apple M2 Pro $ pip list | grep -i tor

    Python: PyTorch で Apple Silicon GPU を使ってみる - CUBE SUGAR CONTAINER
    sh19910711
    sh19910711 2024/03/30
    "PyTorch v1.12 以降では、macOS において Apple Silicon あるいは AMD の GPU を使ったアクセラレーションが可能 / Apple Silicon の GPU は、そこまで速くないにしてもワットパフォーマンスには優れている + CPU に比べればずっと速い"
  • TVMのバックエンド開発に参加した話 ~ AMDGPU で PyTorch のモデルを動かす ~ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 先月、ひょんなことがきっかけで、TVM のバックエンド開発に関わっていました。 そのときの成果をブログとしてまとめて、TVM のウェブサイト上に載せました。ぜひご覧ください。 開発の成果の例として、PyTorchで学習したモデルをAMDGPU 向けにコンパイルし、推論を実行、ということができるようになりました。 ここでは、上のブログの内容や、開発に参加するにいたった経緯、開発中のこぼれ話などを紹介したいと思います。 TVM AMDGPUバックエンドの紹介 TVMは、様々なハードウェア向けに Deep Learning 推論用の最適化コー

    TVMのバックエンド開発に参加した話 ~ AMDGPU で PyTorch のモデルを動かす ~ - Qiita
    sh19910711
    sh19910711 2022/10/07
    2017 / "TVM: 様々なハードウェア向けにDeep Learning推論用の最適化コードを出力するためのドメイン特化言語 + バックエンドコンパイラ / 作者のTianqi Chenさん(超人)はPackedFuncという独自の方法でC++とPythonの連携を可能にして"
  • CuPy カーネル融合の拡張 - Preferred Networks Research & Development

    記事は、2019年インターンシップとして勤務した徐 子健さんによる寄稿です。 2019年度夏季インターンのJoeです。この度インターンプロジェクトとしてCuPyのカーネル融合の拡張に取り組み、既存のカーネル融合の適用範囲を大幅に拡張しました。さらにその応用として、ResNet50のバッチ正規化においてCPU実行時間を30%ほど、GPU実行時間を(入力サイズに大きく依存しますがおおよそ)70%ほど削減することに成功しましたので、その取り組みをご紹介します。 背景 CuPyはNumPyと同じAPIを提供するPythonのライブラリで、CUDAを用いて演算を高速に行います。具体的には、行列・ベクトルの要素ごとの演算や、リダクションと呼ばれる、演算によって配列の次元が落ちる演算(たとえばcupy.sum)など、GPUが得意とする計算を高速に行うことができます。 さて、CuPyのGPU演算は強力で

    CuPy カーネル融合の拡張 - Preferred Networks Research & Development
  • 1