タグ

performanceに関するkiririmodeのブックマーク (44)

  • Everything you need to know about Python 3.13 – JIT and GIL went up the hill | drew's dev blog

    Everything you need to know about Python 3.13 – JIT and GIL went up the hill Table of Contents On 2nd October 2024, the Python core developers and community will release CPython v3.13.0 – and it’s a doozy. (Update: release has now been pushed back to 7th October.) So what makes this release different, and why should you care about it? In short, there are two big changes being made to how Python ru

    Everything you need to know about Python 3.13 – JIT and GIL went up the hill | drew's dev blog
    kiririmode
    kiririmode 2024/09/29
    PythonのGIL無効化が可能に。ライブラリ周りが結構混乱しそう。シングルスレッド前提の作りの場合はパフォーマンスペナルティあり。
  • useCallbackはとにかく使え! 特にカスタムフックでは - uhyo/blog

    Reactには、パフォーマンス最適化のためのAPIがいくつかあります。具体的にはReact.memo、useMemo、そしてuseCallbackです。 React.memoで囲まれた関数コンポーネントは、propsが以前と変わっていない場合に再レンダリングが抑制されます。 また、useMemoやuseCallbackは、関数コンポーネント内での値の再計算を抑制する効果を持ちます。 これらは最適化のためのツールなので、「過度な最適化」を避けるように啓蒙する言説がよく見られます。 すなわち、ちゃんと当に最適化のために必要なところにだけこれらを使おうということです。 特に、React.memoはpropsが以前と変わっているかどうかを判定するためのオーバーヘッドがあるし、useMemoやuseCallbackもフック呼び出しのオーバーヘッドがあります。 意味がないところでReact.memo

    useCallbackはとにかく使え! 特にカスタムフックでは - uhyo/blog
    kiririmode
    kiririmode 2024/08/28
    "カスタムフックが関数を返すなら常にuseCallbackで囲め"
  • Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 - Qiita

    Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 0.目的 インフラ開発者として、必須な性能分析を身につけることを目的としています。 カーネルパラメータをチューニングをする際に性能分析を前提とし、分析結果からチューニングしていきますが、具体的な指標というものが少ないので参考になれば幸いです。 基的なvmstatの使い方については、ちょっとググればいくらでも出てくるので割愛します。 「Linuxカーネルパラメータのチューニング&設計」でロードアベレージが高い状態にある場合、次のアクションとしてCPU使用率の確認が必要となりますので、vmstatの結果分析および対処法について深堀していきます。 よって、vmstatの結果分析と対処法を理解すると性能試験を実施した際のその対処法とカーネルパラメータによるチューニングする対象が理解できるかと思います。 1.パフォ

    Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 - Qiita
  • Chrome Developer Toolsでパフォーマンス計測・改善 - Qiita

    Chrome Developer Toolsを使ったWebページのパフォーマンス計測・改善についての説明です Networkパネル、Timelineパネル、Profilesパネルの使い方を説明してから パフォーマンスの計測・改善について説明していきます Networkパネル Networkパネルはページのリクエストをしてからの通信内容の一覧を表示します 記録方法 左上のRecordボタンを押すと記録が始まる もう一度押すと記録が停止する 必要に応じて、Disable cacheやCapture screenshotsを設定する 表示項目の変更 赤枠で囲んだ部分を右クリックすると こんな感じでメニューが出てくるので表示したい項目をクリックする 項目の一例 Name:リソースの名前 Method:HTTPメソッドの種類 Status:レスポンスのステータスコードとテキスト Type:リソースの

    Chrome Developer Toolsでパフォーマンス計測・改善 - Qiita
    kiririmode
    kiririmode 2024/06/09
    Chromeのdevtoolsを使ったパフォーマンス解析。メモリ量のobjectごとの断面比較やメソッドレベルのプロファイリング等。非常に参考になる
  • Chrome DevToolsを用いたメルカリWebのパフォーマンス計測 - Mercari Engineering Blog

    フロントエンドチームの @urahiroshi です。Mercari Advent Calendar 2018 12日目を担当します。 今年の8月から12月にかけて,メルカリ・メルペイのフロントエンドチーム有志で「超速!Webページ速度改善ガイド」の社内輪読会を行いました。 このの中で,「推測するな,計測せよ」という言葉が紹介されていますが,今回の記事は,輪読会で学んだことのまとめとして,Chrome DevToolsを用いてメルカリWebのパフォーマンス計測と簡単な分析を行ったものです。 なお,現在メルカリWebのアーキテクチャを刷新するための開発が進んでいるため,ここで計測したパフォーマンスの値は大幅に変化していく可能性が高いです。アーキテクチャの刷新後に振り返って見られる楽しみが増えることも、この記事を書いた目的の一つです。 計測方法,環境 計測はGoogle Chrome 71.

    Chrome DevToolsを用いたメルカリWebのパフォーマンス計測 - Mercari Engineering Blog
    kiririmode
    kiririmode 2024/06/09
    Chrome DevToolsのOverview、Detailセクションを用いたパフォーマンス測定、プロファイリング
  • 生成AIの能力をどう評価するか? ~激化するLLM競争を正しく見極めるために~|こへもこ

    はじめにはじめまして、ウイングアーク1stのこへもこと申します。 今回の記事では、大規模言語モデル(LLM: Large Language Models、以後LLM)の性能評価の裏側を紐解いていきたいと思います。 生成AI(Generative AI)、特にLLMの進化は目覚ましいものがあります。GPT-4o, Claude 3, Gemini 1.5, command R+など数々のモデルが登場し、その驚異的な能力により、自然言語処理(NLP)の分野だけでなく、多くの産業で応用が広がっています。(2024年5月時点) 多くの企業が自社のLLMの優れた性能をアピールしていますが、その発表を鵜呑みにすることは注意が必要です。各社の発表に対して、私たちが正しい目を養い、客観的かつ公正な視点でLLMを評価することが重要です。 記事では、LLMの評価に使用される「MMLU」という指標をベースに、

    生成AIの能力をどう評価するか? ~激化するLLM競争を正しく見極めるために~|こへもこ
    kiririmode
    kiririmode 2024/06/02
    LLMの性能評価指標としてのMMLU指標の概要・評価方法。内部ではプロンプトエンジニアリングとして0-shot Chain of Thoughtが使われている。
  • Load Testing RAG based Generative AI Applications

    kiririmode
    kiririmode 2024/06/01
    開発と評価フェーズで、LLMアプリの高品質かつ安全な応答を保証。応答時間の評価に焦点を当て、アプリを最適化するための戦略と方法論を提供。
  • 型キャストの場所のせいで、秒で終わっていたクエリに1時間超かかるようになってしまった話 - SmartHR Tech Blog

    SmartHRで届出書類という機能を担当しているプロダクトエンジニアのsato-sと申します。 今日は、以前私が調査にとても苦労したパフォーマンス上の問題の話を紹介したいと思います。 TL;DR PostgreSQLのアップグレードを実施した アップグレード後、今までは問題のなかった特定のクエリの実行に1時間超かかり、DBCPU使用率がピッタリ100%に張り付くようになった 色々調査した結果、PostgreSQL上の型キャストの場所のせいで、良くないクエリプランが選択されることが原因だった 型キャストの場所には気をつけよう PostgreSQLのアップグレードと挫折 SmartHRでは基的にWebアプリケーションのデータベースとしてGoogle CloudのCloudSQLによって提供されるPostgreSQLを利用しています。 私の担当している届出書類機能では、利用中のPostgre

    型キャストの場所のせいで、秒で終わっていたクエリに1時間超かかるようになってしまった話 - SmartHR Tech Blog
    kiririmode
    kiririmode 2024/01/21
    キャストによってオプティマイザがフィルタの推定行数を誤ってしまいパフォーマンス劣化に繋がる例。pev2による実行計画の可視化も参考になる
  • Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル)oracleWeb この記事は、 JPOUG Advent Calendar 2023 24日目の記事です。 23日目は multilayer さんの記事『OCIのLanding Zoneについて調べてみた!』でした。 想定読者 ファントムファイルについてよく知らない、帳票の扱い方をあまり考えたことがない人 イントロダクション 皆さん、世の中のWebシステムで利用される画像や帳票ファイルがどこに保存されているかご存知でしょうか? 帳票や大きな画像ファイルなどを扱う際、大きく分けて2つの設計方針があります。 ・DBに直接保存する ・DB外部に保存し、パスなどをDBに保存する オライリーのSQLアンチパターンの、”ファントムファイル”という章にはこのあたりのことが書いています。 [Amaz

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita
  • Optimizing bulk loads in Postgres, and how COPY helps with cache performance

    kiririmode
    kiririmode 2023/12/31
    マルチバリューINSERTよりもCOPYの方が早くバッファキャッシュにも影響が小さい。WALのサイズとcheckpoint感覚をチューニングすればなお高速になる
  • ISUCON13にLLM活用担当で参戦しました - LayerX エンジニアブログ

    こんにちは、LayerX CTOの@y_matsuwitterです。最近はパン作りにハマっています。無心に小麦と酵母の声を聞くことで精神の安寧を求めています。 この記事は LayerXテックアドカレ2023 19日目の記事です。前回は @shota_tech が「Golinter 雰囲気で使っていたから調べ直した #LayerXテックアドカレ」を書いてくれました。次回はEMオフィスの@serimaより「Engineering Officeの話」がポストされる予定なのでご期待ください。 ISUCON13 昨日開催のISUCONに参加してきました。とても楽しい問題ですし、これだけの人数での開催を支えている運営の皆さんには頭が上がりません。個人でもLayerXとしてもスポンサーさせていただきました。ありがとうございます! 10年近く一緒に出場している.datというチームで、私はプロンプトを

    ISUCON13にLLM活用担当で参戦しました - LayerX エンジニアブログ
    kiririmode
    kiririmode 2023/12/01
    LLMを使ったパフォーマンスチューニング。入力トークン数上限の増加に伴い相当有用なものになっている
  • YAPC::Kyoto 2023でDNS水責め攻撃とGoによるベンチマーカの発表をしてきました #yapcjapan - Hateburo: kazeburo hatenablog

    YAPC::Kyoto 2023 に参加してきました! 数年ぶりに開かれたYAPCで、数年ぶりに会うエンジニアの同窓会みたいな雰囲気ありつつ、新しい参加者も多く最高でした。オフラインイベント楽しいです。スタッフの皆様ありがとうございました!! 京都まで行かせてくれた家族にも感謝 会場のKRPは2006年まで働いていた場所で、17年も経ってそこで発表する機会をいただいたのは個人的に感慨深いものがあります。はてなの大西さんの発表は自分にとってもとても懐かしく聞いておりました。 エモさしかない pic.twitter.com/6V8gpxx4bg— 達人が教えるつぶあん🇺🇦 (@kazeburo) 2023年3月19日 発表してきた 私の発表はこちら speakerdeck.com DNS水責め攻撃とその対策については1月に開催されたJANOG51 Meeting in 富士吉田でも紹介して

    YAPC::Kyoto 2023でDNS水責め攻撃とGoによるベンチマーカの発表をしてきました #yapcjapan - Hateburo: kazeburo hatenablog
    kiririmode
    kiririmode 2023/11/25
    DNS水責め攻撃の内容・対策・テスト
  • パフォーマンスチューニング9つの技 ~「探し」について~|PostgreSQLインサイド

    今回の記事は、パフォーマンスチューニングの観点と仕組みを理解することに主眼を置いています。具体的な対処方法についてはシステムによって異なるため、マニュアルの確認や、各種チューニングサービスのご利用をご検討ください。なお、この記事で対象にしているPostgreSQLのバージョンは9.5以降です。 記事の構成 記事「パフォーマンスチューニング9つの技」は以下4つの記事から構成されています。他の記事も併せてご覧ください。 パフォーマンスチューニング9つの技 ~はじめに~ パフォーマンスチューニング9つの技 ~「書き」について~ パフォーマンスチューニング9つの技 ~「探し」について~(記事) パフォーマンスチューニング9つの技 ~「基盤」について~ 1. パフォーマンスチューニングの「探し」とは PostgreSQLは、SQLが発行されると、アクセス先のデータの特性を示す『統計情報』を参照

    パフォーマンスチューニング9つの技 ~「探し」について~|PostgreSQLインサイド
    kiririmode
    kiririmode 2023/07/12
    参照系のチューニング。ポスクレの実行計画の読み方解説としても今まで読んだ中で一番分かりやすかった
  • パフォーマンスチューニング9つの技 ~「書き」について~|PostgreSQLインサイド

    今回の記事は、パフォーマンスチューニングの観点と仕組みを理解することに主眼を置いています。具体的な対処方法についてはシステムによって異なるため、マニュアルの確認や、各種チューニングサービスのご利用をご検討ください。なお、この記事で対象にしているPostgreSQLのバージョンは9.5以降です。 記事の構成 記事「パフォーマンスチューニング9つの技」は以下4つの記事から構成されています。他の記事も併せてご覧ください。 パフォーマンスチューニング9つの技 ~はじめに~ パフォーマンスチューニング9つの技 ~「書き」について~(記事) パフォーマンスチューニング9つの技 ~「探し」について~ パフォーマンスチューニング9つの技 ~「基盤」について~ 1. パフォーマンスチューニングの「書き」とは 一般的にデータベースは、大量データを扱い、大量の問い合わせや更新を高速に処理し、さらに障害発生

    パフォーマンスチューニング9つの技 ~「書き」について~|PostgreSQLインサイド
    kiririmode
    kiririmode 2023/07/12
    書き込みに対するチューニング
  • GitHub - QAInsights/jpetstore-docker: lightweight container for JPetStore

    kiririmode
    kiririmode 2023/05/06
    jpetstoreのDockerイメージ用
  • 性能評価の指標を合わせる方法 - pTune.jp

    「1万ユーザーの同時アクセスに対応できるようにして欲しい」という要望を受けることがあります。 このようなケースでは、負荷テストをお勧めすることが多いのですが、負荷テストで確認できるのは「秒間のリクエスト数」です。「1万ユーザーの同時アクセスに対応できること」を証明するためには、「1万ユーザーの同時アクセス」をブレイクダウンして、「秒間のリクエスト数」に落とし込む必要があります。 この記事では、「1万ユーザーの同時アクセス」を「秒間のリクエスト数」に落とし込む方法を説明します。 「1万ユーザーの同時アクセス」を「秒間のリクエスト数」に落とし込む 秒間のリクエスト数を計算するためには、次の式を使います。 秒間のリクエスト数 = ユーザー数 × ページ/ユーザー ÷ 想定時間(秒) × ピーク特性 それぞれについて、説明していきます。 ユーザー数 アクセスしてくる可能性がある、ユーザーの総数を確

    kiririmode
    kiririmode 2022/08/27
    同時アクセスユーザ数から秒間リクエスト数を導出するときの考え方
  • AWS Lambda battle 2021: performance comparison for all languages (cold and warm start)

    Let’s compare the performance of all supported runtimes + 2 custom runtimes (Rust and GraalVM). Will compare cold start and warm. Source code is here: https://github.com/Aleksandr-Filichkin/aws-lambda-runtimes-performance. It requires the minimum local setup(almost all is Dockerized) NodeJs (14.x)Python (3.9)Go(1.x)Ruby(2.7).Net(3.1)Java (11)Rust(1.54.0)GraalVM(21.2)Disclaimer:All benchmarks were

    AWS Lambda battle 2021: performance comparison for all languages (cold and warm start)
    kiririmode
    kiririmode 2021/10/17
    コールドスタートを含んだ、lambdaでの言語ごとのパフォーマンス比較
  • How much faster is Java 17?

    Java 17 (released yesterday) comes with many new features and enhancements. However, most of those require code changes to benefit from. Except for performance. Simply switch your JDK installation and you get a free performance boost. But how much? Is it worth it? Let’s find out by comparing the benchmarks of JDK 17, JDK 16 and JDK 11. Hardware: A stable machine without any other computational dem

    How much faster is Java 17?
    kiririmode
    kiririmode 2021/09/20
    Java17は11に対し、G1GCでもParallel GCでもパフォーマンスメリットがある
  • システムの応答速度は本質的な価値提供であることを示す A/B テストの実例

    2021-08-13 内容システム提供において、基的に高速であればあるほど顧客は嬉しいものだが、実際のところ高速なシステムを提供して、どの程度の価値が発生するのかが気になったので、調べてみた。 2021/08/14 追記A/Bテスト実践ガイド 真のデータドリブンへ至る信用できる実験とは の書籍で同様な事例が紹介されているとのこと。情報提供ありがとうございます。実務でA/Bテストに向き合った人間であれば必ず一度は考えたことのあるトピックについて、アメリカのテックカンパニー(Airbnb, Google, LinkedInなど)勤務の著者らが国際会議で発表された研究もちゃんと引用して見解を述べており説得力がある。 従って、現時点における最高レベルの意思決定をデータ(A/Bテスト)に基づいて行いたいと思うなら、一度は目を通しておくべきであり関係者必携だと思う。 ※個人的には”Webサービスのレ

    システムの応答速度は本質的な価値提供であることを示す A/B テストの実例
    kiririmode
    kiririmode 2021/08/14
    敢えてレスポンスを遅くするA/Bテストで検索実行を行う人数にどれだけ影響を及ぼしたかという Speed Matters 実験の結果
  • パフォーマンスのベスト プラクティス - Azure Database for MySQL - Flexible Server

    重要 Azure Database for MySQL シングル サーバーは廃止パスにあります。 Azure Database for MySQL フレキシブル サーバーにアップグレードすることを強くお勧めします。 Azure Database for MySQL フレキシブル サーバーへの移行の詳細については、Azure Database for MySQL シングル サーバーの現状に関するページを参照してください Azure Database for MySQL フレキシブル サーバーの使用時に最高のパフォーマンスを得る方法について説明します。 Microsoft は、プラットフォームに新しい機能を追加していく中で、このセクションで詳しく説明するレコメンデーションを改善していきます。 物理的な近接 アプリケーションとデータベースを同じリージョンにデプロイしていることを確認します。 パフ

    パフォーマンスのベスト プラクティス - Azure Database for MySQL - Flexible Server