並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 27 件 / 27件

新着順 人気順

std atomic mapの検索結果1 - 27 件 / 27件

  • Cloudflare の新しいロードバランサ Pingora を試してみる - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。クラウド基盤本部の野島です。 今年のインターンシップでは、プラットフォーム(自社基盤)コースとして2名の方を受け入れ、それぞれ異なる課題をやってもらいました。 そのうちの一つは Pingora に関する課題で、覚道さんに取り組んでいただきました。(もう一つの課題は nginx のキャッシュの性能に関するもので、これについては昨日の記事をご参照ください) Pingora は Cloudflare が開発したロードバランサのためのフレームワークであり、Rust を使って好きなロジックを組み込んだロードバランサを書くことができます。 今回のインターンでは Pingora を使って TLS のクライアント証明書を使った認証プロキシを作ってもらいました。 そこで、この開発の中で得られた Pingora や OpenSSL に関する知見を共有しようと思います。 この記事は覚道さんのインター

      Cloudflare の新しいロードバランサ Pingora を試してみる - Cybozu Inside Out | サイボウズエンジニアのブログ
    • Rustの誤解と改善

      ChatGPT にこんな要求をしました。 Rust自体は難しい言語ではなく、むしろ単純な機能の組み合わせで豊かな表現力を提供しています。なのに、他言語の複雑な機能をRustで再現しようとして混乱する人が跡を絶たず、いつの間にかRustは難しいという誤解が定着してしまいました。そこで、他言語の考え方をRustに持ち込んで失敗した例をいくつか挙げ、改善案を教えて下さい。 本記事は ChatGPT の出力をまとめたものです。 GPT-4o 色々試したのですが、まず2025年2月18日時点のGPT-4oから。 確かに、Rustの設計はシンプルな概念の組み合わせですが、他言語の習慣を持ち込むことで混乱が生じることが多いですね。いくつか典型的な失敗例を挙げ、それぞれの改善案を考えてみましょう。 よろしくお願いします。 クラスベースのオブジェクト指向をそのままRustに適用しようとする 失敗例: C++

        Rustの誤解と改善
      • Using WebAssembly threads from C, C++ and Rust

        Learn how to bring multithreaded applications written in other languages to WebAssembly. WebAssembly threads support is one of the most important performance additions to WebAssembly. It allows you to either run parts of your code in parallel on separate cores, or the same code over independent parts of the input data, scaling it to as many cores as the user has and significantly reducing the over

          Using WebAssembly threads from C, C++ and Rust
        • Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog

          KEELチームの相原です。 今回はeBPFを利用してKubernetesクラスタの可観測性の隙間を埋めている話です。 前回のエントリではLLMにうつつを抜かしていたので本業(?)の話をしようと思います。 www.lifull.blog LIFULLの可観測性の現在地 eBPFとは 可観測性の隙間 NAT Loopback eBPFを実行するには BPF CO-RE libbpf-rsを利用したNAT Loopbackの検知 1. (ユーザ空間) コマンドライン引数として受け取ったDNSをTTLごとに名前解決してIPアドレスを取得する 2. (ユーザ空間) IPアドレスに変化がある度にカーネル空間で動くBPFプログラムにそのIPアドレスのリストを渡す 3. (カーネル空間) Kprobesで tcp_v4_connect/tcp_v6_connect にフックを仕込む 4. (カーネル空間)

            Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog
          • Rust 1.70を早めに深掘り - あずんひの日

            本日6/2(金)にリリースされたRust 1.70の変更点を詳しく紹介します。 もしこの記事が参考になれば記事末尾から活動を支援頂けると嬉しいです。 6/2は旧暦で本能寺の変が起こったことから裏切りの日 ピックアップ 一度だけ初期化されるグローバル変数を書けるようになった format_args!がコンパイル時に展開されるようになった OptionやResult内の値を使って判定処理を書けるようになった Cargoでの高速なインデックス更新が既定で使用されるようになった 最近のrust-analyzer 安定化されていないAPIが候補に出なくなった クロージャが何をキャプチャしているか詳細に分かるようになった 安定化されたAPIのドキュメント NonZero*::MIN サンプル NonZero*::MAX サンプル BinaryHeap::retain サンプル Rc::into_inn

              Rust 1.70を早めに深掘り - あずんひの日
            • Rust to WebAssembly the hard way — surma.dev

              Toggle dark mode What follows is a brain dump of everything I know about compiling Rust to WebAssembly. Enjoy. Some time ago, I wrote a blog post on how to compile C to WebAssembly without Emscripten, i.e. without the default tool that makes that process easy. In Rust, the tool that makes WebAssembly easy is called wasm-bindgen, and we are going to ditch it! At the same time, Rust is a bit differe

                Rust to WebAssembly the hard way — surma.dev
              • Node.js — Node.js 24.0.0 (Current)

                2025-05-06, Version 24.0.0 (Current), @RafaelGSS and @juanarbol We’re excited to announce the release of Node.js 24! This release brings several significant updates, including the upgrade of the V8 JavaScript engine to version 13.6 and npm to version 11. Starting with Node.js 24, support for MSVC has been removed, and ClangCL is now required to compile Node.js on Windows. The AsyncLocalStorage API

                  Node.js — Node.js 24.0.0 (Current)
                • 0.8.0 Release Notes ⚡ The Zig Programming Language

                  Tier 4 Support § Support for these targets is entirely experimental. If this target is provided by LLVM, LLVM may have the target as an experimental target, which means that you need to use Zig-provided binaries for the target to be available, or build LLVM from source with special configure flags. zig targets will display the target if it is available. This target may be considered deprecated by

                  • Hard Mode Rust

                    Oct 6, 2022 This post is a case study of writing a Rust application using only minimal, artificially constrained API (eg, no dynamic memory allocation). It assumes a fair bit of familiarity with the language. The back story here is a particular criticism of Rust and C++ from hard-core C programmers. This criticism is aimed at RAII — the language-defining feature of C++, which was wholesale importe

                    • 0.10.0 Release Notes ⚡ The Zig Programming Language

                      Tier 4 Support § Support for these targets is entirely experimental. If this target is provided by LLVM, LLVM may have the target as an experimental target, which means that you need to use Zig-provided binaries for the target to be available, or build LLVM from source with special configure flags. zig targets will display the target if it is available. This target may be considered deprecated by

                      • Cloudflare functions with Scala.js

                        Indoor VivantsAnton Sviridov. I love reinventing the wheel and I usually use Scala for that. TL;DR We are deploying an app to Cloudflare using Scala.js We are using ScalablyTyped We are using Scala 3 heavily Code on Github Deployed app Cloudflare API bindings Welcome to the "Put ma Scala on yo cloud" series I want to say that I'm kicking off a blog series, but even I don't believe that. If I did,

                        • The Koka Programming Language

                          // A generator effect with one operation effect yield<a> fun yield( x : a ) : () // Traverse a list and yield the elements fun traverse( xs : list<a> ) : yield<a> () match xs Cons(x,xx) -> { yield(x); traverse(xx) } Nil -> () fun main() : console () with fun yield(i : int) println("yielded " ++ i.show) [1,2,3].traverse // A generator effect with one operation effectindex/yield: (V, E, V) -> V yiel

                          • Rust 1.53を早めに深掘り - OPTiM TECH BLOG

                            こんにちは、R&Dチームの齋藤(@aznhe21)です。 今日はオプティムの創立記念パーティーがオンラインで行われます。 オプティムは2000/6/8に設立され、去年は20周年の節目であったにも関わらず生憎の時制で大きく祝えませんでしたが、 今年は準備も万全、盛大にお祝いしたいと思います。 さて、本日、日本時間6/18(金)、Rust 1.53がリリースされました。 この記事ではRust 1.53での変更点を詳しく紹介します。 6/18は京大の前身・京都帝国大学創立の日 ピックアップ 識別子にASCII以外の文字も使えるようになった ORパターンが使えるようになった 配列にIntoIteratorが実装された 安定化されたAPIのドキュメント AtomicBool::fetch_update サンプル AtomicPtr::fetch_update サンプル BTreeMap::retai

                              Rust 1.53を早めに深掘り - OPTiM TECH BLOG
                            • Async/Await | Writing an OS in Rust

                              この記事は翻訳されたものです: この記事はAsync/Awaitをコミュニティの手により翻訳したものです。そのため、翻訳が完全・最新でなかったり、原文にない誤りを含んでいる可能性があります。問題があればこのissue上で報告してください! 翻訳者: @kahirokunn, @garasubo, @sozysozbot 及び @swnakamura. With contributions from @asami-kawasaki 及び @Foo-x. この記事では、Rustの協調的マルチタスクとasync/await機能について説明します。Rustのasync/await機能については、Future trait の設計、ステートマシンの変換、 pinning などを含めて詳しく説明します。そして、非同期キーボードタスクと基本的なexecutorを作成することで、カーネルにasync/awa

                              • C++ へようこそ - Modern C++

                                C++ は、作成以来、世界で最も広く使用されているプログラミング言語の 1 つになりました。 適切に記述された C++ プログラムは、高速で効率的です。 言語は他の言語よりも柔軟性が高く、最高レベルの抽象化で動作し、シリコンのレベルで動作します。 C++ によって、高度に最適化された標準ライブラリが提供されます。 これにより、低レベルのハードウェア機能にアクセスして、速度を最大化し、メモリ要件を最小限に抑えることができます。 C++ では、ゲーム、デバイス ドライバー、HPC、クラウド、デスクトップ、埋め込み、モバイル アプリなど、ほぼすべての種類のプログラムを作成できます。 他のプログラミング言語のライブラリやコンパイラさえも C++ で作成されます。 C++ の最初の要件の 1 つは、C 言語との下位互換性でした。 その結果、C++ を使用すると常に、生ポインター、配列、null で終

                                  C++ へようこそ - Modern C++
                                • go command - cmd/go - Go Packages

                                  Go is a tool for managing Go source code. Usage: go <command> [arguments] The commands are: bug start a bug report build compile packages and dependencies clean remove object files and cached files doc show documentation for package or symbol env print Go environment information fix apply fixes suggested by static checkers fmt gofmt (reformat) package sources generate generate Go files by processi

                                  • https://cheats.rs/rust_cheat_sheet.pdf

                                    Rust Language Cheat Sheet 26. August 2021 Contains clickable links to The Book , Rust by Example , Std Docs , Nomicon , Reference . Data Structures Data types and memory locations defined via keywords. Example Explanation struct S {} Define a struct with named fields. struct S { x: T } Define struct with named field x of type T. struct S ​(T); Define "tupled" struct with numbered field .0 of type

                                    • Mozc の技術解剖 ― Google 日本語入力を支えるオープンソースエンジンの内部構造 - Qiita

                                      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Mozc は、堅牢なアーキテクチャと拡張性の高い設計により、日本語入力という複雑な問題に対してエレガントな解を提供している。 Windows版はWindows Storeに登録されていないようなので、自分でビルドしないといけないようだ。ビルドのための環境構築や、エラー処理などが多少なりとも伴うので、ここはClaude Codeに助けてもらったら、結構短時間で出来上がった。 中々の使い心地なので、以下Mozcの特徴を上げてみた。 クライアント・サーバー型アーキテクチャ Mozc の最大の特徴は、IME(入力メソッド)をクライアントとサーバ

                                        Mozc の技術解剖 ― Google 日本語入力を支えるオープンソースエンジンの内部構造 - Qiita
                                      • The Koka Programming Language

                                        1. Getting started Welcome to Koka – a strongly typed functional-style language with effect types and handlers. Why Koka? A Tour of Koka Install Discussion forum Github Libraries Note: Koka v3 is a research language that is currently under development and not ready for production use. Nevertheless, the language is stable and the compiler implements the full specification. The main things lacking a

                                        • 地面を見下ろす少年の足蹴にされる私

                                          文書の一覧 JTC1/SC22/WG21 - Papers mailing2025-12 全部で113本あります。 もくじ N5011 Brno 2026 N5029 WG21 2025-10 Kona Admin telecon minutes N5031 WG21 2025-11 Kona Minutes of Meeting N5032 Working Draft, Standard for Programming Language C++ N5033 Editors' Report - Programming Languages - C++ P1317R2 Remove return type deduction in std::apply P1789R2 Library Support for Expansion Statements P1789R3 Library Suppor

                                            地面を見下ろす少年の足蹴にされる私
                                          • torchcomms: a modern PyTorch communications API – PyTorch

                                            Introduction Torchcomms is a new experimental, lightweight communication API intended for use with PyTorch Distributed (PTD). In addition to the core API, we are open-sourcing NCCLX, a new backend we developed to scale to over 100,000 GPUs. With our first release of torchcomms, we’re delivering the foundational APIs and backends required for large-scale model training in PyTorch. This initial rele

                                            • Engineering a fixed-width bit-packed Integer Vector in Rust | Luca Lombardo

                                              If you’ve ever worked with massive datasets, you know that memory usage can quickly become a bottleneck. While developing succinct data structures, I found myself needing to store large arrays of integers—values with no monotonicity or other exploitable patterns, that I knew came from a universe much smaller than their type’s theoretical capacity. In this post, we will explore the engineering chal

                                                Engineering a fixed-width bit-packed Integer Vector in Rust | Luca Lombardo
                                              • BPF and async Rust

                                                With libbpf-rs, bindings to libbpf (canonical C BPF library), building BPF applications in Rust is easy. However, libbpf-rs doesn't work with async/await. Say, to send information from kernel with BPF over protocols like gRPC, you have to implement lots instead of using the existing async libraries. To address the above problem, I implemented libbpf-async, complementary to libbpf-rs, providing API

                                                  BPF and async Rust
                                                • 2024年能登半島地震についての情報リスト | 原子力資料情報室(CNIC)

                                                  ■北陸電力 原発関連のプレスリリース www.rikuden.co.jp/press/atomic.html ■東京電力 柏崎刈羽原発のプレスリリース www.tepco.co.jp/niigata_hq/data/press/index-j.html ■原子力規制委員会 2024年1月10日 第57回原子力規制委員会 (資料1に志賀原発の被災状況などの報告が掲載されています) www.nra.go.jp/disclosure/committee/kisei/010000883.htm 2024年1月5日・9日 志賀原発および柏崎刈羽原発における令和6年能登半島地震の地震観測記録 www2.nra.go.jp/disclosure/meeting/ETS/index.html 2024年1月22日 ●志賀原子力発電所1号機 高圧炉心スプレイディーゼル発電機の自動停止に係る面談 www2.n

                                                    2024年能登半島地震についての情報リスト | 原子力資料情報室(CNIC)
                                                  • Rust through the ages

                                                    How has Rust changed over the years? It's been nine years since 1.0 was released (well, next week, technically). In that time, there have been 78 major releases and two editions, with a third due later this year. Quite a lot has changed! Those changes have been fairly incremental, so if you've been using Rust all that time, it probably doesn't feel like a lot. But comparing the 1.0 flavour of Rust

                                                    • Lock-Free Rust: How to Build a Rollercoaster While It’s on Fire

                                                      “Every stitch in that flag was a commitment to thread safety without locks. std::atomic was the needle.” — Betsy Ross, Federalist Papers, Draft 29 (suppressed), 1782 Buckle your seatbelts, grab a helmet, and say goodbye to your loved ones because over the next few minutes, I am going to teach you more about lock-free data structures in Rust than any human being should reasonably know without a psy

                                                        Lock-Free Rust: How to Build a Rollercoaster While It’s on Fire
                                                      • Rust panics under the hood, and implementing them in .NET

                                                        Rust panics under the hood, and implementing them in .NET I am currently working on a Rust to .NET compiler, rustc_codegen_clr. To get it to work, I need to implement many Rust features using .NET APIs. One of such features is panicking and unwinding. This article is the first one in a series about Rust panics, unwinding, and my implementation of them in .NET. In this part, I will look at unwindin

                                                        1