並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 948件

新着順 人気順

cppの検索結果1 - 40 件 / 948件

  • 私が独学をして、マジ神だと思うサイトおよび他 - Qiita

    初めに 私は独学でプログラミングその他について勉強をしていますが、基本的に知識を得るために金はかけません。調べれば何とかなるので。 私がプログラミングを始めるにあたって自分に投資したものは安いノートパソコンとマウスのみで合計金額は14600円(ノートパソコン14000円、マウス600円)ですね。 もちろんいいものはお金をかけなければ手に入りません。しかし、いいものというのはある程度のレベルにならなくては持っていても意味がほとんどないと思います。 実際にプログラミングの勉強を独学で始めると、なかなか教材を見つけることができず、え?こんないいサイトあったの!?もうちょっと早く見つけときゃあよかった!というものがめっちゃありましたので、これから独学でプログラミングの勉強をしたいという方に向けて、少しでもお役に立てたらと、紹介をしたいと思います。 というわけで、今回は私が感謝する神サイトおよびその

      私が独学をして、マジ神だと思うサイトおよび他 - Qiita
    • 最近ローカルLLMがアツいらしい

      最近、ローカルLLMがアツくなっているという話をtwitterでチラホラ見かける。 ローカルLLMって何じゃ?というと、オープンに公開されているモデルのウエイトをDLしてきて手元のPC上で推論させる事である。 オープンなAIモデルとは逆の存在として、モデルがDLできないクローズなAIモデルもある。 OpenAIやAnthropicのような最先端AI企業のクローズなAIモデルに比べて、オープンに公開されているオープンなAIモデルの性能は今でもかなり後れを取っている。 だから去年の間はあくまでAIの本命はChatGPTのようなクローズモデルであって、オープンなAIモデルなんて眼中にありませんみたいな風潮が無くはなかった。だが最近は風向きが少々変わってきている。 GPTのAPI高い問題 & OpenAIがAIベンチャー皆殺しにしてしまう問題 まず「結局GPTのAPIを叩いてサービス運営して成功し

      • ブラウザにおけるメモリリークを解決するために読んでおけると良い資料 - mizdra's blog

        最近趣味や仕事の Web アプリケーションでメモリリークに遭遇して、頑張ってメモリリークの原因を突き止めて修正する、ということがあった。その過程でメモリリークについて色々調べて知見が溜まったので、学習資料の紹介という形でアウトプットしてみる *1。 前置き 紹介する記事がかなり偏っていることに注意 冒頭で触れたメモリリークを解決するために読んだ記事をまとめただけなので、内容にそれなりの偏りがある 例えば id:mizdra が遭遇したメモリリークは全てブラウザ上で発生していたものだったので、これから紹介する内容も主にブラウザにおけるメモリリークに焦点を当てたものになる GC がどうメモリをどう解放しているか、何故メモリリークが発生するのかは全てカット 調べれば色々な記事が出てくるので、必要に応じて読んでください 基本的な知識を抑える まずメモリリークとメモリ撹拌の違いを学ぼう どちらも同じ

          ブラウザにおけるメモリリークを解決するために読んでおけると良い資料 - mizdra's blog
        • C++ の学習サイトを作りました - Qiita

          はじめに C++ って他の言語に比べると勉強しづらくないですか? 書籍や学習サイトの内容が古い、または少ないんですよね。ただでさえ言語仕様が複雑なのに、それを手助けする情報も少ないと初学者には辛いんじゃないかと思います。というか僕がそうでした。 そんなわけで、もう少し今風な学習サイトを作ろうと思って作成しました。 ゼロから学ぶ C++ ちゃんとスマホでも読めるようになっています。 C++11 をベースに作っているので、このサイトももはや古い方に入るかも知れませんが、C++20 が浸透してきたらアップデートしようと思います。 よかったらご活用下さい。 ゼロから学ぶ Python(姉妹サイト) 『ゼロから学ぶ Python』というサイトも作成しています。あわせてご活用下さい。 さいごに 上記のサイトはどちらも GitHub でソースコードを管理しています。 スターを付けてもらうと励みになります

            C++ の学習サイトを作りました - Qiita
          • テレビが勝手に通信してるを調べた時のメモ(テレビ朝日) - Qiita

            テレビのインターネット接続機能 「テレビ視聴データに関する民放5社共同の技術検証および運用実証実験」ってニュースが流れてたけど、そもそも「テレビ視聴データって何?」「どうやって取ってるの?」「Dボタンを押さなくても勝手に通信するの?」と疑問が浮かび調べてみた。 この記事で扱っているデータは、5社共同実験の期間終了後なので、他社と視聴ログを共有しない「テレビ朝日 - 視聴データの取扱いについて」の挙動と考えます。 この記事では扱っておりませんが、他局( フジテレビ / TBS / テレビ東京 / 日本テレビ / NHK )からも同様の告知が出ていることから、他局も同様の機能を持っていると考えられます。 作業環境 スイッチは「NETGEAR GS108Ev2」 テレビを接続したポートからパケットキャプチャを接続したポートへのミラーポートを設定。 パケットキャプチャは「Wireshark」 「テ

              テレビが勝手に通信してるを調べた時のメモ(テレビ朝日) - Qiita
            • サービス間通信のための新技術「gRPC」入門 | さくらのナレッジ

              たとえば次のような「user.proto」というプロトコル定義ファイルを用意し、これを変換する例を見てみよう。 syntax = "proto3"; message Picture { uint32 id = 1; uint32 width = 2; uint32 height = 3; enum PictureType { PNG = 0; JPEG = 1; GIF = 2; } PictureType type = 4; } message User { uint32 id = 1; string nickname = 2; string mail_address = 3; enum UserType { NORMAL = 0; ADMINISTRATOR = 1; GUEST = 2; DISABLED = 3; } UserType user_type = 4; repeated

                サービス間通信のための新技術「gRPC」入門 | さくらのナレッジ
              • printfに4285個アスタリスクをつけるとclang++が死ぬ - Qiita

                def check(n) s = "*"*n f = open("test.cpp","w") f.puts <<EOS #include <cstdio> int main(){ (#{s}printf)("Hello World\\n"); } EOS f.close() return system("clang++ test.cpp") end check(ARGV[0].to_i) $ ruby check.rb 10000 clang: error: unable to execute command: Illegal instruction: 4 clang: error: clang frontend command failed due to signal (use -v to see invocation) Apple LLVM version 10.0.1 (clang

                  printfに4285個アスタリスクをつけるとclang++が死ぬ - Qiita
                • ゲーム開発者のための C++11~C++20, 将来の C++ の展望 - CEDEC2020 - Speaker Deck

                  ゲーム開発者のための C++11~C++20, 将来の C++ の展望 【CEDEC ページ】https://cedec.cesa.or.jp/2020/session/detail/s5e8327a52702c 【解説付きの書籍版 📚】https://zenn.dev/tetsurom/books/cpp11-cpp20-for-game-developers

                    ゲーム開発者のための C++11~C++20, 将来の C++ の展望 - CEDEC2020 - Speaker Deck
                  • おっさんのためのModernC++入門ガイド(草稿) - dec9ue's diary

                    みなさんはC++の読み書きができますか? 自信がある方、いつ頃勉強しましたか?もし20世紀に勉強したのであれば、その知識は相当古いです。実質現在のModernC++(C++11以降のC++)とは概念上の互換性がないので脳のアップデートが必要です。 自信がない方、文法は知っているけどなんとなく使いこなせていない方、マサカリ屋にあーだこーだ言われて大混乱している方。必勝パターンを身につければもっと楽にコードを読み書きできるようになるかもしれません。 この文章の目的は、ModernC++におけるメンタルモデル(考え方)や必勝パターンをざっくりと導入することでみなさんが楽にModernC++を読み書きできるようなお手伝いをすることです。主要な内容としてはムーブセマンティクスと右辺値 とその次の章でだいたいA4換算で15ページくらい?ほかは正直流し読みしてもらえるような内容です。また、内容的にはその

                      おっさんのためのModernC++入門ガイド(草稿) - dec9ue's diary
                    • リンカ

                      ついに、リンカの説明をするときが来た。 ここに至るまでに、何度「リンカのところで説明する」と書いただろうか? ここまで読んできた人ならば、 リンカというものが、なにやら色々やっているんだな、というのはわかってきたのではないかと思う。 筆者が常々思っていることのひとつに、「C言語に関する書籍は、リンカの説明をおざなりにしすぎだ」というのがある。 多くのC言語の書籍は、 コンパイラがソースコードをアセンブリコードに変換します アセンブラがアセンブリコードを機械語に変換します リンカが機械語をリンクして実行ファイルが作られます と、いう解説がなされがちである。この説明を見たら、多くの人が、「え、リンクってなんですか?」と、思うに違いない。 アセンブラには、「人間が読めるニーモニックを、機械が読める機械語に変換する」みたいな、最低限の説明が付くものの、 リンカの説明は「リンクをします」のひとことだ

                      • WSL2とDockerとVSCodeのRemote Containersで最高の開発環境をつくる|はやぶさの技術ノート

                        こんにちは。現役エンジニアの”はやぶさ”@Cpp_Learningです。 WSL2 + Docker + VS Code の Remote – Containers のPython開発環境が最高だったので、構築方法と実践チュートリアルを紹介します。

                          WSL2とDockerとVSCodeのRemote Containersで最高の開発環境をつくる|はやぶさの技術ノート
                        • めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita

                          EDIT^7: blink と box86、FEX。 EDIT^6: Unikraft 。 EDIT^5: Tilck 。 EDIT^4: コメント。gVisor はすっかり忘れていました!Linuxを拡張するためにLinuxを実装した良い例だと思います。LINE有りましたね。。 SF.netのCVSはもう死んでしまったので除外にしました。。 OSvのバイナリ互換 はPIEであることが要求なので。。といっても世間的にはもうLinux = Debian/Ubuntu で良いですかね。。表現を調整しました。 EDIT^3: Noah忘れてた! EDIT^2: Cygwinは 下書き段階で削ってしまった 。。 qemuを移植したとき に互換性がイマイチだったので。。特殊fdやprocfsの充実ぶりとかを考えると "かなりLinux" と言って良いとは思うけど、 mmap 等でLinuxとWind

                            めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita
                          • ラズパイ+魚眼レンズ+KinesisVideoStreamで低コストの防犯カメラ - Qiita

                            sudo apt-get update sudo apt-get -y install git sudo apt-get -y install autoconf cmake bison automake libtool gcc flex sudo apt-get -y install gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools sudo apt-get -y install gstreamer1.0-omx sudo apt-get -y install gstreamer1.0 sudo apt-get -y install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstrea

                              ラズパイ+魚眼レンズ+KinesisVideoStreamで低コストの防犯カメラ - Qiita
                            • ゼロから学ぶ C++

                              ホーム 1. C++ を始める 2. 基本構文 3. コンテナ 4. ファイル分割とスコープ 5. ストリーム操作 6. メモリの管理 7. クラス 8. キャスト 9. テンプレート 10. エラー処理 11. ビルドとライブラリ 12. メモリレイアウト 単体テスト デバッグ ビルド自動化 付録 このサイトは C++ について説明した学習サイトです。 本書を通じて C++ の開発環境や構文・単体テストの書き方などが 一通り学べるようになっています。 対象¶ C++ を初めて学ぶ人 プログラム言語を 1 つ以上経験したことのある人 関数やクラス・オブジェクト指向に対する知識をある程度前提にします。 C++ の特徴¶ C++ は ビャーネ・ストロヴストルップ により開発されたプログラミング言語です。 C++ には主に次のような特徴があります。 高パフォーマンス メモリ使用量が少ない 柔軟性

                              • WebAssembly入門 ─ Webフロントエンドの現実的なユースケースを知り、Wasm製アプリケーションを体験してみよう!|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                ハイクラス求人TOPIT記事一覧WebAssembly入門 ─ Webフロントエンドの現実的なユースケースを知り、Wasm製アプリケーションを体験してみよう! WebAssembly入門 ─ Webフロントエンドの現実的なユースケースを知り、Wasm製アプリケーションを体験してみよう! WebAssembly(Wasm)は、ブラウザー上で直接動くプログラミング言語として、JavaScriptを置き換える期待が寄せられますが、実際にWasmが果たすべき役割や適したユースケースとはどういったものでしょうか? Wasmの動作を体験するチュートリアルとあわせて、山本悠滋(igrep)さんが解説します。 WebAssembly(以下、略称の「Wasm」と呼びます。「キャズム」や「~イズム」などからの類推なのか「ワズム」と発音するようです)とは、ブラウザーをはじめとするさまざまな環境で動作する、仮想マ

                                  WebAssembly入門 ─ Webフロントエンドの現実的なユースケースを知り、Wasm製アプリケーションを体験してみよう!|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                • 縦書きHTMLにおける文字の向きはどのように定まるか - ドワンゴ教育サービス開発者ブログ

                                  ドワンゴ教育事業Webフロントエンドチームの berlysia です*1。 はじめに この記事では、日本語の縦書きHTMLにおいて、「ある1文字が縦組みのなかで違和感なく縦書きとして表示される」とはどのように成り立っているのか、意図しない表記になりやすい文字とその理由について紹介します。 最後まで読むと、縦書き時の文字の縦横に関する問題をたちどころに分解できるようになるはずです。とりあえずフォントのせいだろうかと疑う日々には、これでおさらばしましょう*2。 はじめに N予備校における日本語縦書きHTML CSS の関連仕様 日本語の一般的な縦書きに設定する うまくいかないことが起こりやすい文字たち うまくいかない文字がうまくいかない理由を理解する 縦書きを考慮した文字の周りの方向の定義 CSS における縦書きでの文字の縦横 upright typesetting sideways type

                                    縦書きHTMLにおける文字の向きはどのように定まるか - ドワンゴ教育サービス開発者ブログ
                                  • 会社の支給PCがMacBook Pro M1なので、新しく開発環境を構築した話 - 食べチョク開発者ブログ

                                    こんにちは。 今年の年始からジョインした遠藤です。 さて、入社したところ会社支給のMacBook ProがM1チップのものでした。 はい、現状は開発環境で苦労するとか色々噂を聞くやつです。 実際に試したのですが、 現状の開発環境構築スクリプト、手順書が一切使えない VitualBox, Vagrantは利用不可 Dockerは利用可能ではあるが、一部イメージが対応されてない 古いパッケージは動かす手段がない などなど、通常ではぶつからない問題にぶつかります。 食べチョクでは、 Ruby Node.js MySQL Redis ElasticSearch Kibana を利用しています。 この辺りをメインに話つつ、Intel版とこんな風に違うのかっていう辺りの雰囲気を感じ取っていただければと思います。 どこに開発環境を構築するか まず、どこで開発環境を構築するかを考えてみたいと思います。 ロ

                                      会社の支給PCがMacBook Pro M1なので、新しく開発環境を構築した話 - 食べチョク開発者ブログ
                                    • LLMプロダクト開発者がMac Studioを買ってローカルLLMを触るべき理由|erukiti

                                      もしあなたがLLMを使ったプロダクトを何かしら開発している、もしくは興味があるのなら、メモリを大量に積んだMac Studioの購入を検討すべきです。 対象読者NVIDIAが絶対にいいという人はこの記事の対象読者ではありません。また、用途によって、ローカルマシンによるローカルLLMが向いてる・向いてないは明確にあるので、向いてない用途にしか使わない人も対象読者ではありません。あしからず。 また、この記事は別にNVIDIAをdisる意図はありません。みんな違っていい。NVIDIAもいい選択肢ですが、Mac Studioも悪くないですよ、と言いたい。 結論LLMプロダクト開発において、今年はもはやローカルLLMを無視できない、してはいけない状況です。 LLMプロダクト開発をする会社の視点でいえば、是非とも80GB以上の十分なGPUメモリを積んだマシンを用意できるようなアジリティを持つのが望まし

                                        LLMプロダクト開発者がMac Studioを買ってローカルLLMを触るべき理由|erukiti
                                      • 高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性

                                        高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性 Modular社はPythonの高速なスーパーセットと同社が位置づける開発中の新言語「Mojo」の、Appleシリコンにネイティブ対応したMac版をリリースしました。 Today is the day! Mojo for Mac is live! Download it right now! Read our launch blogpost on how to get startedhttps://t.co/XSMkqUmHKt — Modular (@Modular_AI) October 19, 2023 Mojoは9月に初めてローカル環境でコンパイルなどを実行可能なLinux対応のツール群を公開しています。今回のAppleシリコンにネイティブ対応した

                                          高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性
                                        • FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                          FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ PythonのWebフレームワークとしていま注目を集めるFastAPIは、シンプルにコードが書けるだけでなく、パフォーマンスが高いWebアプリケーションのバックエンドサーバーが構築可能です。同フレームワークの勘所をPythonスペシャリストの杜世橋さんが、初心者向けのハンズオン、そしてより実践的な画像への自動タグ付けサービス実装をとおして解説します。 FastAPIはいま非常に注目されているPythonのWebフレームワークの1つです。Flaskのようにシンプルに書ける一方でPythonのType Hintの機能をうまく活用し、HTTPのリクエスト/レスポンスをPythonの関数の引数/戻り値とシームレスにマッピングして非常に効率的に開発ができるのが最大の特徴です。非同期処理にも対応していてその名

                                            FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                          • C++ Cheat Sheets & Infographics

                                            Standard Algorithms

                                              C++ Cheat Sheets & Infographics
                                            • 【競プロ】新人SEがAtCoderを始めて水色になった【色変記事】 - Qiita

                                              AtCoderで水色になりました。いわゆる色変記事です。 本記事では以下の4点について書きます。 競プロをしていて良かったこと・できるようになったこと 勉強したこと・改善案 レート推移や目標ラインの話 環境やマクロの紹介 最初に自己紹介すると、自分は情報系出身のSEで、現在は2年目です。 今年の頭に競プロをはじめ、先日水色になりました。 「プログラミング未経験から~」「50歳を超えて~」みたいな少数派ではないですし、「たったN回で達成!」「M年の苦闘の末に」みたいなドラマもありません。 普通に勉強しているエンジニアが競プロを半年間そこそこ頑張ったみたいな記事です。 バッググラウンドや参加回数については③で詳しく書きます。 なお、競技プログラミングについてザックリ知っている前提で書きます。 「競プロってなに?」「水色ってどのあたりなの?」という場合は が良くまとまっています。 ① 競プロをし

                                                【競プロ】新人SEがAtCoderを始めて水色になった【色変記事】 - Qiita
                                              • Intel CPUとAMD CPUの混在による問題に直面した話 | 開発ブログ | Elastic Infra

                                                チーフエンジニアの加辺です。 今日は珍しいトラブルに出会ったので紹介します。 起こった問題 ある環境ではEC2によりサーバを運用しており、アプリケーションをデプロイサーバでビルドし、その成果物をアプリケーションサーバへコピーすることでデプロイとしていました。 ここで新規サーバを作成していたところ、一部のアプリケーションサーバで見慣れないエラーが発生し、アプリケーションが起動しないという事象が確認されました。調べたところ、デプロイサーバはt3、アプリケーションサーバはt3aファミリーが利用されていることがわかり、アプリケーションサーバをt3ファミリーへ変更したところ、問題が発生しなくなることが分かりました。 さて、これはどのような機序によるものでしょうか。 調査 記事タイトルで答えをほとんど書いてしまっていますし、t3, t3aを知っていれば明らかですが、これはIntelとAMDの違いです。

                                                  Intel CPUとAMD CPUの混在による問題に直面した話 | 開発ブログ | Elastic Infra
                                                • 歴代チャットボットと最近のLLMのまとめ - Qiita

                                                  LLMs The History of Chatbots ELIZA (1966) 初期の人工知能プログラムのひとつ。 ルールベースの簡単なパターンマッチングで返答していた。 心理療法士の会話を模したELIZA(DOCTOR)が有名。 PARRY (1972) PARRYは偏執病的統合失調症患者をシミュレートしようとしたもの。 ELIZA(DOCTOR)と通信し話題となった。 Jabberwacky (1982, 1988, 1997) ユーモラスな人間同士の自然な会話をシミュレートすることを目的としていた。 ユーザーとの会話の大規模なデータベースを構築し、言語と文脈を学習することができた。 プロジェクト自体は1982年から開始されていたが、当初は学習機能は有していなかった。 ローブナー賞を2005年(George)、2006年(Joan)に受賞している。 ローブナー賞(Loebner P

                                                    歴代チャットボットと最近のLLMのまとめ - Qiita
                                                  • ZigはCMakeの代替となるか

                                                    既存のプロジェクトで使用しているコンパイラを置き換えるだけで、Zigに付属しているCコンパイラを利用できる。 クロスビルドが標準で可能 上でも述べた通り、Zigは標準でクロスコンパイルが可能である。 Zig libcのTaget一覧 ❯ zig targets | jq ".libc" [ "aarch64_be-linux-gnu", "aarch64_be-linux-musl", "aarch64_be-windows-gnu", "aarch64-linux-gnu", "aarch64-linux-musl", "aarch64-windows-gnu", "aarch64-macos-none", "aarch64-macos-none", "armeb-linux-gnueabi", "armeb-linux-gnueabihf", "armeb-linux-musleabi

                                                      ZigはCMakeの代替となるか
                                                    • C言語から0番地へアクセスする方法についての個人的まとめ - /var/log/hikalium

                                                      発端はuchan_nos氏によるこのツイートでした。 C言語で、本当にメモリの0番地にデータを書きたいときはどうすりゃええの?— うー@技術書典8 Day1う31 BitNOS (@uchan_nos) 2020年2月12日 それに対する私のリプライ: uint8_t *p = 1; p--; *p = v;— hikalium (@hikalium) 2020年2月12日 私はこれで話が終わると思っていたのだが、どうやらそうではなかったらしく、色々な視点からの意見が加わりながら、話は混沌を極めたのでした…。 ということで、ここに私のこのツイートに対しての見解とか、わかったことをまとめておこうと思います。 私のリプライの背景について uchanさんが求める「0番地にデータを書きたい」という課題設定を、私はこのように解釈しました。 C言語において、整数0をポインタに変換すると、それはNULL

                                                        C言語から0番地へアクセスする方法についての個人的まとめ - /var/log/hikalium
                                                      • わずか4GBの実行ファイル1つで大規模言語モデルによるAIを超お手軽に配布・実行できる仕組み「llamafile」をWindowsとLinuxで簡単に実行してみる方法

                                                        「llamafile」は大規模言語モデルのモデルやウェイトの情報が1つの実行ファイルにまとまった形式のファイルです。Linux・macOS・Windows・FreeBSD・NetBSD・OpenBSDという6つのOS上でインストール不要で大規模言語モデルを動作させることが可能とのことなので、実際にWindowsおよびLinuxディストリビューションの1つであるDebian上で動かしてみました。 Mozilla-Ocho/llamafile: Distribute and run LLMs with a single file. https://github.com/Mozilla-Ocho/llamafile#readme Introducing llamafile - Mozilla Hacks - the Web developer blog https://hacks.mozilla

                                                          わずか4GBの実行ファイル1つで大規模言語モデルによるAIを超お手軽に配布・実行できる仕組み「llamafile」をWindowsとLinuxで簡単に実行してみる方法
                                                        • Python を Go に書き換えるとどれくらい速くなる? 7つの言語で Dijkstra の実行速度を比較 - Qiita

                                                          Python を Go に書き換えるとどれくらい速くなる? 7つの言語で Dijkstra の実行速度を比較KotlinRustベンチマークJuliaDijkstra これは何 最短経路探索のアルゴリズムを使っていくつかの言語の性能がどれくらい違うかを調べてみました。 Python は手軽に実装できるけど遅い、Go は 早いけど C++ よりは遅い? 本当? のような疑問を一定解消したかったというのが動機です。 前提条件など 対象とする言語 本命 Go, Rust, C++ 興味本位 Julia Python より段違いに早ければもう少し掘ってみたい 興味本位 Kotlin 意外とトップ集団に肉薄するのではないか 参考 Python JavaScript 性能差のイメージとしては Rust == C++ > Go >> Kotlin >>> JavaScript > Python == J

                                                            Python を Go に書き換えるとどれくらい速くなる? 7つの言語で Dijkstra の実行速度を比較 - Qiita
                                                          • gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog

                                                            こんにちは、Wantedly の Infrastructure Team で Engineer をしている南(@south37)です。 今日は、WANTEDLY TECH BOOK 6 から「gRPC Internal」という章を抜粋して Blog にします。 「WANTEDLY TECH BOOK 1-7を一挙大公開」でも書いた通り、Wantedly では WANTEDLY TECH BOOK のうち最新版を除いた電子版を無料で配布する事にしました。Wantedly Engineer Blogでも過去記事の内容を順次公開予定であり、この Blog もその一環となっています。 Wantedly における Go 導入にまつわる技術背景 | Wantedly Engineer Blog (本記事は Go Conference 2019 Autumn にて無料配布した冊子『WANTEDLY TE

                                                              gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog
                                                            • Chromium にコントリビュートするための周辺知識 | blog.jxck.io

                                                              Intro Chromium にコントリビュートするためには、ソースコードを理解する以外にも、もろもろ必要な周辺知識がある。 ドキュメントはかなり整備されている方ではあるが、そのドキュメントにたどり着くのが難しい場合もある。 レビュアーなどが親切に教えてくれるものをローカルにメモしているが、それも散らばってきたため、ここにまとめることにする。 まずは初期状態で公開するが、どんどん更新していき、長くなっても分割しないで追記を繰り返そうと考えている。 関連サイト 始めて取り組もうとすると、まずどこを見ればわからないところから始まる。 似たようないくつかのサイトがあり、使い分けがされているからだ。 code search https://source.chromium.org/chromium/chromium/src コードをインタラクティブに検索するためのサイト Workspace 風の U

                                                                Chromium にコントリビュートするための周辺知識 | blog.jxck.io
                                                              • C++は本当にRustに速度で負けるのか 〜「RustがC++に速度で勝った話」のベンチマークを追試する〜 - Qiita

                                                                追記: 本記事は g++ について書かれており、clang については補足で述べる程度でしたが、clang側の検証結果が間違っておりました。 別途 clang++ で検証した記事も書きましたので、ご覧いただけますと幸いです。 本記事の目的 昨日、株式会社フィックスターズの「Fixstars Tech Blog /proc/cpuinfo」に以下の記事が掲載されました。 RustがC++に速度で勝った話 - Fixstars Tech Blog /proc/cpuinfo 本記事では、上記記事の 手元環境における追試 C++の敗因/Rustの勝因分析 条件をある程度統一した際のベンチマーク結果 の3点を行います。 ベンチマーク環境 OS Fedora 30 CPU AMD A6-1450 Memory DDR3-1333 4GB x 1 (4GB) GCC 9.2.1 Rustc 1.39.

                                                                  C++は本当にRustに速度で負けるのか 〜「RustがC++に速度で勝った話」のベンチマークを追試する〜 - Qiita
                                                                • Makefile の関数一覧

                                                                  Makefile の組み込み関数の一覧です。 公式のドキュメントを読みながら、関数の引数と使い方について備忘録としてまとめました。 Makefile での関数の書き方は $(関数名 引数,...) または ${関数名 引数,...} です。 文字列操作・検索の関数 subst 文字列の置換です。使い方は $(subst 置換前,置換後,対象) FILES := hoge.c hoge.h fuga.c fuga.h all: @echo $(subst hoge,piyo,$(FILES)) # => piyo.c piyo.h fuga.c fuga.h patsubst パターンマッチによる文字列の置換です。使い方は $(patsubst 置換前,置換後,対象) FILES := hoge.c hoge.h fuga.c fuga.h all: @echo $(patsubst %.c

                                                                    Makefile の関数一覧
                                                                  • M1 搭載 Mac mini を購入したので Unity のビルド時間とか測ってみた - kumak1’s blog

                                                                    総評 ワットパフォーマンス・コストパフォーマンス・静音性(ほぼ無音)がとんでもなく良い。 (比較用2016, 2019 のMacBook Pro はそれぞれ30万クラス。自作PCも20万弱程度で組んだハズ。一方、今回購入したMac mini は11万円) このため、メイン開発環境はもちろん、常時起動のビルドサーバ用にとりあえず買う、のも大いにアリだと思う。 (Webエンジニアとしては、Docker対応されるまでintelさんにはお世話になるけども) 計測 手元にあるモノで色々とベンチマークとってみた。 端末 自作PC MacBook Pro 2016 MacBook Pro 2019 Mac mini 2020 CPU Intel Core i5 4670 4core Intel Core i7 6700HQ 4core Intel Core i9 9880H 8core M1 4core

                                                                      M1 搭載 Mac mini を購入したので Unity のビルド時間とか測ってみた - kumak1’s blog
                                                                    • 完全自動運転にLLMは必要か?

                                                                      この記事を3行でまとめると.. Turingでは1年以上前から完全自動運転に自然言語処理が必要と考えてきた 自動運転におけるロングテールなデータに対して、LLMの一般常識に基づく判断能力が必要 Chat-GPTをきっかけにLLMを自動運転に利用する研究が盛り上がってきている TuringのBrain Researchチームの棚橋です。Brain Researchチームでは、中長期的に自動運転においてキーとなるコア技術の開発を行っています。最近ではVision LanguageモデルのフレームワークとしてHeronをリリースしました。なぜ自動車を製造する会社が、LLMの開発を行っているのでしょうか。 Turingでは1年以上前から自動運転における複雑な文脈理解には自然言語が必要であると主張してきました。今年の7月にはLLMで実際の車を動かしてみるプロジェクトをデモとして公開しました。このデモ

                                                                        完全自動運転にLLMは必要か?
                                                                      • 【プログラミング言語】モダンなV言語がリリースされたので触ってみる【シンプル且つ高速】 - pavlog

                                                                        プログラミングしてますか?僕は都内在住のエンジニアで、最近は主にRuby/Go/TypeScriptを触っています。 趣味で競技プログラミングを始めたのでC++も触るようになりました。 そんな僕ですが、6/22にリリースされたV言語に興味を持っています! 最近だとかなりプロダクションコードでも採用されるのを聞くようになったGo言語がありますが、さらにモダンな言語です。 vlang.io このV言語について公式は以下のように言っています。 Simple, fast, safe, compiled language for developing maintainable software V言語(The V Programming Language)とは インストール手順 V言語の嬉しい部分と特徴 特徴 translating C/C++ to V Hot code reloading その他

                                                                          【プログラミング言語】モダンなV言語がリリースされたので触ってみる【シンプル且つ高速】 - pavlog
                                                                        • 大規模言語モデルをフルスクラッチする練習 (環境構築ー前処理ー事前学習ーファインチューニングー評価まで)|Kan Hatakeyama

                                                                          はじめに以下のオープンなプロジェクトの一環で、大規模言語モデルをフルスクラッチで作る練習をします。24年3月現在、協力者も募集中です。 リポジトリ当該プロジェクトの標準コードが公開※されたので、それを走らせてみます。 ※24/3/5時点で、まだレポジトリ内に、工事中の箇所が多々、あります。 このリポ上では、事前学習ー事後学習ー評価まで、一気通貫(?)したパイプラインが提供されています※。 0. 環境構築プロジェクトの本番環境はクラウドですが、今回は手持ちのubuntuを使います。 Dockerはお手軽な一方で、スパコン上で使うと、どうやら速度が落ちるらしいとの噂を聞いたので、condaで作ります(とはいえ、pipしか使わないので、pyenvでもいけると思います)。 必要なマシン適当なlinux: 例えばUbuntu 22.04.3 LTS GPU: 20 GBくらいは欲しいかも? ディスク

                                                                            大規模言語モデルをフルスクラッチする練習 (環境構築ー前処理ー事前学習ーファインチューニングー評価まで)|Kan Hatakeyama
                                                                          • Node.jsへのコントリビュート解説、そしてOSSへ貢献するということ - 別にしんどくないブログ

                                                                            この記事は Node.js Advent Calendar 2019 - Qiita の2日目の記事です。遅くなってしまいました。 Node.js本体へのコントリビュート解説記事です。この記事は不足している情報や更新があれば、モチベーションが続く限り更新していきたいと思っています。 JSConf JPのスタッフの打ち上げのときに日本人のNode.jsへのコミットしている人が少ないという話がでました。 Node.jsに限らずOSSへのコミット経験があるという人は私の周りには少ないです。 もちろんOSSにコミットしているから良い悪いという話ではなく、Node.jsやOSSにコミットしてみたいと相談いただくことが時々あるので僕の経験でよければ伝えたいと思いました。 私の経験からNode.jsへのコントリビュート方法の解説とOSSへの貢献を通じて得たものについて書き残しておきたいと思います。 言葉

                                                                              Node.jsへのコントリビュート解説、そしてOSSへ貢献するということ - 別にしんどくないブログ
                                                                            • C++からRustに移行して1年経って思ったこと - Qiita

                                                                              はじめに この記事は「プログラミング技術の変化で得られた知見・苦労話【PR】パソナテック Advent Calendar 2020」のために書かれたものです。 僕は去年の11月から一念発起してRustの勉強を初めて趣味で同人ゲームを開発しています。元々C++を4年程使っていて「C++最高、みんなC++使おう」とか友人に布教していました。しかし、C++プログラマは「一番自分たちの言語の批判に対して強くなる」と言われるほどC++はよくディスられます。もちろん僕も例外ではありませんでした(笑)。 一応僕もPythonを適当に使うようになってからC++のcppとhppを組み合わせるようなCの名残を感じるところや他言語と比べたときの標準ライブラリの貧弱さ、コードが冗長になりやすい点など使いにくいなあと思いはじめましていました。ですがPythonはあくまでも適当に使ってただけでしたし、一通り書けるJa

                                                                                C++からRustに移行して1年経って思ったこと - Qiita
                                                                              • ロボットエンジニアのためのProtocol buffers入門 - MyEnigma

                                                                                Practical gRPC (English Edition) 目次 目次 はじめに Protocol buffersとは? Protocol buffersの特徴 様々なプラットフォームや言語で利用することができる データサイズが小さい エンコードやデコードが早い データの構造を精密に規定できる データフォーマットに後方互換性がある。 JSONに変換できる デメリット protoファイルを作成する時の注意点 protobufのコンパイラのインストール MacでHomebrewをって、公式のprotobufをインストール場合 ubuntuへの公式protobufのインストール Juliaでprotoファイルをコンパイルする 使い方 C++ Python Java Julia protoファイルのスタイルガイド Protocol buffersと一緒に使うと便利なツール protoc-ge

                                                                                  ロボットエンジニアのためのProtocol buffers入門 - MyEnigma
                                                                                • GitHubでC++プロジェクトを開発する際にやっておきたい設定 - Qiita

                                                                                  この記事について 簡単な電卓アプリ開発を例に、以下を行います GitHub上でのIssueテンプレート、マイルストーン、Projects(カンバンボード)の設定 GitHub Flowを例にした簡単な開発の流れの説明 CMakeを用いた、C++プロジェクトの用意 GoogleTestを用いたUnit Testの導入 GitHub Actionsを用いた、CI/CDの導入 クロスプラットフォーム (Windows, Linux, MacOS, Linux(ARM)) GitHub Actionsを用いた、コードの静的解析 この記事では、開発の方法論はおまけとして、それを支えるためのツールの設定方法に重点を置きます 1人でやる個人開発~数名規模での開発は本記事の内容でカバーできると思います。もっと複雑になると別の仕組みが必要になってきそうです 本記事の設定を全てやる必要はなく、必要そうな項目を

                                                                                    GitHubでC++プロジェクトを開発する際にやっておきたい設定 - Qiita