重複コードは悪とは限らない
入社してプロダクトのコードを見たときに、同じようなロジックがいくつかのソースにあることに気付きました。 当初は「これはまとめた方がいいのでは?」と疑問に思っていました。wikipediaを調べて...
26 search resultsShowing 1~20 results
You need to log-in
入社してプロダクトのコードを見たときに、同じようなロジックがいくつかのソースにあることに気付きました。 当初は「これはまとめた方がいいのでは?」と疑問に思っていました。wikipediaを調べて...
アドベントカレンダー25(+α)記事を書ききって何が得られたか/反省点などを振り返ります。 結論 ①アドベントカレンダー自体が一年の技術活動の振り返りであり、それにより「リソースの配分」を考える...
ふと、「ARM版のOSをx86のPCにインストールしたらどうなるんだろう?」などの疑問が浮かび調べてみました。 UEFI、ブートローダー、OSともに実行の仕方は通常のプログラムと同様「CPUに命...
アドベントカレンダーのために20本近く記事を書いてきた中で、自分が大事にしていることが浮かび上がってきたように感じられました。 本記事ではそれらを書いていきたいと思います。 調査編 調査の対象は...
概要 ソフトの性能を引き出すためには、自分が開発しているのがどのレイヤーなのかを理解することは極めて重要です。 フレームワーク、ライブラリを使うような場合、特に性能に影響します。 しかし最初はO...
概要 新卒時代の私は、「設計」という言葉の意味がうまく飲み込めませんでした。 ググって出てくる辞書的な説明は以下のようなものです。 建築物や工業製品等といったシステムの具現化のため、必要とする機...
概要 本シリーズでは、自分が新卒1年目のときに知りたかった(≒理解に苦労した)事項を説明していきます。 当時の調べ方が悪かったんじゃないかとか、今はAIがあるから不要じゃないかとか色々考えられま...
概要 B+木はDBやファイルシステムなどで使われるデータ構造です。 これがどのような課題を、どう解決するものなのかをDBの例で説明します。 なお本記事で説明したものすべてを実装したのが以下のリポ...
TL;DR 数理科学10月号という素晴らしい書籍に出会った。 参考文献に挙げられていた論文(Zipfian whitening)をざっと読んでみた。 (ポエム)書店での運命的な出会い 私はLLM...
はじめに:Windows11のエクスプローラーが使い物にならない! 先日、Windows10のサポート終了がありました。 その影響でWindows11に移行し、使っていたのですがエクスプローラー...
プロセス間通信とは何か その名の通り、プロセス間で通信をすることです。 特に今回は、あるプロセスとその子プロセスの間で通信することを目指します。 きっかけ (この章は読み飛ばしていただいて構いま...
本記事では、llama.cppの主要部分がどこかや全体像を説明します。 前回記事を踏まえて本記事を読めば、llama.cppのソースを読んでいける状態になると思います。 まずはggmlのサンプル...
chatGPTなどを日々使っていて常々「こんな処理をどうやって実現しているんだろう?」という疑問を抱いていました。 最初のうちは、送った文章(プロンプト)に対して、文法的な解釈をしているのか?背...
ちょっとしたプレーンテキストをpcとスマホ(iphone)間で共有しようとしたときに、以前まではLINEやメモ帳(icloud経由共有)やgmailの下書きに保存、notionなどの方法を使って...
きっかけ ちょっとしたゲームを作ってスマホでいつでもどこでも触れたらいいな、と思い立ちました。 個人利用目的なので、サーバーサイドで処理が必要になるようなものだと自前でサーバーを立てたりが面倒そ...
概要 普段エクスプローラーを使う中で、ショートカット機能を使う方も多いのではないでしょうか。 ファイルを扱うシステムには、ほかにもいくつかの機能があります。今回はそれらの使い方などを紹介したいと...
前回の環境構築を前提にして、カーネルのソースにブレークポイントを貼って止めるところまでいきます。 gdbのインストール sudo apt install gdb linuxの起動、gdbと接続 ...
概要 経緯 ある日、LLMの仕組みが知りたい!と思って、調べてみたところ、ローカルでLLMを動かせるソフトとしてllama.cppというものがあると知りました。 C/C++なら多少なじみがあった...
概要 私は以前、pythonをメインで触っていました。理由は「とっつきやすい」と周りで評判だったからです。 ところが入社後Cをメインで触るようになって、「こっちの方がわかりやすいじゃん!」と感じ...
この記事では、llama.cppをビルドして、ブレークポイントを貼って止めるところまでの手順を紹介します。 LLMが自分のマシン上で動き、しかもデバッガを使える(つまり、解析可能な形になっている...
26 search resultsShowing 1~20 results
Qiita is a knowledge sharing service for engineers.