An IDE built on top of a canvas, Haystack takes care of the tedious and confusing parts of coding for you
![Haystack](https://cdn-ak-scissors.b.st-hatena.com/image/square/692ee725438a83f959b4516698a59bd56ee171f9/height=288;version=1;width=512/https%3A%2F%2Fframerusercontent.com%2Fassets%2F9bx5KI14yg2zRgbrESEvKFOdFM.png)
Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 0.目的 インフラ開発者として、必須な性能分析を身につけることを目的としています。 カーネルパラメータをチューニングをする際に性能分析を前提とし、分析結果からチューニングしていきますが、具体的な指標というものが少ないので参考になれば幸いです。 基本的なvmstatの使い方については、ちょっとググればいくらでも出てくるので割愛します。 「Linuxカーネルパラメータのチューニング&設計」でロードアベレージが高い状態にある場合、次のアクションとしてCPU使用率の確認が必要となりますので、vmstatの結果分析および対処法について深堀していきます。 よって、vmstatの結果分析と対処法を理解すると性能試験を実施した際のその対処法とカーネルパラメータによるチューニングする対象が理解できるかと思います。 1.パフォ
本記事ではGoのiter(イテレーター)についての「知らなくても良いけど知っていたらイザという時に助かるかもしれないこと」を紹介します。iterの基本的な使い方等は説明しませんので、以下のmattnさんによる記事を参照してください。 Goのiterの実現方法 では本題。Goのiterとはコルーチンです。Goにおけるコルーチンの導入はRuss CoxのCoroutines for Goという記事にその分析と設計が書かれています。同記事の日本語による拙作のメモがありますので気になる方はそちらもご参照ください。 Russ Coxはこの記事において、コルーチンとはコールスタックの分離と任意の場所への付け替えだ、と分析しました。またgoroutineとチャンネルを用いてコルーチンを実装し、満たすべき機能的要件を明らかにし、また性能的要件からGo言語本体に必要な変更を示しています。この機能と性能の要件
概要 AWS とかで踏み台ホスト経由(ここでは AWS っぽく bastion と呼ぶ)で ssh する必要があるなら ~/.ssh/config は↓みたいにしとくのが良いんじゃないかな? Host bastion Hostname bastionのIPアドレス User bastionのユーザ名 # ↓は規定のファイルだったり ssh-agent 使ってれば不要 IdentityFile bastion接続用の秘密鍵ファイル名 # ↓の3つはWindowsでは使えないので諦めて ControlMaster auto ControlPath ~/.ssh/cp-%r@%h:%p ControlPersist 10m Host 好きな接続先名 Hostname 接続先のIPアドレス User 接続先のユーザ名 # ↓は規定のファイルだったり ssh-agent 使ってれば不要 Identi
はじめに Go 1.23 で iter パッケージが導入されました。この iter は抽象化されたイテレータを示す仕組みと実装です。未だどの様に活用して良いか分からない方もいると思いますので、使い方を簡単に解説しようと思います。 概念 iter パッケージは、現状は for-range でのみ利用可能です。スコープにコンテキストを持ったロジカルな列挙可能オブジェクトと、それを別のスコープにて for-range でイテレートする際に便利です。 これまでであれば、こういった実装は goroutine と channel を使いスコープを分割させる事で実装してきました。 package main func iter1[T any](a []T) func() (T, bool) { ch := make(chan T) go func() { defer close(ch) for _, v
初めまして。経営企画本部AI推進室の鏡味、窪田、小林と申します。当社は本年度、AI推進室という新組織を発足させ、主に生成AIについての社内の利用促進、およびユーザーへ生成AIを活用したソリューションの提供を進めるべく、新技術の展開や検証を行っています。 今回は、最近話題となっている、Microsoftが発表したRAG(Retrieval Augmented Generation)技術であるGraphRAG ⧉について、元となる論文やブログ記事、GitHubのコードを元に内部の構造を解析し、さらに現時点でどの程度実用的かを考察していきます。 GraphRAGとは GraphRAGは、ナレッジグラフと生成AIの技術を組み合わせることで、従来のRAGでは対応が難しかった問い合わせに回答できるようになったRAGです。2024年2月にMicrosoftによって発表 ⧉され、その後、2024年7月にリ
世の中に不満があるなら自分を変えろ。それが嫌なら耳と目を閉じ、口を噤んで孤独に暮らせ。それも嫌なら・・・ 「世の中に不満があるなら自分を変えろ。それが嫌なら耳と目を閉じ、口を噤んで孤独に暮らせ。それも嫌なら・・・」 これは攻殻機動隊STAND ALONE COMPLEXの冒頭でビルに破壊工作を仕掛ける何者かが発する「もはや体制に正義はなしえない」という言葉に作品の主人公である草薙素子が返すセリフです。 このセリフは非常にインパクトがあり、SNSなどでいまでも多く引用されているのですが、大抵の場合は文字通りの意味で「世の中に不満を言わずに受け入れろ」と引用されてしまっています。 しかしながら、本来、このセリフは物語全体で否定されるべきテーゼとして提示されており、そのまま文字通りの意味で引用してしまっては作品の読解として間違いです。 攻殻機動隊 STAND ALONE COMPLEXとは攻殻機
前回は、カーネルのお話から一度離れて、LinuxContainersプロジェクトから発表されたIncusというプロダクトを紹介しました。 少し間が空いてしまいましたが、今回からはまたLinuxカーネルの機能紹介に戻りましょう。第53回、第54回で紹介したCPUコントローラの話に続いて、メモリコントローラのお話をします。 メモリコントローラについては、以前、第5回で簡単に説明しています。このときの説明はcgroup v1のメモリコントローラを説明しました。今回は、cgroup v2のメモリコントローラを紹介します。 メモリ回収処理とメモリ負荷 コントローラを説明する前に、メモリコントローラを説明する前提となる、メモリの回収処理とメモリ負荷について簡単に紹介します。さらに詳しい情報については、Linuxカーネルの解説文書などをご参照ください[1]。 OS実行中には、色々とメモリを使う要素が存在
今日はbuilderscon 2024の開催日でした。 自分が立ち上げて(でも心折れて開催しなくなった)イベントを、自分が関わらないところで続けてくれるというのは、なんとも感慨深いものです。少なくとも俺のやろうとしてたことは意味があったんだな、という気持ちにさせられました。 開催にこぎつけた@nasa9084さん、ありがとう!他のスタッフのみなさまも本当にお疲れさまでした。 さて、今回私は運営にはTシャツのスポンサー以外一切ふれてないのですが、実は開催前日の時点でスケジュールに穴があくかもしれないという話をSlackで聞いたので、それを聞いた私はすぐさまGoogle Docsで原稿を書き始めました。で、すぐ書きおわったのですが、その時にはもうonkさんとsongmuさんが代役に決まったので私の話は無事オクラ入りになりました。 ならまあ、供養しとこうかな、ということでここに載せることにしまし
はじめに こんにちは! 2024年度新卒エンジニアの山本です! 株式会社リクルートの新卒エンジニアは部署配属される前にBootCampと呼ばれる研修を受けることになります。 今年は約3ヶ月間の研修があり、実際に受講した立場から講座の共有や紹介を行っていきたいと思います。 研修概要 研修では、配属後で活かせるエンジニアリング技術を体系的に学ぶことができるだけでなく、ヒューマンスキル育成や事業理解といったプログラムも準備されているため、エンジニアとして様々な観点から成長できる機会になっています。 エンジニアリング技術に関しては、フロントエンド、バックエンド、モバイルアプリ、インフラ、セキュリティなど幅広い講座が用意されています。講座によっては、チーム開発や競技形式での手を動かして学ぶ講座も用意されており、より理解を深められるような講座になっています。 ヒューマンスキル育成に関しては、ロジカルシ
このコーナーでは、2014年から先端テクノロジーの研究を論文単位で記事にしているWebメディア「Seamless」(シームレス)を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。 X: @shiropen2 上海大学の研究者らが発表した論文「Entangled biphoton generation in the myelin sheath」は、脳内の神経繊維が、量子もつれによって結びついた光子のペアを生成する可能性を理論的に示唆した研究報告である。実験によって裏付けられれば、この現象は、脳内の何百万もの細胞がどのようにして活動を同期させ、脳を機能させるのかを説明できる可能性がある。 脳が活動する際、何百万もの神経細胞が同時に発火(電気信号を発する動き)する。この現象には、多数の神経細胞の同期活動、つまり遠く離れた細胞同士でもタイミングを合わせる必要がある
情報を発信する人のところに情報が集まることを日々実感しているので、Linuxのメモリ管理に特に詳しいわけではないのですが最近遭遇した問題について自分の理解を書いておきます。ざっと調べても同じことを書いている人を見つけられなかったので、公開には意義があると考えています。識者の方がフィードバックをくださると嬉しいです。 ※ AIの出力をベースに書いているのでいつもと少し文体が違います。 背景 要約 調査 再現の難しさ Goアプリケーションの調査 pprofによる分析 GCログの調査 Linuxの調査 Goランタイムの調査 GoのGCとTHP khugepagedの問題 Goランタイムにおける回避策 回避策の削除 max_ptes_noneのデフォルト値について MADV_NOHUGEPAGEをやめた理由 調査内容まとめ 解決策 検証 C言語 Go言語 まとめ 背景 Go言語で書かれたOSSのア
私は世界規模のクラウドプラットフォームの開発者で、現在はシアトル付近に住んでいる。 先日書いた自分のポストに対する反応で面白い意見があってそれを読んでそらそう思うやろなぁと思った。ただ、私も別に嘘を言っているわけではないですし、これでビジネスも回っている。面白そうなので、その辺も調べてシェアすることにしてみました。 ウォーターフォールからアジャイルって開発側の話はいいのだが、それだと管理とか経営とか非エンジニアの理解を得られないので、納得できるところをちゃんと言語化してほしいんだよな。アジャイルの人の「見積もりがない」って言葉を使われるのが一番苦手、ストーリーポイントの設計は「計画と見積もり… — えふしん (@fshin2000) August 1, 2024 自分のチームの開発プロセス的なものこちらの方に自分のチームが現在やっている開発プロセスは書いてある。アジャイルとか、DevOps
「Developers Summit 2024 Summer」での発表資料です。
Goにおけるタスクランナーの歴史 npmならnpm run、denoならdeno taskなど言語ツールにタスクランナー機能が付属していることがありますが、Goではそのような機能は提供されていません。 そこでGoのプロジェクトではMakefileがタスクランナーとして用いられることがしばしばありますが、独自の文法、.PHONYを大量に書く必要がある、Makefile警察が飛んでくる、などの問題があります。 Makefile警察「ぐぬぬぬ…」 #taskfile - Qiita タスクランナーとしてMakefileを使うことから脱却すべく、巷ではYAMLベースの「Task」やGoベースの「Mage」が用いられている印象です。 どちらも多少試したことはありますが、主に以下の点が気になりました。 Taskfile.ymlやmagefile.goといったツール独自のファイルを置く必要がある これは
人には、どの人にもある「思考のクセ」が存在しています。 そうしたクセは、普段あまり意識されることはありませんが、「知っている」人は、それを良くも悪くも「実態を隠す技術」や「他人を操作する技術」として使うことがあります。 例えば、「アンカー効果」として知られている思考のクセがあります。 これは「予測を立てる直前に見た数字をアンカー(よりどころ)にしやすい」という傾向です。 当然これは、金儲けにも利用できます。 数年前、アイオワ州スーシティーのスーパーマーケットがキャンベル・スープのセールを行い、定価から約一〇%引きで販売した。数日間は「お一人様12個まで」の張り紙が出され、残り数日間は「お一人何個でもどうぞ」の張り紙に変わった。 すると、制限されていた日の平均購入数は七缶で、制限なしの日の二倍に達したのである。 ファスト&スロー (上) このように、心理に関する知識は、成果を大きく左右するこ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く