並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 704件

新着順 人気順

高速化の検索結果1 - 40 件 / 704件

  • なぜあなたのWebサイトは遅いのか? mizchi氏が語るパフォーマンス改善のポイントとは

    Webサイトの“速さ”は、ユーザー体験を左右する重要な指標だ。とはいえ、ブラウザの中で実際にどんな処理が走っていて、どこにボトルネックがあるのかを把握するのは簡単ではない。本セッションに登壇したのは、Node.js/フロントエンド領域を専門とするフリーランスエンジニアであり、各社のWebサイトに一ヶ月単位で入り込み、Web VitalsやCI/CDの改善を行う“パフォーマンスの傭兵”として活動する竹馬光太郎氏。PageSpeed InsightsやLighthouse、DevToolsを駆使した実演を通し、問題の洗い出しからローカルでの再現、修正、そして再測定に至るまでの改善サイクルを丁寧に解説する。 パフォーマンスとはなにか?mizchi氏が見てきた現実 Node.jsやフロントエンドのパフォーマンス領域を専門とするフリーランスエンジニア・竹馬光太郎氏。SNSなどでは「mizchi」の名

      なぜあなたのWebサイトは遅いのか? mizchi氏が語るパフォーマンス改善のポイントとは
    • DDoS攻撃をちゃんと理解したい人のための入門と設計整理メモ - Qiita

      DDoS攻撃の仕組み・目的・防御を整理してみた話 対象読者とこの記事のスタンス この投稿は、以下のような方を対象にしています: Web サービスやインフラの開発・運用をしている方 DDoS 攻撃に興味はあるが、まだ体系的に理解できていない方 CDN や WAF を使っているが、攻撃の仕組みまで深く知らない方 ✅ この記事で触れること DDoS 攻撃の分類(L3/L4 と L7) UDPリフレクション攻撃の仕組みと例 攻撃者の目的・心理戦 CDN や WAF の有無での影響 DDoS 防御の現実的な設計選択肢 ❌ この記事で触れないこと 各クラウドサービス(AWS/GCP等)での設定手順 WAF ルールの具体的チューニング方法 攻撃ツールの使用や再現 DDoS攻撃とは? DDoS(Distributed Denial of Service)攻撃は、複数の端末から一斉にサーバーへリクエストを送

        DDoS攻撃をちゃんと理解したい人のための入門と設計整理メモ - Qiita
      • 次期PostgreSQL 18では非同期I/Oの採用により性能が2~3倍向上する見通し

        PostgreSQL開発チームは先月(2025年5月)にリリースした「PostgreSQL 18 Beta 1」で非同期I/O処理を実装したことを明らかにしています。 同チームのテストによると、シーケンシャルスキャンやビットマップヒープスキャン、バキュームといった処理において2~3倍の性能向上が見られたとのことです。 同期処理はシンプルだが待ち時間が発生する これまでのPostgreSQLは同期I/O処理を採用していました。これは例えばOSにファイルリードのようなI/O処理を依頼すると、処理が終了して結果が返ってくるまで、すべてのPostgreSQLの内部処理が一時停止することを意味します。 同期I/O処理の利点はすべてのI/O処理が同期的に行われるため、実装が比較的シンプルで容易だというメリットがあります。これはバグを引き起こしにくいとも言えます。 一方で、ひとつひとつのI/O処理が完了

          次期PostgreSQL 18では非同期I/Oの採用により性能が2~3倍向上する見通し
        • Zennの検索スピードを5倍に高速化した話

          @dyoshikawaです。 先日、以下のリリースでZennのサイト内検索の高速化を行いました。 結論を先に述べるとCDNキャッシュやPostgreSQLの全文検索インデックスを活用して対応しました。この記事では本パフォーマンス改善の取り組みについて紹介します。 Zennの構成 ZennはGoogle Cloud上に構築されており、フロントエンドNext.jsとバックエンドRailsをそれぞれCloud Run上にホスティングしています。上の図では省かれていますが、CDNにはCloudflareを利用しています。 データベースはCloud SQL for PostgreSQLを利用しています。 検索速度とDB負荷に課題 2025年2月頃、某AIクローラーによる検索ページへの集中アクセスによりDBインスタンスのCPU使用率が100%近くに張り付いてしまうという事象が発生しました。 生成AIサ

            Zennの検索スピードを5倍に高速化した話
          • プロファイラを利用して Node.js サーバーのレスポンス時間を 200 秒 → 20 秒に短縮した話

            どんな問題を解決したのか こんにちは、ダイニーの ogino です。 ダイニーでは、飲食店向けのクラウド POS レジを開発しています。その機能の一つとして、一ヶ月分の売上などの情報を印刷できる「月締伝票」があります。 月締伝票のサンプル 月締伝票に記載するデータは、Node.js バックエンドで集計をしています。この API はダイニーのバックエンド全体の中で最も重く、最近では一部店舗でレスポンスに 200 秒以上かかりタイムアウトエラーが発生していました。 その結果、月締伝票を発行することができないため顧客の業務に支障をきたし、複数の問い合わせが来ている状態でした。 プロファイラやログを手掛かりに調査したところ、ボトルネックを 2 行のコードだけに特定し、ほぼコストをかけずにレスポンス時間を 20 秒ほどに改善することができました。 改善リリース前後のレスポンス時間の変化 ボトルネック

              プロファイラを利用して Node.js サーバーのレスポンス時間を 200 秒 → 20 秒に短縮した話
            • プロファイラを利用して Node.js サーバーのレスポンス時間を 200 秒 → 20 秒に短縮した話|ogino

              どんな問題を解決したのかこんにちは、ダイニーの ogino です。 ダイニーでは、飲食店向けのクラウド POS レジを開発しています。その機能の一つとして、一ヶ月分の売上などの情報を印刷できる「月締伝票」があります。 月締伝票のサンプル月締伝票に記載するデータは、Node.js バックエンドで集計をしています。この API はダイニーのバックエンド全体の中で最も重く、最近では一部店舗でレスポンスに 200 秒以上かかりタイムアウトエラーが発生していました。 その結果、月締伝票を発行することができないため顧客の業務に支障をきたし、複数の問い合わせが来ている状態でした。 プロファイラやログを手掛かりに調査したところ、ボトルネックを 2 行のコードだけに特定し、ほぼコストをかけずにレスポンス時間を 20 秒ほどに改善することができました。 改善リリース前後のレスポンス時間の変化ボトルネック 1:

                プロファイラを利用して Node.js サーバーのレスポンス時間を 200 秒 → 20 秒に短縮した話|ogino
              • .NET の新しい高性能低遅延 Satori GC が気になります - Qiita

                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? GC の STW 問題 GC(ガベージコレクション)は、プログラムが確保したメモリを自動管理 する仕組みです。この方式は多くの言語で採用され、開発者は細かいメモリ管理を意識せずに済みます。ただ、その分メモリの制御は GC に委ねられます。C# では、一部の場面でメモリを手動管理する選択肢もありますが、基本は自動管理が中心です。 GC の動作時、プログラムは一時停止し、生存しているオブジェクトをスキャン します。不要なオブジェクトの解放や、メモリの断片化を抑えるためのコンパクション(圧縮) を実行することもあります。このようにプログラム全

                  .NET の新しい高性能低遅延 Satori GC が気になります - Qiita
                • パフォーマンスを改善する技術 - Repro Tech Blog

                  はじめに こんにちは。Repro Booster プロダクトマネージャーの Edward Fox です。普段はRepro Boosterの製品戦略立案やロードマップの策定を担当していますが、プロダクトの提供とは別にお客様サイトの根本課題を一緒に解決する取り組みも行っています。本記事では、最近担当した大規模ECサイトのパフォーマンス改善事例を題材に、技術面と組織面の両方から「パフォーマンス改善をどう進めればよいか」という観点で記事を書いてみました。 Repro Booster と伴走支援の位置付け Repro Booster は「タグを設置するだけでWebパフォーマンスを改善する」ことを目的にしたプロダクトです。一方、既存サイトに長年積み上がった負債や部門間の調整といった課題はツールだけでは解決が難しい領域でもあります。そこで私たちは、少人数の伴走チームを編成し「小さく試して、パフォーマンス

                    パフォーマンスを改善する技術 - Repro Tech Blog
                  • Giving V8 a Heads-Up: Faster JavaScript Startup with Explicit Compile Hints · V8

                    Getting JavaScript running fast is key for a responsive web app. Even with V8's advanced optimizations, parsing and compiling critical JavaScript during startup can still create performance bottlenecks. Knowing which JavaScript functions to compile during the initial script compilation can speed up web page loading. When processing a script loaded from the network, V8 has to choose for each functi

                    • 実践Webフロントパフォーマンスチューニング

                      2025年度 traP新歓オリエンテーションのLTで発表した内容です。5分のLTなので1章のみを話しました。

                        実践Webフロントパフォーマンスチューニング
                      • Vitestの実行時間を8倍高速化:同一環境での実行によるパフォーマンス改善

                        はじめに Vitest はデフォルトの設定では、テストファイルごとに分離された環境を使用してテストを並列実行します。 この設定はグローバルな状態や副作用に依存した実装やライブラリなどを含むテストを並列実行するために有効です。 しかし、この設定は各テストファイルごとにテスト環境の起動や破棄を行うためテスト実行時間が長くなります。 この記事では React アプリケーションのテストコードを、環境の分離設定をやめて同一環境で実行することにより、実行速度を向上させた方法とそれに伴って発生した問題の修正方法についてご紹介いたします。 背景 弊社は microCMS というヘッドレス CMS を開発しており、その管理画面は React で開発されています。 大まかな構成としては、Vite を使用した SPA で、テストコードは testing-library/react を使用したコンポーネントテスト

                          Vitestの実行時間を8倍高速化:同一環境での実行によるパフォーマンス改善
                        • 2025年度 新卒研修「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」 | CyberAgent Developers Blog

                          こんにちは、Service Reliability Group(SRG)の鬼海 雄太(@fat47)です。 SRGは主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。 本記事では2025年度のサイバーエージェントの新卒研修で「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」という研修を実施した話と、その内容について簡単に紹介しています。 例年の新卒技術研修について サイバーエージェントでは毎年、新卒のエンジニア全員を対象にした技術研修が実施されており、 セキュリティ研修やAWSなどのクラウド実習、ハッカソン形式のチーム開発研修 などの研修が実施されています。 しかし、データベースに関する内容は新卒のエンジニア全員を対象にした研修では実施されておらず、各部署(子

                            2025年度 新卒研修「100分で学ぶ サイバーエージェントのデータベース活用事例とMySQLパフォーマンス調査」 | CyberAgent Developers Blog
                          • Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog

                            こんにちは、SmartHRでプロダクトエンジニアをやっている @Tokky0425 です。 みなさんは普段組織で働いていますか?僕は組織で働いています。 組織で働くにあたって便利なもの、ありますよね。そう、組織図です。 SmartHR にも組織図の機能があるのですが、部署数や従業員数が多いとブラウザ上での操作が重くなってしまうという問題がありました。 最近「数万人規模の組織図での 60fps」を目指してこの組織図機能の描画パフォーマンス改善を行ったので、その中で実践したフロントエンド開発における大量描画処理の Tips を共有します。(React を前提としています) そもそも問題はどこにあるのか 最近まで、SmartHRの組織図機能は数万人規模の企業で十分に使えるような作りになっていませんでした。というのも、対象従業員数が数万人を超えてくると、いろんな操作が著しく重くなり、実用に耐える操

                              Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog
                            • Go Optimization Guide

                              Patterns and Techniques for Writing High-Performance Applications with Go¶ The Go App Optimization Guide is a collection of technical articles aimed at helping developers write faster, more efficient Go applications. Whether you're building high-throughput APIs, microservices, or distributed systems, this series offers practical patterns, real-world use cases, and low-level performance insights to

                              • 【参加記】Web Speed Hackathon 2025で優勝した話

                                はじめに 先日、CyberAgent主催のWeb Speed Hackathon 2025に出場しました。 Web Speed Hackathonはお題となるWebアプリケーションのパフォーマンス改善を行い、そのスコアで競い合うハッカソンです。似たようなものにISUCONがありますが、Web Speed Hackathonは主にフロントエンドの改善がメインとなっています。 ここでは参加記として改善の流れや感想などを書きます。 先にスコアの推移を載せます。途中でスコアが大きく伸びている部分がありますが、これは改善によってアプリがエラーで表示できなくなってしまった事によるものです。 また、リポジトリは以下のURLです。 環境構築・デプロイ・初期計測 以下のリポジトリをforkして始めます。アプリの内容は仮想の動画配信サービス「AREMA」だそうです。(なんか似た名前のサービスをCyberAge

                                  【参加記】Web Speed Hackathon 2025で優勝した話
                                • 改善活動: LCPの最適化 - LIFULL Creators Blog

                                  2024 年中途入社の福原です。 私の所属しているグループでは、毎週チーム全員で時間を設けて、メインとなるページのサイトパフォーマンスを監視・改善する活動を行っています。 今回はその活動の一環で、新築分譲戸建の物件詳細ページのLCPについて、改善を行った結果を共有します。 LCP は、ビューポート内に表示される最大の画像、テキスト ブロック、または動画のレンダリング時間 課題特定 まずは Chrome の Lighthouse を使って計測し、数値の劣化原因を探りました。 指摘の中で最も影響が大きそうだったのは「適切なサイズの画像を使用していない」という点でした。 今回のページでは、カルーセル内に比較的大きい画像とサムネイル用の小さい画像を表示しています。 適切な画像サイズに修正することで、大きな効果が得られると考えました。 改善内容 適切な画像サイズの指定 LIFULL HOME'S に

                                    改善活動: LCPの最適化 - LIFULL Creators Blog
                                  • WebSpeedHackathon2025 をやってみよう

                                    参加してみたら結構面白かったので、フロントエンド/Node.js エンジニアはやってみてほしい。 あれこれ盛り上がりたいので。 (自分は作問担当でも中の人でもなんでもない。ハッカソン参加者) 自分の最終結果はスコア上は 365/1200 で 12位だったが、レギュレーション失格で落ちた、というかレギュレーションを通せた人が上位16人で1人だけ。 結果から言えばレギュレーション守って300点以上とるゲームだった。 学べること クライアントサイド ランタイム負荷の計測 静的解析によるバンドル解析 やばいアセットの発見 CSSの静的抽出による(CLS改善) サーバーサイド sqlite のチューニング SSR実装 動画配信のプロトコル とにかく大量のライブラリツールチェインを乗り越える力(現場っぽい) 富豪的な実装のライブラリを自分で置き換える力(時間内無理) 環境構築 node.js / pn

                                      WebSpeedHackathon2025 をやってみよう
                                    • Web 技術の個人的なお勧め書籍

                                      これはラムダノートの宣伝を含みます。 Web は専門ではないが、勝手にお勧めの本を書いておこうと思う。 ハイパフォーマンス ブラウザネットワーキング - O'Reilly JapanWebブラウザセキュリティ ― Webアプリケーションの安全性を支える仕組みを整理する – 技術書出版と販売のラムダノートReal World HTTP 第3版 - O'Reilly JapanWeb配信の技術 ―HTTPキャッシュ・リバースプロキシ・CDNを活用する - 技術評論社プロフェッショナルTLS&PKI 改題第2版 – 技術書出版と販売のラムダノートいろいろなところで言っているがハイパフォーマンスブラウザネットワーキングを読んで欲しい。10 年以上前の本だが、古い部分は他の書籍でカバーすればよい。 セキュリティ関連は Webブラウザセキュリティがとてもわかりやすい。今や HTTPS ありきの時代にな

                                        Web 技術の個人的なお勧め書籍
                                      • Postman を使ったシナリオ付き負荷試験

                                        みなさんは、普通に生活していたら急に負荷試験手伝ってほしいと言われたことはありますでしょうか?私はあります! お世話になっている人なので助けてあげたいな、と思う一方でよく使われるJMeterやLocustを使ったことがないのでどうしようかな?と考えていました。 ちょうど開発者がPostmanを使ってAPIの挙動を説明されていたので、あれ?Postmanは負荷試験機能あるのかしら? と思って調べたら、ちゃんとありますね。素晴らしい。 この機能はPostmanのデスクトップアプリのみで利用可能です。もともとPostmanはデスクトップアプリからの利用を推奨しているので、興味がある方はこれを機にいれてしまいましょう。 ただこのテスト機能は連続的にAPIを呼び出すことはできるのですが、複数APIをシナリオにそって連続的に呼び出すことができないと思い考えていたらPostman Flowsでシナリオに

                                          Postman を使ったシナリオ付き負荷試験
                                        • ターミネーターと出会う。 - 沖縄で島猫と遊ぶ日々・(ΦωΦ)隠居編

                                          先日も書きましたが、 ガソリンだけでなく、 あらゆる生活必需品の物価高に、 国民生活は疲弊している。 物価高に対して自民党は、 まるで無能・無策だ。 お米の価格が1.9倍になったのは なぜだ? 理由ぐらい、国民にしっかり 説明する義務はあるだろう。 -------------------------------------- 自民党よ。 税金を上げるのは早いのに、 下げるのはなぜ遅い? ここ数年、税収増なのだから、 それを充てればいいだろう? 時間をかけて、 物事をうやむやにする 考えが見え見えだよ。 この状況を打破するには、 自公政権及び財務省を解体だね。 それには、夏の参議院選挙で 自公以外に投票しましょう。 -------------------------------------- -------------------------------------- Amazonの配送が、

                                            ターミネーターと出会う。 - 沖縄で島猫と遊ぶ日々・(ΦωΦ)隠居編
                                          • 時間がかかっていた git status を Trace2 で計測しながら10倍速くした話 - Mirrativ Tech Blog

                                            環境 改善前 改善前計測 untrackedcacheを使った高速化 file system monitorを使った高速化 サブモジュールをオフにして高速化 Appendix: Gitバージョンアップ実験結果 まとめ We are hiring! こんにちは。バックエンドエンジニアのshirakawaxです。 Mirrativのバックエンドリポジトリのgit statusが遅かったので1.941秒 → 0.173秒に改善した話を書きます。 環境 Apple M1 Max メモリ 64 GB macOS Sonoma 14.4 $ git -v git version 2.39.3 (Apple Git-146) 改善前 私の環境では改善前のgit statusは1.941秒かかっていました。 頻繁に実行するコマンドではないですが、若干ストレスになっていました。 $ time git sta

                                              時間がかかっていた git status を Trace2 で計測しながら10倍速くした話 - Mirrativ Tech Blog
                                            • GitHub Actionsを可視化するGitHub Actions OpenTelemetryの紹介 - Paper2 Blog

                                              GitHub Actionsはワークフロー全体の実行時間や各ステップの詳細な可視化、変更による効果測定を行うには工夫が必要となります。この記事では、OpenTelemetryを活用してGitHub Actionsの実行結果をトレースとメトリクスの形で収集するGitHub Actions OpenTelemetryを紹介します。どのステップに時間がかかっているのか、改善施策の効果がどの程度あったのかを把握しやすくなるため、ワークフローの継続的な改善を目指す方に役立ちます。 Trace Sample (Jaeger) 1. GitHub Actionsにおける課題 1-1. ワークフローの詳細を可視化する方法が提供されていない 1-2. ワークフローの変更による影響を分析しづらい 2. GitHub Actions OpenTelemetryとは 2-1. 概要と主な機能 2-2. OpenT

                                                GitHub Actionsを可視化するGitHub Actions OpenTelemetryの紹介 - Paper2 Blog
                                              • Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025

                                                1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code

                                                  Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
                                                • 【データベース基礎】インデックスの仕組みを理解する(初学者向け)

                                                  本書では、データベースのインデックスについて基礎から応用まで体系的に学びます。 データベースの検索性能を最適化するための重要な知識を身につけることができます。 本書で学べる内容は以下の通りです。 🌲 B-Tree と B+Tree インデックスの仕組みと特性の違い 🔍 インデックスが検索効率を向上させるメカニズム 📊 複合インデックスの設計と効果的な活用方法 ⚡ カバリングインデックスやパーシャルインデックスなどの最適化テクニック 📈 クエリプランの読み方とパフォーマンスチューニング 本書の特徴はこちらです。 ・インデックスの内部構造を図解で分かりやすく解説 ・実際のユースケースに基づく設計手法の紹介 ・インデックスサイズと更新コストのトレードオフを考慮した実践的アプローチ ・クエリ最適化のためのパターンとアンチパターンの解説 データベース設計や SQL の基礎知識をお持ちの方なら

                                                    【データベース基礎】インデックスの仕組みを理解する(初学者向け)
                                                  • Nintendo Switch 2に求める性能は?最適化エンジニアたちに訊いたSwitch開発の奮闘と苦労 - AUTOMATON

                                                      Nintendo Switch 2に求める性能は?最適化エンジニアたちに訊いたSwitch開発の奮闘と苦労 - AUTOMATON
                                                    • なぜあなたのウェブサイトは遅いのか

                                                      自己紹介 https://x.com/mizchi Node.js とフロントエンドの専門家 経歴 ゲームクライアント開発 Electron アプリ開発 サードパーティスクリプト フリーランス(2回目) 現在: 1ヶ月でパフォチュする傭兵 Core Web Vitals CI/CD 今日のスコープ 話すこと 主にフロントエンド/アプリケーション視点での計測 とくにエンドユーザーから見たウェブパフォーマンス体験 話さないこと 各クラウドやDBに特化したチューニング 結果として観測できるが、最初からターゲットにはしない パフォーマンス傭兵を始めた経緯 前職でサードパーティがサイト全体に与える影響(CWV)について調査 とにかくいろんなサイトを外部から計測 真の問題を特定しても「弊社とは無関係」で打ち返す以外なく、歯痒い コスパよく直せる部分をみんな放置している!!! 非機能要件の優先度が上がら

                                                      • LLMの重みの量子化でパフォーマンスが改善する仕組みについて

                                                        Abstract 本記事では、重みの量子化でパフォーマンスが改善する仕組みについて、Rooflineという図を使って視覚的に説明する。前半ではパフォーマンスのボトルネックを可視化するRooflineという図の作図法と各領域の意味について説明する。後半ではRooflineを使ってなぜ重みの量子化がシステムのパフォーマンスを改善するのかについて、AWQの論文を例にして説明する。 なお、この記事でいうパフォーマンスとはシステムリソースの利用効率のことをさし、精度などのベンチマーク性能ではないことに注意。 Rooflineとは? Rooflineとは、計算機システムのボトルネックを視覚的に判断するための図であり、ボトルネックが以下のどちらにあるのかを判断することができる。 memory-bound / bandwidth-bound: データの転送で詰まってて、GPUは暇を持て余している状態。 c

                                                          LLMの重みの量子化でパフォーマンスが改善する仕組みについて
                                                        • map / filter などの高階関数よりも古典的な for文の方が読みやすいと感じるあなたへ

                                                          class: center, middle # map / filter などの<br>高階関数よりも<br>古典的な for文の方が<br>読みやすいと感じる<br>あなたへ BuriKaigi 2025 2025/02/01<br> @gakuzzzz --- class: left, top ## 自己紹介 * 中村 学/Manabu NAKAMURA * Twitter: [@gakuzzzz](https://twitter.com/gakuzzzz) * [Tech to Value Co.,Ltd.](https://www.t2v.jp/) CEO * [Alp, Inc.](https://thealp.co.jp/) Tech Lead --- class: left, top ## はじめに 昨今のメジャーなプログラミング言語では、 `map` や `filter`

                                                          • Pythonのパフォーマンス最適化Tips 必須知識 - Qiita

                                                            Pythonコードのパフォーマンス最適化の総合ガイド Pythonは動的型付けのインタープリタ言語として、Cのような静的型付けのコンパイル言語と比較すると、実行速度が遅い場合があります。しかし、特定の技術と戦略を通じて、Pythonコードのパフォーマンスを大幅に向上させることができます。 この記事では、Pythonコードを最適化して、より高速かつ効率的に実行させる方法を探ります。Pythonのtimeitモジュールを利用して、コードの実行時間を正確に測定します。 注意: デフォルトでは、timeitモジュールはコードの実行を100万回繰り返して、測定結果の精度と安定性を確保します。 def print_hi(name): print(f'Hi, {name}') if __name__ == '__main__': # print_hi('leapcell')メソッドを実行する t = t

                                                              Pythonのパフォーマンス最適化Tips 必須知識 - Qiita
                                                            • LLMチューニングのための強化学習:GRPO(Group Relative Policy Optimization) - どこから見てもメンダコ

                                                              DeepSeek-R1にも採用されたLLMチューニングのための強化学習手法 GRPO(Group Relative Policy Optimization)について考えたことをまとめます。 GRPO: DeepSeek-R1の強化学習ファインチューニング手法 前提手法:TRPO/PPO TRPO: Trust Region Policy Optimization PPO: Proximal Policy Optimization GRPOとPPOの差分:①アドバンテージ算出と②参照モデルからのKL距離制約 変更点①: アドバンテージAの算出方法 REINFORCE: 価値関数近似なし方策勾配法 PPO(Actor-Critic): 価値関数近似あり方策勾配法 GRPO: スケーリングされたREINFORCE 変更点 ②: 参照モデル(SFTモデル)からのKL距離制約 従来は参照モデル制約は

                                                                LLMチューニングのための強化学習:GRPO(Group Relative Policy Optimization) - どこから見てもメンダコ
                                                              • ISUCON14 をベンチマーカーの限界を超えて最適化した話

                                                                はじめに 2024-12-08 に開催された ISUCON 14 にチーム最上川(@kawaemon, @shun-shobon, @re-taro)で参加しました。今回が ISUCON 初参加でした。本番では悔しくもデータ保持違反[1]で失格でしたが、スコア順位としては 37,127 点で全体 8 / 834 位、学生 2 / 99 位 でした。 また、その後 1 ヶ月程度に渡って開催された感想戦[2]においては、850,573 点で全体 2 位、学生 1 位でした。 この点数は、感想戦ベンチマーカー(インスタンス)のほぼ測定限界となっています。 筆者ローカルでは約 180 万点まで、後述するベンチマーカーの最適化を行うことで約 400 万点まで確認しています。 この記事では、どうやってそこまで点数を出したかやその経緯について書きます。 本戦の話はこちら: 経緯 本戦において、 トップが

                                                                  ISUCON14 をベンチマーカーの限界を超えて最適化した話
                                                                • データベースの負荷とは?RDS Performance Insights の使い方動画のご紹介と負荷対策のヒント | DevelopersIO

                                                                  コーヒーが好きな emi です。 RDS Performance Insights は RDS の性能が出ない場合やエラーの原因を調査する際に大活躍するイチオシのサービスです。 データベースの負荷が問題になるケースは多くお問い合わせも多くいただきますが、いざ原因調査の際に Performance Insights をすぐに使いこなせないと困ります。 本記事では RDS Performance Insights の見方が非常に分かりやすく案内されているおすすめの動画のご紹介と、データベースの負荷が高い時に参考になるリンクをまとめました。 「そもそもデータベースの負荷とは?」というところも、動画を参考に要点をまとめております。 動画 AWS Summit 2019 のセッション動画です。とても分かりやすく、大変おすすめです。 「こんなログが出ていたらどのように負荷を判断すればいいか?」という実

                                                                    データベースの負荷とは?RDS Performance Insights の使い方動画のご紹介と負荷対策のヒント | DevelopersIO
                                                                  • CodSpeedによる継続的ベンチーマーク

                                                                    CodSpeedは継続的ベンチマークを行うためのサービスです。CodSpeedを使うことで、ベンチマークを自動で実施し可視化できます。CodSpeedは、ベンチマークの結果を比較できるため、コードの変更によるパフォーマンスの変化を追跡できます。 対応言語はRustとPython及びNode.jsです。この記事ではRustを使う場合を説明します。 PublicなOSSプロジェクトでは無料で使えます。Privateなリポジトリを使う場合は有料です。 CodSpeedの概略 自分のプロジェクトへの導入方法の前に、私が導入したプロジェクトで何ができるのかを説明します。これは私が練習でSATソルバーを書いているプロジェクトです。まずGitHubのリポジトリ毎にCodSpeed側にもページが作成されます。このページはログインせずに見ることができます。 Overview まずデフォルトブランチの履歴毎に

                                                                      CodSpeedによる継続的ベンチーマーク
                                                                    • Amazon S3 Tables と Iceberg Tables on Amazon S3 のパフォーマンス比較 #AWSreInvent | DevelopersIO

                                                                      AWS事業本部コンサルティング部の石川です。 この記事は AWS Analytics Advent Calendar 2024 の 22 日目の記事です。 Amazon S3 Tables は、「クエリパフォーマンスが最大 3 倍高速になり、1 秒あたりのトランザクション数が最大 10 倍」と言われています。本日は、「Amazon S3 Tables vs Iceberg Tables on Amazon S3 」と題して、パフォーマンスを比較したいと思います。 どのようなクエリが速くなるのか 具体的にどのようなクエリが速くなるのかについて考察します。 セルフマネージドテーブルストレージと比較すると、クエリパフォーマンスが最大 3 倍高速になり、1 秒あたりのトランザクション数が最大 10 倍になる 引用: Amazon Web Services ブログ の Amazon S3 の新しいテ

                                                                        Amazon S3 Tables と Iceberg Tables on Amazon S3 のパフォーマンス比較 #AWSreInvent | DevelopersIO
                                                                      • インデックスの"正解"を探せ!決済レスポンスタイムを改善したパフォーマンスチューニング - inSmartBank

                                                                        はじめに サーバーサイドエンジニアの kurisu(ryomak) です。 普段は、カード決済やあとばらいチャージに関連する機能の開発・運用を行っております。 本記事でお話しすること 本記事では、インデックス追加によって決済レスポンスタイムを改善した事例をご紹介します。具体的なインデックス設計の検討や実行計画の見直しを通じて、どのようにレスポンスタイムを最適化したのか、その裏側を詳しく解説します。インデックス追加によるパフォーマンスチューニングの際の参考になれば幸いです。 はじめに 本記事でお話しすること 決済処理の遅延の検知 事の発端 実行環境 原因調査 遅くなったクエリの特定 対応検討 方針 検証項目 インデックスの「アタリ」をつける ① オーソリゼーション履歴:(オーソリゼーションID, 承認番号,受信日時) ② オーソリゼーション:(カードID, 初回受信日時) ③ オーソリゼーシ

                                                                          インデックスの"正解"を探せ!決済レスポンスタイムを改善したパフォーマンスチューニング - inSmartBank
                                                                        • strings.Replacer を積極的に使おう

                                                                          はじめに Go Advent Calendar 2024 に参加の皆さま、お疲れさまでした。今年も良い Go ライフを送れたでしょうか。来年も良い Go 縁があると良いですね。 さて今日は strings.Replacer の話をしようと思います。 キーワード置換やってますか GitHub を見ているとよくこんなコードを目にする事があります。 s = strings.ReplaceAll(s, "hoge", "moge") s = strings.ReplaceAll(s, "foo", "bar") s = strings.ReplaceAll(s, "fizz", "buzz") 複数ある特定のキーワードを置換するコードですが、実はとても効率が悪いのです。strings.ReplaceAll は第一引数の文字列を走査し、第二引数にマッチした場合に第三引数へ置換し続ける実装です。つまり

                                                                            strings.Replacer を積極的に使おう
                                                                          • GAS高速化のススメ - Nealle Developer's Blog

                                                                            GAS高速化のススメ はじめに こんにちは。サクセスエンジニアリングチームの増田です。 今年の8月に入社して早4か月が経ちました。 入社エントリも公開していますので良ければ見ていってください note.nealle.com 最近週4でカレーばっか食ってます。 美味しいカレーの後がけスパイスやソースなどあればぜひ教えていただきたい...! GASについて みなさん普段から業務でGAS(Google Apps Script)利用されてますでしょうか。 GASは知っての通りセットアップ不要で使え、Googleサービス(Google Sheets、Gmail、Driveなど)への認証が標準で組み込まれている非常に便利なツールです。非エンジニアでも扱いやすく、業務効率化の手段として広く活用されています。 GASのデメリットと課題 そんな便利なGASですが多くの制限が存在します。 その中でも代表的なも

                                                                              GAS高速化のススメ - Nealle Developer's Blog
                                                                            • 米OpenAI、新たなAIモデル「o3」発表 「AGI」に最も近い性能に

                                                                              o3は、高度な推論が可能な「o」シリーズの最新AIモデルで、o1の次世代モデルに当たる。o3の他にも、小型モデルに当たる「o3-mini」も開発。o3-miniは、o3よりも思考時間が短く、コスト効率も優れているという。同社はまず、2025年1月末ごろにo3-miniから一般提供を始める予定だ。 関連記事 ChatGPTに“月額3万円”の新有料プラン登場 最高性能の「o1 pro mode」などAIモデル&ツール使い放題 米OpenAIは、新たな有料サービス「ChatGPT Pro」を発表した。現時点での同社の最高性能のAIモデル「OpenAI o1」を含む全AIモデルやツールを無制限で利用できる。 動画生成AI「Sora」ついに登場──OpenAIが提供 最大20秒の動画作成可能 ディープフェイク対策にも慎重 米OpenAIは12月9日(現地時間)、動画生成AI「Sora」を同日から提供

                                                                                米OpenAI、新たなAIモデル「o3」発表 「AGI」に最も近い性能に
                                                                              • LLM Supervised Fine-tuningの理論と実践

                                                                                「LLM Supervised Fine-tuningの理論と実践」のイベント資料になります。 https://connpass.com/event/337694/ 実装編のPythonコードは、以下からご覧ください。 https://colab.research.google.com/dri…

                                                                                  LLM Supervised Fine-tuningの理論と実践
                                                                                • キャッシュヒット率が1%変わるとどうなる?

                                                                                  「詳解 システム・パフォーマンス」 の 「2.3.14 キャッシング」 の節に、 ヒット率が98%のときと99%のときのパフォーマンスの差は、ヒット率が10%のときと11%のときのパフォーマンスの差よりもずっと大きい。キャッシュヒットのときとキャッシュミスのときのスピードの差、つまり関わっているふたつのストレージティアのスピードの差のために、非線形のプロファイルになる。 という記述がある。 以下のような図も載せられており、この図を見ると確かにヒット率が高いほど 1% による違いが出そうである。 ただ、あまり感覚的に掴めていなかったので実験してみた。 実験コード package main import ( "fmt" "time" ) func main() { // キャッシュのエントリ数を設定 cacheCount := 99 cache := make(map[int]bool, ca

                                                                                    キャッシュヒット率が1%変わるとどうなる?